CMS  Version 3.9
Forum Class Reference

Inherits DataItem.

Public Member Functions

 Sites ($constraint="")
 
 Owner ()
 
 Topics ($constraint="")
 
 Messages ($constraint="")
 
 LastPost ()
 
 Summary ()
 
 Subscriptions ($constraint="")
 
 UserSubscription ()
 Get the subscriptions to this forum for this user. More...
 
 allowDelete ()
 

Static Public Member Functions

static findByIdentifier ($identifier)
 

Public Attributes

 $primary_key = "forum_id"
 
 $table = "forum"
 
 $default_format = "{title}"
 
 $fields
 
 $relations
 

Detailed Description

Definition at line 41 of file forum.inc.

Member Function Documentation

◆ allowDelete()

Forum::allowDelete ( )

Definition at line 125 of file forum.inc.

126  {
127  $count = queryValue(ForumMessage, "COUNT(1)", "WHERE forum_id={$this->forum_id} AND message != '' AND deleted=0");
128  return ($count > 0) ? false : true;
129  }
return false

◆ findByIdentifier()

static Forum::findByIdentifier (   $identifier)
static

Definition at line 131 of file forum.inc.

132  {
133  return Query::create(Forum, "WHERE identifier=:identifier")
134  ->bind(":identifier", $identifier)
135  ->executeSingle();
136  }
Definition: forum.inc:42
$identifier
Definition: rss.inc:37

◆ LastPost()

Forum::LastPost ( )

Definition at line 94 of file forum.inc.

95  {
96  $messages = $this->Messages("ORDER BY date_posted DESC LIMIT 1");
97  return (count($messages) > 0) ? $messages[0] : null;
98  }
Messages($constraint="")
Definition: forum.inc:89
$messages

◆ Messages()

Forum::Messages (   $constraint = "")

Definition at line 89 of file forum.inc.

90  {
91  return $this->getRelatedList(ForumMessage, "", $constraint);
92  }
$constraint

◆ Owner()

Forum::Owner ( )

Definition at line 78 of file forum.inc.

79  {
80  $mgr = new UserManager();
81  return $mgr->getUser($this->owner_id);
82  }
$calendar owner_id
Provides the interface to the user model for the application.

◆ Sites()

Forum::Sites (   $constraint = "")

Definition at line 73 of file forum.inc.

74  {
75  return $this->crossReference(Site, ForumSiteXref, $constraint);
76  }
Definition: site.inc:40

◆ Subscriptions()

Forum::Subscriptions (   $constraint = "")

Definition at line 105 of file forum.inc.

106  {
107  return $this->getRelatedList(ForumSubscription, "", $constraint);
108  }

◆ Summary()

Forum::Summary ( )

Definition at line 100 of file forum.inc.

101  {
102  return $this->getRelated(ForumSummary);
103  }

◆ Topics()

Forum::Topics (   $constraint = "")

Definition at line 84 of file forum.inc.

85  {
86  return $this->getRelatedList(ForumTopic, "", $constraint);
87  }

◆ UserSubscription()

Forum::UserSubscription ( )

Get the subscriptions to this forum for this user.

There should at most one per user.

Returns
obj class ForumSubscription

Definition at line 116 of file forum.inc.

117  {
118  global $user;
119  $pk = $user->getPrimaryKey();
120 
121  $subscriptions = $this->Subscriptions("WHERE user_id={$user->$pk}");
122  return count($subscriptions) ? $subscriptions[0] : null;
123  }
Subscriptions($constraint="")
Definition: forum.inc:105
global $user

Member Data Documentation

◆ $default_format

Forum::$default_format = "{title}"

Definition at line 45 of file forum.inc.

◆ $fields

Forum::$fields
Initial value:
= array("forum_id" => Number,
"identifier" => String,
"title" => String,
"teaser" => Text,
"description" => HTML,
"created_date" => Date,
"last_modified" => Timestamp,
"owner_id" => Number,
"published" => Boolean,
"sort_order" => Number)

Definition at line 49 of file forum.inc.

◆ $primary_key

Forum::$primary_key = "forum_id"

Definition at line 43 of file forum.inc.

◆ $relations

Forum::$relations
Initial value:
= array(
"Sites" => Site,
"Owner" => "",
"Messages" => ForumMessage,
"Topics" => ForumTopic,
"LastPost" => ForumMessage,
"Summary" => ForumSummary,
"Subscriptions" => ForumSubscription,
"UserSubscriptions" => ForumSubscription,
)

Definition at line 62 of file forum.inc.

◆ $table

Forum::$table = "forum"

Definition at line 44 of file forum.inc.


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