Example #1
0
function __wps__groups() {	
	
	
	global $wpdb, $current_user;
	
	// View (and set tabs)
	if (!isset($_GET['view']) || $_GET['term'] != '') {
		$browse_active = 'active';
		$create_active = 'inactive';
		$view = "browse";
	} 
	if ( isset($_GET['view']) && $_GET['view'] == "create") {
		$browse_active = 'inactive';
		$create_active = 'active';
		$view = "create";
	} 

	$thispage = get_permalink();
	if ($thispage[strlen($thispage)-1] != '/') { $thispage .= '/'; }

	$group_url = get_option(WPS_OPTIONS_PREFIX.'_group_url');
	$group_all_create = get_option(WPS_OPTIONS_PREFIX.'_group_all_create');

	if (isset($_GET['page_id']) && $_GET['page_id'] != '') {
		// No Permalink
		$thispage = $group_url;
		$q = "&";
	} else {
		$q = "?";
	}

	if (isset($_GET['term'])) {
		$term = $_GET['term'];
	} else {
		$term = '';
	}

	$html = '<div class="__wps__wrapper">';

		if ( (is_user_logged_in()) && ($group_all_create == "on" || __wps__get_current_userlevel() == 5) ) {

			$html .= "<input type='submit' id='show_create_group_button' class='__wps__button' value='".__("Create Group", WPS_TEXT_DOMAIN)."'>";

			$html .= "<div id='create_group_form' style='display:none'>";
				$html .= "<div>";
				$html .= "<strong>".__("Name of Group", WPS_TEXT_DOMAIN)."</strong><br />";
				$html .= "<input type='text' id='name_of_group' class='new-topic-subject-input' style='width: 98% !important;'>";
				$html .= "</div>";

				$html .= "<div>";
				$html .= "<strong>".__("Description", WPS_TEXT_DOMAIN)."</strong><br />";
				$html .= "<input type='text' id='description_of_group' style='width: 98% !important;'>";
				$html .= "</div>";

				$html .= "<div style='margin-top:10px'>";
				$html .= "<input type='submit' id='create_group_button' class='__wps__button' value='".__("Create", WPS_TEXT_DOMAIN)."'>";
				$html .= "<input type='submit' id='cancel_create_group_button' class='__wps__button' value='".__("Cancel", WPS_TEXT_DOMAIN)."'>";
				$html .= "</div>";
			$html .= "</div>";

		}
		
		$html .= "<div id='groups_results'>";
		
		if ( $term != '' ) {
	
			$me = $current_user->ID;
			$page = 1;
			$page_length = 25;
	
			$term = "";
			if (isset($_POST['group'])) { $term .= $_POST['group']; }
			if (isset($_GET['term'])) { $term .= $_GET['term']; }

			$html .= "<div style='padding:0px;'>";
			$html .= '<input type="text" id="group" name="group" autocomplete="off" class="groups_search_box" value="'.$term.'" style="margin-right:10px" />';
			$html .= '<input type="hidden" id="group_id" name="group_id" />';
			$html .= '<input id="groups_go_button" type="submit" class="__wps__button" value="'.__("Search", WPS_TEXT_DOMAIN).'" />';
			$html .= "</div>";	

	
			$sql = "SELECT g.*, (SELECT COUNT(*) FROM ".$wpdb->prefix."symposium_group_members WHERE group_id = g.gid) AS member_count
			FROM ".$wpdb->prefix."symposium_groups g WHERE  
			( g.name LIKE '%".$term."%') OR 
			( g.description LIKE '%".$term."%' )
			ORDER BY group_order, last_activity DESC LIMIT 0,25";
			
			$groups = $wpdb->get_results($sql);


			if ($groups) {
				
				foreach ($groups as $group) {

					if (__wps__member_of($group->gid) == 'yes') { 
						$html .= "<div class='groups_row row_odd corners'>";
					} else {
						$html .= "<div class='groups_row row corners'>";
					}					
					
						$html .= "<div class='groups_avatar'>";
							$html .= __wps__get_group_avatar($group->gid, 64);
						$html .= "</div>";

						$html .= "<div class='group_name'>";
						$name = stripslashes($group->name) != '' ? stripslashes($group->name) : __('[No name]', WPS_TEXT_DOMAIN);
						$html .= "<a class='row_link' href='".__wps__get_url('group')."?gid=".$group->gid."'>".$name."</a>";
						$html .= "</div>";
						
						$html .= "<div class='group_member_count'>";
						$html .= __("Member Count:", WPS_TEXT_DOMAIN)." ".$group->member_count;
						if ($group->last_activity) {
							$html .= '<br /><em>'.__('last active', WPS_TEXT_DOMAIN).' '.__wps__time_ago($group->last_activity)."</em>";
						}
						$html .= "</div>";
					
						$html .= "<div class='group_description'>";
						$html .= $group->description;
						$html .= "</div>";
						
					$html .= "</div>";
					
				}
	
			}
			
		} else {
	
	
			$html .= "<div style='padding:0px;'>";
			$html .= '<input type="text" id="__wps__group" name="group" autocomplete="off" class="groups_search_box" value="'.$term.'" style="margin-right:10px" />';
			$html .= '<input type="hidden" id="group_id" name="group_id" />';
			$html .= '<input id="groups_go_button" type="submit" class="__wps__button" value="'.__("Search", WPS_TEXT_DOMAIN).'" />';
			$html .= "</div>";	
	
			
			$html .= "<div id='__wps__groups'><img src='".get_option(WPS_OPTIONS_PREFIX.'_images')."/busy.gif' /></div>";
			
		}
		
		$html .= "</div>"; // End of Groups Results
		
		if (isset($groups) && !$groups) 
				$html .= "<div style='clear:both'>".__("No group found....", WPS_TEXT_DOMAIN)."</div>";
		
	$html .= '</div>'; // End of Wrapper
	
	// Send HTML
	return $html;

}
							$row_array['avatar'] = get_avatar($item->ID, 40);
							$row_array['city'] = __('Photo Album', WPS_TEXT_DOMAIN);
							$row_array['country'] = '';
							$row_array['country'] = '';
							$row_array['id'] = $item->ID;
							$row_array['value'] = $item->ID;
							$row_array['name'] = str_replace('&nbsp;', ' ', stripslashes(strip_tags($item->display_name)));
							$row_array['type'] = $item->type;
							$row_array['owner'] = $item->owner;
							$row_array['url'] = $item->url;
					        array_push($return_arr,$row_array);
						}
						break;
					case 'group': 
							if (!$done_groups) { $row_array['name'] = __('GROUPS', WPS_TEXT_DOMAIN); $row_array['type'] = 'sep'; array_push($return_arr,$row_array); $done_groups = true; }
							$row_array['avatar'] = __wps__get_group_avatar($item->ID, 40);
							$row_array['city'] = __('Group', WPS_TEXT_DOMAIN);
							$row_array['country'] = '';
							$row_array['country'] = '';
							$row_array['id'] = $item->ID;
							$row_array['value'] = $item->ID;
							$row_array['name'] = str_replace('&nbsp;', ' ', stripslashes(strip_tags($item->display_name)));
							$row_array['type'] = $item->type;
							$row_array['owner'] = $item->owner;
							$row_array['url'] = $item->url;
					        array_push($return_arr,$row_array);
						break;
				}			
			}
			
		}
		$sql = "SELECT m.*, g.*, (SELECT COUNT(*) FROM ".$wpdb->prefix."symposium_group_members WHERE group_id = g.gid) AS member_count  
		FROM ".$wpdb->prefix."symposium_group_members m 
		LEFT JOIN ".$wpdb->prefix."symposium_groups g ON m.group_id = g.gid 
		WHERE m.member_id = %d";
		
		$groups = $wpdb->get_results($wpdb->prepare($sql, $uid));	
		
		if ($groups) {
			foreach ($groups as $group) {	

				$html .= "<div class='groups_row row corners' style='width:90%'>";
					
					$html .= "<div class='groups_info'>";
	
						$html .= "<div class='groups_avatar'>";
							$html .= __wps__get_group_avatar($group->gid, 64);
						$html .= "</div>";

						$html .= "<div class='group_name'>";
						$html .= "<a href='".$group_url.$q."gid=".$group->gid."'>".stripslashes($group->name)."</a>";
						$html .= "</div>";
						
						$html .= "<div class='group_member_count'>";
						$html .= __("Member Count:", WPS_TEXT_DOMAIN)." ".$group->member_count;
						if ($group->last_activity) {
							$html .= '<br /><em>'.__('last active', WPS_TEXT_DOMAIN).' '.__wps__time_ago($group->last_activity).".</em>";
						}
						$html .= "</div>";
						
					$html .= "</div>";
					
    function get_avatar($size=64) {
		return __wps__get_group_avatar($this->id, $size);
    }