mirror of
https://github.com/e107inc/e107.git
synced 2025-07-25 17:01:43 +02:00
Viewable By shortcode added. Forum deleted template corrected.
This commit is contained in:
@@ -95,6 +95,17 @@ class user_class
|
||||
}
|
||||
|
||||
|
||||
public function getFixedClassDescription($id)
|
||||
{
|
||||
if(isset($this->fixed_classes[$id]))
|
||||
{
|
||||
return $this->fixed_classes[$id];
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Take a key value such as 'member' and return it's numerical value.
|
||||
* @param $text
|
||||
|
@@ -104,12 +104,12 @@ class e107forum
|
||||
*/
|
||||
}
|
||||
|
||||
/**
|
||||
* Grab the forum data up front to reduce LEFT JOIN usage. Currently only forum_id and forum_sef but may be expanded as needed.
|
||||
*/
|
||||
function getForumData()
|
||||
/**
|
||||
* Grab the forum data up front to reduce LEFT JOIN usage. Currently only forum_id and forum_sef but may be expanded as needed.
|
||||
*/
|
||||
private function getForumData()
|
||||
{
|
||||
$data = e107::getDb()->retrieve("SELECT forum_id, forum_sef FROM `#forum`", true); // no ordering for better performance.
|
||||
$data = e107::getDb()->retrieve("SELECT forum_id, forum_sef, forum_class FROM `#forum`", true); // no ordering for better performance.
|
||||
|
||||
$newData = array();
|
||||
foreach($data as $row)
|
||||
@@ -138,6 +138,32 @@ class e107forum
|
||||
|
||||
}
|
||||
|
||||
function getForumClassMembers($forumId, $type='view')
|
||||
{
|
||||
|
||||
$fieldTypes = array('view' => 'forum_class');
|
||||
$field = $fieldTypes[$type];
|
||||
|
||||
if(isset($this->forumData[$forumId][$field]))
|
||||
{
|
||||
$class = $this->forumData[$forumId]['forum_class'];
|
||||
|
||||
if($class == 0 || ($class > 250 && $class < 256))
|
||||
{
|
||||
return $class;
|
||||
}
|
||||
|
||||
|
||||
$qry = "SELECT user_id, user_name, user_class FROM `#user` WHERE FIND_IN_SET(".$class.", user_class) OR user_class = ".$class." ORDER by user_name LIMIT 50"; // FIND_IN_SET(user_class, ".$class.")
|
||||
$users = e107::getDb()->retrieve($qry, true);
|
||||
|
||||
return $users;
|
||||
}
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param $user integer userid (if empty "anon" will be used)
|
||||
|
@@ -339,6 +339,55 @@ else // v1.x
|
||||
}
|
||||
|
||||
|
||||
// ----------------- { VIEWABLE_BY } ---------------------------
|
||||
|
||||
if($users = $forum->getForumClassMembers($forumId))
|
||||
{
|
||||
$userList = array();
|
||||
if(is_array($users))
|
||||
{
|
||||
foreach($users as $user)
|
||||
{
|
||||
$userList[] = "<a href='".e107::getUrl()->create('user/profile/view', $user)."'>".$user['user_name']."</a>";
|
||||
}
|
||||
|
||||
$viewable = implode(', ', $userList);;
|
||||
}
|
||||
elseif($users == 0)
|
||||
{
|
||||
$viewable = '';
|
||||
}
|
||||
else
|
||||
{
|
||||
$viewable = e107::getUserClass()->getFixedClassDescription($users);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(!empty($viewable))
|
||||
{
|
||||
|
||||
$fVars->VIEWABLE_BY = "
|
||||
|
||||
<div class='panel panel-default' style='margin-top:10px'>
|
||||
<div class='panel-heading'>Viewable by</div>
|
||||
<div class='panel-body'>
|
||||
".$viewable."
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
";
|
||||
}
|
||||
else
|
||||
{
|
||||
$fVars->VIEWABLE_BY = '';
|
||||
}
|
||||
|
||||
|
||||
// ------------------------------------------------------------
|
||||
///TODO XXX All these $fVars items need to be put into a shortcode class so they can be parsed with parms and wrappers. Big Job!
|
||||
|
||||
|
||||
|
||||
$fVars->SEARCH = "
|
||||
<form method='get' class='form-inline input-append' action='".e_BASE."search.php'>
|
||||
|
@@ -226,7 +226,8 @@ if(is_array($FORUM_VIEWTOPIC_TEMPLATE) && deftrue('BOOTSTRAP',false))
|
||||
$FORUMSTART = $FORUM_VIEWTOPIC_TEMPLATE['start'];
|
||||
$FORUMTHREADSTYLE = $FORUM_VIEWTOPIC_TEMPLATE['thread'];
|
||||
$FORUMEND = $FORUM_VIEWTOPIC_TEMPLATE['end'];
|
||||
$FORUMREPLYSTYLE = $FORUM_VIEWTOPIC_TEMPLATE['replies'];
|
||||
$FORUMREPLYSTYLE = $FORUM_VIEWTOPIC_TEMPLATE['replies'];
|
||||
$FORUMDELETEDSTYLE = $FORUM_VIEWTOPIC_TEMPLATE['deleted'];
|
||||
}
|
||||
|
||||
//TODO Clean up this mess!!
|
||||
|
@@ -350,11 +350,18 @@ $FORUM_VIEWFORUM_TEMPLATE['footer'] = "</table>
|
||||
<div class='col-md-5 span5 pull-left left' style='padding-top:10px'>{THREADPAGES}</div><div class='col-md-3 span3 pull-right right' style='padding-top:10px'>{NEWTHREADBUTTONX}</div>
|
||||
|
||||
</div>
|
||||
<div class='panel panel-default' style='margin-top:50px'>
|
||||
<div class='panel-body'>
|
||||
{ICONKEY}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class='panel panel-default' style='margin-top:50px'>
|
||||
<div class='panel-heading'>Status Keys</div>
|
||||
<div class='panel-body'>
|
||||
{ICONKEY}
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{VIEWABLE_BY}
|
||||
|
||||
";
|
||||
$FORUM_VIEWFORUM_TEMPLATE['end'] = "<!--- END --> \n";
|
||||
|
||||
|
@@ -413,6 +413,66 @@ $FORUM_VIEWTOPIC_TEMPLATE['end'] = "</ul>
|
||||
|
||||
|
||||
$FORUM_VIEWTOPIC_TEMPLATE['replies'] = $FORUM_VIEWTOPIC_TEMPLATE['thread'];
|
||||
|
||||
|
||||
$FORUM_VIEWTOPIC_TEMPLATE['deleted'] = "
|
||||
<li id='post-{POSTID}' class='forum-viewtopic-deleted forum-viewtopic-post'>
|
||||
<div class='hidden-xs row row-fluid btn-navbar navbar-btn'>
|
||||
|
||||
{SETIMAGE: w=100&h=0&crop=0}
|
||||
<div class='col-xs-2 span2 left text-left'>
|
||||
<div class='row'>
|
||||
<div class='col-xs-12 col-md-12 forum-user-combo'>{USERCOMBO}<br />{CUSTOMTITLE}</div>
|
||||
</div>
|
||||
|
||||
{NEWFLAG} {ANON_IP}</div>
|
||||
<div class='col-xs-4 col-sm-3 text-muted span4 text-muted muted'><small>{THREADDATESTAMP=relative}</small></div>
|
||||
<div class='col-xs-5 text-muted span5 text-muted muted right text-right'><small>{LASTEDIT}{LASTEDITBY=link}</small></div>
|
||||
<div class='col-xs-3 col-sm-2 span1 right text-right'>{POSTOPTIONS}</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class='row row-fluid' >
|
||||
|
||||
<div class='col-xs-12 col-md-2 span2 left'>
|
||||
<div class='row'>
|
||||
|
||||
<div class='col-xs-3 col-md-12 text-center'>{AVATAR: shape=rounded}</div>
|
||||
<div class='col-xs-6 visible-xs'>{USERCOMBO}<br />{CUSTOMTITLE}</div>
|
||||
<div class='col-xs-6 col-md-12 hidden-xs'>
|
||||
<small>
|
||||
{LEVEL=badge} {LEVEL=glyph}
|
||||
</small>
|
||||
</div>
|
||||
<div class='visible-xs col-xs-3'><div class='clearfix'>{POSTOPTIONS}</div><div class='pull-right '><br /><small class='text-muted'>{THREADDATESTAMP=relative}</small></div></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='visible-xs col-xs-12'><hr /></div>
|
||||
<div class='col-xs-12 col-md-9 span9 forum-thread-text '>
|
||||
{POSTDELETED}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class='row row-fluid'>
|
||||
<div class='col-xs-2 span2 finfobar'>
|
||||
|
||||
</div>
|
||||
<div class='col-xs-9 span9 finfobar' >
|
||||
<small> {SIGNATURE=clean}</small>
|
||||
</div>
|
||||
|
||||
<div class='col-xs-3 span3'>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</li>
|
||||
|
||||
";
|
||||
|
||||
|
||||
|
||||
|
||||
$FORUM_VIEWTOPIC_WRAPPER['ATTACHMENTS'] = "<div class='alert alert-default alert-block'>{---}</div>";
|
||||
|
||||
|
Reference in New Issue
Block a user