Stud.IP  5.4
BlubberThread Class Reference
Inheritance diagram for BlubberThread:
SimpleORMap PrivacyObject BlubberGlobalThread BlubberStatusgruppeThread OERReview

Public Member Functions

 mention ($matches)
 
 getName ()
 
 getContentTemplate ()
 
 getContextTemplate ()
 
 addFollowingByUser ($user_id=null)
 
 removeFollowingByUser ($user_id=null)
 
 isFollowedByUser ($user_id=null)
 
 getOpenGraphURLs ()
 
 getLatestActivity (bool $include_mkdate=false)
 
 getURL ()
 
 getLastVisit (string $user_id=null)
 
 setLastVisit (string $user_id=null)
 
 notifyUsersForNewComment ($comment)
 
 isVisibleInStream ()
 
 isWritable (string $user_id=null)
 
 isReadable (string $user_id=null)
 
 isCommentable (string $user_id=null)
 
 getAvatar ()
 
 getJSONData ($limit_comments=50, $user_id=null, $search=null)
 
 markAsRead (string $user_id=null)
 
 getHashtags ($since=null)
 
 mayDisableNotifications (string $user_id=null)
 
 countUnseenComments (string $user_id=null)
 
- Public Member Functions inherited from SimpleORMap
 __construct ($id=null)
 
 __clone ()
 
 getRelationOptions ($relation)
 
 getTableMetadata ()
 
 hasAutoIncrementColumn ()
 
 setId ($id)
 
 getId ()
 
 getNewId ()
 
 toArray ($only_these_fields=null)
 
 toRawArray ($only_these_fields=null)
 
 toArrayRecursive ($only_these_fields=null)
 
 getValue ($field)
 
 getRelationValue ($relation, $field)
 
 getDefaultValue ($field)
 
 setValue ($field, $value)
 
 __get ($field)
 
 __set ($field, $value)
 
 __isset ($field)
 
 offsetExists ($offset)
 
 offsetGet ($offset)
 
 offsetSet ($offset, $value)
 
 offsetUnset ($offset)
 
 getIterator ()
 
 count ()
 
 isField ($field)
 
 isRelation ($field)
 
 isAdditionalField ($field)
 
 isAliasField ($field)
 
 isI18nField ($field)
 
 setData ($data, $reset=false)
 
 isNew ()
 
 isDeleted ()
 
 setNew ($is_new)
 
 getWhereQuery ()
 
 restore ()
 
 store ()
 
 triggerChdate ()
 
 delete ()
 
 isDirty ()
 
 isFieldDirty ($field)
 
 revertValue ($field)
 
 getPristineValue ($field)
 
 initRelation ($relation)
 
 resetRelation ($relation)
 
 cleanup ()
 

Static Public Member Functions

static findBySQL ($sql, $params=[])
 
static find ($id)
 
static upgradeThread ($thread)
 
static findMyGlobalThreads ($limit=51, $since=null, $olderthan=null, string $user_id=null, $search=null)
 
static findByInstitut ($institut_id, $only_in_stream=false, string $user_id=null)
 
static findBySeminar ($seminar_id, $only_in_stream=false, string $user_id=null)
 
static findByContext ($context_id, $only_in_stream=false, $context_type='course', string $user_id=null)
 
static exportUserData (StoredUserData $storage)
 
- Static Public Member Functions inherited from SimpleORMap
static tableScheme ($db_table)
 
static expireTableScheme ()
 
static exists ($id)
 
static countBySql ($sql='1', $params=[])
 
static create ($data)
 
static build ($data, $is_new=true)
 
static buildExisting ($data)
 
static import ($data)
 
static findBySQL ($sql, $params=[])
 
static findOneBySQL ($where, $params=[])
 
static findThru ($foreign_key_value, $options)
 
static findEachBySQL ($callable, $sql, $params=[])
 
static findMany ($pks=[], $order='', $order_params=[])
 
static findEachMany ($callable, $pks=[], $order='', $order_params=[])
 
static findAndMapBySQL ($callable, $where, $params=[])
 
static findAndMapMany ($callable, $pks=[], $order='', $order_params=[])
 
static deleteBySQL ($where, $params=[])
 
static toObject ($id_or_object)
 
static __callStatic (string $name, array $arguments)
 

Protected Member Functions

 getBlubberPluginId ()
 
 getNotificationUsersQueryAndParameters ()
 
- Protected Member Functions inherited from SimpleORMap
 _getId ($field)
 
 _setId ($field, $value)
 
 _getAdditionalValueFromRelation ($field)
 
 _setAdditionalValueFromRelation ($field, $value)
 
 _getAdditionalValue ($field)
 
 _setAdditionalValue ($field, $value)
 
 parseRelationOptions ($type, $name, $options)
 
 storeRelations ($only_these=null)
 
 deleteRelations ()
 
 initializeContent ()
 
 applyCallbacks ($type)
 
 cbNotificationMapper ($cb_type)
 
 cbAfterInitialize ($cb_type)
 
 setSerializedValue ($field, $value)
 
 setI18nValue ($field, $value)
 

Static Protected Member Functions

static configure ($config=[])
 
static getOrderedThreads ($thread_ids, $limit=51, $since=null, $olderthan=null, string $user_id=null, $search=null)
 
static getMyBlubberCourses (string $user_id=null)
 
static getMyBlubberInstitutes (string $user_id=null)
 
- Static Protected Member Functions inherited from SimpleORMap
static db_table ()
 
static db_fields ()
 
static pk ()
 
static default_values ()
 
static serialized_fields ()
 
static alias_fields ()
 
static i18n_fields ()
 
static additional_fields ()
 
static has_many ()
 
static has_one ()
 
static belongs_to ()
 
static has_and_belongs_to_many ()
 
static registered_callbacks ()
 
static known_slots ()
 
static notification_map ()
 
static getter_setter_map ()
 
static configure ($config=[])
 
static config ($key)
 
static registerCallback ($types, $cb)
 
static unregisterCallback ($types, $cb)
 

Additional Inherited Members

- Data Fields inherited from SimpleORMap
const ID_SEPARATOR = '_'
 
- Static Public Attributes inherited from SimpleORMap
static $schemes = null
 
- Protected Attributes inherited from SimpleORMap
 $content = []
 
 $content_db = []
 
 $is_new = true
 
 $is_deleted = false
 
 $relations = []
 
 $additional_data = []
 
- Static Protected Attributes inherited from SimpleORMap
static $config = []
 
static $reserved_slots = ['value','newid','iterator','tablemetadata', 'relationvalue','wherequery','relationoptions','data','new','id']
 
static $performs_batch_operation = false
 

Member Function Documentation

◆ addFollowingByUser()

addFollowingByUser (   $user_id = null)

Lets a user follow a thread

Parameters
string | null$user_idId of the user (optional, defaults to current user

◆ configure()

static configure (   $config = [])
staticprotected

Configures this model.

Parameters
array$configConfiguration array

◆ countUnseenComments()

countUnseenComments ( string  $user_id = null)

Count all unseen comments of this thread.

Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

◆ exportUserData()

static exportUserData ( StoredUserData  $storage)
static

Export available blubber threads of a given user into a storage object (an instance of the StoredUserData class) for that user.

Parameters
StoredUserData$storageobject to store data into

Implements PrivacyObject.

◆ find()

static find (   $id)
static
Returns
BlubberThread|null

◆ findByContext()

static findByContext (   $context_id,
  $only_in_stream = false,
  $context_type = 'course',
string  $user_id = null 
)
static
Parameters
string$seminar_idthe ID of a course
string$only_in_streamoptional; filter threads by visible_in_stream
string$context_typeoptional; filter threads by context_type
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

◆ findByInstitut()

static findByInstitut (   $institut_id,
  $only_in_stream = false,
string  $user_id = null 
)
static
Parameters
string$institut_idthe ID of an institute
string$only_in_streamoptional; filter threads by visible_in_stream
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

◆ findBySeminar()

static findBySeminar (   $seminar_id,
  $only_in_stream = false,
string  $user_id = null 
)
static
Parameters
string$seminar_idthe ID of a course
string$only_in_streamoptional; filter threads by visible_in_stream
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

◆ findBySQL()

static findBySQL (   $sql,
  $params = [] 
)
static
Returns
BlubberThread[]

◆ findMyGlobalThreads()

static findMyGlobalThreads (   $limit = 51,
  $since = null,
  $olderthan = null,
string  $user_id = null,
  $search = null 
)
static
Parameters
string$limitoptional; limits the number of results
string$sinceoptional; selects threads after this date (exclusive)
string$olderthanoptional; selects threads before this date (exclusive)
string$user_idoptional; use this ID instead of $GLOBALS['user']->id
string$searchoptional; filters the threads by a search string
Returns
array an array of the user's global BlubberThreads

(PHPMD.Superglobals)

◆ getAvatar()

getAvatar ( )

◆ getBlubberPluginId()

getBlubberPluginId ( )
protected

Returns the id of the blubber plugin.

Returns
int Id of the plugin

◆ getContentTemplate()

getContentTemplate ( )

◆ getContextTemplate()

getContextTemplate ( )

Returns a template (or null) to display this in the context container

◆ getHashtags()

getHashtags (   $since = null)

◆ getJSONData()

getJSONData (   $limit_comments = 50,
  $user_id = null,
  $search = null 
)

◆ getLastVisit()

getLastVisit ( string  $user_id = null)
Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

(PHPMD.Superglobals)

◆ getLatestActivity()

getLatestActivity ( bool  $include_mkdate = false)

◆ getMyBlubberCourses()

static getMyBlubberCourses ( string  $user_id = null)
staticprotected

Returns all Seminar_ids to courses I am member of and in which blubber is an active plugin.

Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id
Returns
array of string : array of Seminar_ids

(PHPMD.Superglobals)

◆ getMyBlubberInstitutes()

static getMyBlubberInstitutes ( string  $user_id = null)
staticprotected
Parameters
?string$user_id optional; use this ID instead of $GLOBALS['user']->id
Returns
array

(PHPMD.Superglobals)

◆ getName()

getName ( )

◆ getNotificationUsersQueryAndParameters()

getNotificationUsersQueryAndParameters ( )
protected

Returns an array that includes the query and parameters to retrieve the user ids of all users that should be notified by a new post in this thread.

The array needs to have the following structure:

[ 'query' => ..., 'parameters' => ... ]

Returns
array|false

◆ getOpenGraphURLs()

getOpenGraphURLs ( )

◆ getOrderedThreads()

static getOrderedThreads (   $thread_ids,
  $limit = 51,
  $since = null,
  $olderthan = null,
string  $user_id = null,
  $search = null 
)
staticprotected

This method is used to get the ordered (upgraded) threads. Because a thread is also able to manage its own visibility and not only pure SQL, we need to execute

Parameters
$thread_ids
string$limitoptional; limits the number of results
string$sinceoptional; selects threads after this date (exclusive)
string$olderthanoptional; selects threads before this date (exclusive)
string$user_idoptional; use this ID instead of $GLOBALS['user']->id
string$searchoptional; filters the threads by a search string
Returns
array

◆ getURL()

getURL ( )

◆ isCommentable()

isCommentable ( string  $user_id = null)
Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

◆ isFollowedByUser()

isFollowedByUser (   $user_id = null)

Returns whether a user follows a thread.

Parameters
string | null$user_idId of the user (optional, defaults to current user
Returns
bool

◆ isReadable()

isReadable ( string  $user_id = null)
Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

(PHPMD.Superglobals)

◆ isVisibleInStream()

isVisibleInStream ( )

◆ isWritable()

isWritable ( string  $user_id = null)
Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

(PHPMD.Superglobals)

◆ markAsRead()

markAsRead ( string  $user_id = null)
Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id

(PHPMD.Superglobals)

◆ mayDisableNotifications()

mayDisableNotifications ( string  $user_id = null)

Returns whether the notifications for this thread may be disabled.

Parameters
string$user_idoptional; use this ID instead of $GLOBALS['user']->id
Returns
bool

◆ mention()

mention (   $matches)

Recognizes mentions in blubber as or "Firstname lastname" and turns them into usual studip-links. The mentioned person is notified by sending a message to him/her as a side-effect.

Parameters
array$matches
Returns
string

◆ notifyUsersForNewComment()

notifyUsersForNewComment (   $comment)

◆ removeFollowingByUser()

removeFollowingByUser (   $user_id = null)

Lets a user unfollow a thread

Parameters
string | null$user_idId of the user (optional, defaults to current user

◆ setLastVisit()

setLastVisit ( string  $user_id = null)

Sets the last visit timestamp for this thread

Parameters
string | null$user_id

◆ upgradeThread()

static upgradeThread (   $thread)
static

Checks if a BlubberThread has a display_class and returns an instance of display_class with the same data. Otherwise returns BlubberThread.

Parameters
BlubberThread | boolean$thread: instance of BlubberThread or false
Returns
BlubberThread|boolean

The documentation for this class was generated from the following file: