Beispiel #1
0
			</div><!-- /#page_sidebar -->

			<div id="page_main">
				<?php 
    if ($this->tab == 'overview') {
        ?>
				<div id="page_header">
					<h3>
						<?php 
        echo \Components\Groups\Helpers\View::displayTab($this->group);
        ?>
					</h3>

					<?php 
        $gt = new \Components\Groups\Models\Tags($this->group->get('gidNumber'));
        echo $gt->render();
        ?>
				</div><!-- /#page_header -->
			<?php 
    }
    ?>

				<?php 
    if (count($this->notifications) > 0) {
        ?>
					<div id="page_notifications">
						<?php 
        foreach ($this->notifications as $notification) {
            echo "<p class=\"message {$notification['type']}\">{$notification['message']}</p>";
        }
        ?>
Beispiel #2
0
 /**
  * Gets groups matching tag string
  *
  * @param   string  $usertags
  * @param   string  $usergroups
  * @return  string
  */
 public static function getGroupsMatchingTagString($usertags, $usergroups)
 {
     //database object
     $database = \App::get('db');
     //turn users tag string into array
     $mytags = $usertags != '' ? array_map('trim', explode(',', $usertags)) : array();
     //users groups
     $mygroups = array();
     if (is_array($usergroups)) {
         foreach ($usergroups as $ug) {
             $mygroups[] = $ug->gidNumber;
         }
     }
     //query the databse for all published, type "HUB" groups
     $sql = "SELECT g.gidNumber, g.cn, g.description, g.public_desc\n\t\t\t\tFROM `#__xgroups` AS g\n\t\t\t\tWHERE g.type=1\n\t\t\t\tAND g.published=1\n\t\t\t\tAND g.discoverability=0";
     $database->setQuery($sql);
     //get all groups
     $groups = $database->loadObjectList();
     //loop through each group and see if there is a tag match
     foreach ($groups as $k => $group) {
         //get the groups tags
         $gt = new \Components\Groups\Models\Tags($group->gidNumber);
         $group->tags = $gt->render('string');
         $group->tags = array_map('trim', explode(',', $group->tags));
         //get common tags
         $group->matches = array_intersect($mytags, $group->tags);
         //remove tags from the group object since its no longer needed
         unset($group->tags);
         //if we dont have a match remove group from return results
         //or if we are already a member of the group remove from return results
         if (count($group->matches) < 1 || in_array($group->gidNumber, $mygroups)) {
             unset($groups[$k]);
         }
     }
     return $groups;
 }
// No direct access
defined('_HZEXEC_') or die;
$gparams = new \Hubzero\Config\Registry($this->group->get('params'));
$base = rtrim(str_replace('administrator', '', Request::base()), '/');
$sef = ltrim(Route::url('index.php?option=' . $this->option . '&cn=' . $this->group->get('cn')), '/');
$message = Lang::txt('Group Updated') . "\n\n";
$message .= "--------------------------------------------\n";
$message .= Lang::txt('Group:') . ' ' . strip_tags($this->group->get('description')) . "\n";
$message .= Lang::txt('Alias:') . ' ' . $this->group->get('cn') . "\n";
$message .= Lang::txt('Updated:') . ' @ ' . Date::of('now')->toLocal(Lang::txt('TIME_FORMAT_HZ1')) . ' on ' . Date::of('now')->toLocal(Lang::txt('DATE_FORMAT_HZ1')) . "\n";
$message .= Lang::txt('Updated By:') . ' ' . $this->user->get('name') . ' (' . $this->user->get('email') . ')' . "\n";
$message .= "--------------------------------------------\n\n";
$message .= "\t" . Lang::txt('Name:') . ' ' . strip_tags($this->group->get('description')) . "\n\n";
$message .= "\t" . Lang::txt('Interests (Tags):') . ' ';
$gt = new \Components\Groups\Models\Tags($this->group->get('gidNumber'));
$tags = $gt->render('string');
$message .= ($tags ? $tags : Lang::txt('[ Empty ]')) . "\n\n";
$message .= "\t" . Lang::txt('Public Description:') . ' ' . strip_tags($this->group->get('public_desc', '[ Empty ]')) . "\n\n";
$message .= "\t" . Lang::txt('Private Description:') . ' ' . strip_tags($this->group->get('private_desc', '[ Empty ]')) . "\n\n";
$message .= "\t" . Lang::txt('Logo:') . ' ' . ($this->group->get('logo') ? $base . DS . ltrim($this->group->getLogo(), DS) : '[ Not set ]') . "\n\n";
$message .= "\t" . Lang::txt('Membership Settings/Join Policy:') . ' ';
switch ($this->group->get('join_policy')) {
    case 3:
        $policy = Lang::txt('Closed');
        break;
    case 2:
        $policy = Lang::txt('Invite Only');
        break;
    case 1:
        $policy = Lang::txt('Restricted');
        break;