parent
							
								
									6ab82c7cfe
								
							
						
					
					
						commit
						8c4de053ba
					
				@ -1,122 +0,0 @@ | 
				
			||||
 | 
				
			||||
function Set_Cookie( name, value, expires, path, domain, secure ) { | 
				
			||||
	// set time, it's in milliseconds
 | 
				
			||||
	var today = new Date(); | 
				
			||||
	today.setTime( today.getTime() ); | 
				
			||||
	// if the expires variable is set, make the correct expires time, the
 | 
				
			||||
	// current script below will set it for x number of days, to make it
 | 
				
			||||
	// for hours, delete * 24, for minutes, delete * 60 * 24
 | 
				
			||||
	if ( expires ) | 
				
			||||
	{ | 
				
			||||
		expires = expires * 1000 * 60 * 60 * 24; | 
				
			||||
	} | 
				
			||||
	//alert( 'today ' + today.toGMTString() );// this is for testing purpose only
 | 
				
			||||
	var expires_date = new Date( today.getTime() + (expires) ); | 
				
			||||
	//alert('expires ' + expires_date.toGMTString());// this is for testing purposes only
 | 
				
			||||
 | 
				
			||||
	document.cookie = name + "=" +escape( value ) + | 
				
			||||
		( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + //expires.toGMTString()
 | 
				
			||||
		( ( path ) ? ";path=" + path : "" ) + | 
				
			||||
		( ( domain ) ? ";domain=" + domain : "" ) + | 
				
			||||
		( ( secure ) ? ";secure" : "" ); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
function Get_Cookie( name ) { | 
				
			||||
	var start = document.cookie.indexOf( name + "=" ); | 
				
			||||
	var len = start + name.length + 1; | 
				
			||||
	if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ) | 
				
			||||
	{ | 
				
			||||
		return null; | 
				
			||||
	} | 
				
			||||
	if ( start == -1 ) return null; | 
				
			||||
	var end = document.cookie.indexOf( ";", len ); | 
				
			||||
	if ( end == -1 ) end = document.cookie.length; | 
				
			||||
	return unescape( document.cookie.substring( len, end ) ); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
var xmlHttp=null; | 
				
			||||
var url=null | 
				
			||||
function set_url(ref) | 
				
			||||
{ | 
				
			||||
	url=ref; | 
				
			||||
} | 
				
			||||
function mostrar_aviso() | 
				
			||||
{ | 
				
			||||
 | 
				
			||||
	document.getElementById("box").style.visibility="visible"; | 
				
			||||
 | 
				
			||||
} | 
				
			||||
 | 
				
			||||
function ocultar_aviso() | 
				
			||||
{ | 
				
			||||
	document.getElementById("box").style.visibility="hidden"; | 
				
			||||
 | 
				
			||||
} | 
				
			||||
 | 
				
			||||
function notificar() | 
				
			||||
{ | 
				
			||||
	vernuevos() | 
				
			||||
	setTimeout("notificar()",60000) | 
				
			||||
} | 
				
			||||
 | 
				
			||||
function vernuevos() | 
				
			||||
{ | 
				
			||||
 | 
				
			||||
	xmlHttp=GetXmlHttpObject(stateChanged) | 
				
			||||
	xmlHttp.open("GET", url , true) | 
				
			||||
	xmlHttp.send(null) | 
				
			||||
} | 
				
			||||
 | 
				
			||||
function stateChanged() | 
				
			||||
{ | 
				
			||||
 | 
				
			||||
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") | 
				
			||||
	{ | 
				
			||||
		document.getElementById("nuevos").innerHTML=xmlHttp.responseText | 
				
			||||
		if(Get_Cookie("nuevos")==null || xmlHttp.responseText-Get_Cookie("nuevos")>0 ) | 
				
			||||
		{ | 
				
			||||
 | 
				
			||||
			mostrar_aviso() | 
				
			||||
			setTimeout("ocultar_aviso()",7000); | 
				
			||||
		} | 
				
			||||
		Set_Cookie( "nuevos", xmlHttp.responseText, 0, "/",'','') | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
 | 
				
			||||
	function GetXmlHttpObject(handler) | 
				
			||||
{ | 
				
			||||
	var objXmlHttp=null | 
				
			||||
	if (navigator.userAgent.indexOf("Opera")>=0) | 
				
			||||
	{ | 
				
			||||
		objXmlHttp=new XMLHttpRequest() | 
				
			||||
		objXmlHttp.onload=handler | 
				
			||||
		objXmlHttp.onerror=handler | 
				
			||||
		return objXmlHttp | 
				
			||||
	} | 
				
			||||
	if (navigator.userAgent.indexOf("MSIE")>=0) | 
				
			||||
	{ | 
				
			||||
		var strName="Msxml2.XMLHTTP" | 
				
			||||
		if (navigator.appVersion.indexOf("MSIE 5.5")>=0) | 
				
			||||
		{ | 
				
			||||
			strName="Microsoft.XMLHTTP" | 
				
			||||
		} | 
				
			||||
		try | 
				
			||||
		{ | 
				
			||||
			objXmlHttp=new ActiveXObject(strName) | 
				
			||||
			objXmlHttp.onreadystatechange=handler | 
				
			||||
			return objXmlHttp | 
				
			||||
		} | 
				
			||||
		catch(e) | 
				
			||||
		{ | 
				
			||||
		alert("Error. Scripting for ActiveX might be disabled") | 
				
			||||
		return | 
				
			||||
		} | 
				
			||||
	} | 
				
			||||
	if (navigator.userAgent.indexOf("Mozilla")>=0) | 
				
			||||
	{ | 
				
			||||
		objXmlHttp=new XMLHttpRequest() | 
				
			||||
		objXmlHttp.onload=handler | 
				
			||||
		objXmlHttp.onerror=handler | 
				
			||||
		return objXmlHttp | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
@ -0,0 +1,114 @@ | 
				
			||||
<?php | 
				
			||||
/* For licensing terms, see /chamilo_license.txt */ | 
				
			||||
/** | 
				
			||||
 * @package dokeos.social | 
				
			||||
 * @author Julio Montoya <gugli100@gmail.com> | 
				
			||||
 */ | 
				
			||||
  | 
				
			||||
$language_file = array('userInfo'); | 
				
			||||
require '../inc/global.inc.php'; | 
				
			||||
require_once api_get_path(LIBRARY_PATH).'group_portal_manager.lib.php'; | 
				
			||||
require_once api_get_path(LIBRARY_PATH).'usermanager.lib.php'; | 
				
			||||
require_once api_get_path(LIBRARY_PATH).'social.lib.php'; | 
				
			||||
 | 
				
			||||
$this_section = SECTION_SOCIAL; | 
				
			||||
 | 
				
			||||
$interbreadcrumb[]= array ('url' =>'home.php','name' => get_lang('Social')); | 
				
			||||
 | 
				
			||||
api_block_anonymous_users(); | 
				
			||||
 | 
				
			||||
$group_id	= intval($_GET['id']); | 
				
			||||
 | 
				
			||||
//todo @this validation could be in a function in group_portal_manager | 
				
			||||
if (empty($group_id)) { | 
				
			||||
	api_not_allowed(); | 
				
			||||
} else { | 
				
			||||
	$group_info = GroupPortalManager::get_group_data($group_id); | 
				
			||||
	if (empty($group_info)) { | 
				
			||||
		api_not_allowed(); | 
				
			||||
	} | 
				
			||||
	//only admin or moderator can do that | 
				
			||||
	$user_role = GroupPortalManager::get_user_group_role(api_get_user_id(), $group_id); | 
				
			||||
	if (!in_array($user_role, array(GROUP_USER_PERMISSION_ADMIN, GROUP_USER_PERMISSION_MODERATOR))) { | 
				
			||||
		api_not_allowed();		 | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
 | 
				
			||||
 | 
				
			||||
Display :: display_header($tool_name, 'Groups'); | 
				
			||||
SocialManager::show_social_menu(); | 
				
			||||
echo '<div class="actions-title">'; | 
				
			||||
echo get_lang('GroupWaitingList'); | 
				
			||||
echo '</div>';  | 
				
			||||
 | 
				
			||||
// Group information | 
				
			||||
$admins		= GroupPortalManager::get_users_by_group($group_id, true,array(GROUP_USER_PERMISSION_ADMIN)); | 
				
			||||
$show_message = '';  | 
				
			||||
 | 
				
			||||
if (isset($_GET['action']) && $_GET['action']=='accept') { | 
				
			||||
	// we add a user only if is a open group | 
				
			||||
	$user_join = intval($_GET['u']); | 
				
			||||
	//if i'm a moderator		 | 
				
			||||
	if (GroupPortalManager::is_group_moderator(api_get_user_id())) { | 
				
			||||
		GroupPortalManager::update_user_role($user_join, $group_id); | 
				
			||||
		$show_message = get_lang('UserAdded'); | 
				
			||||
	}	 | 
				
			||||
} | 
				
			||||
 | 
				
			||||
if (isset($_GET['action']) && $_GET['action']=='deny') {	 | 
				
			||||
	// we add a user only if is a open group | 
				
			||||
	$user_join = intval($_GET['u']); | 
				
			||||
	//if i'm a moderator		 | 
				
			||||
	if (GroupPortalManager::is_group_moderator(api_get_user_id())) { | 
				
			||||
		GroupPortalManager::delete_user_rel_group($user_join, $group_id);  | 
				
			||||
		$show_message = get_lang('UserDeleted'); | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
 | 
				
			||||
 | 
				
			||||
if (isset($_GET['action']) && $_GET['action']=='set_moderator') {	 | 
				
			||||
	// we add a user only if is a open group | 
				
			||||
	$user_moderator= intval($_GET['u']); | 
				
			||||
	//if i'm the admin		 | 
				
			||||
	if (GroupPortalManager::is_group_admin(api_get_user_id())) { | 
				
			||||
		GroupPortalManager::update_user_role($user_moderator, $group_id, GROUP_USER_PERMISSION_MODERATOR);  | 
				
			||||
		$show_message = get_lang('UserChangeToModerator'); | 
				
			||||
	} | 
				
			||||
} | 
				
			||||
 | 
				
			||||
 | 
				
			||||
 | 
				
			||||
if (! empty($show_message)){ | 
				
			||||
	Display :: display_normal_message($show_message); | 
				
			||||
} | 
				
			||||
 | 
				
			||||
$users	= GroupPortalManager::get_users_by_group($group_id, true, array(GROUP_USER_PERMISSION_PENDING_INVITATION_SENT_BY_USER)); | 
				
			||||
$new_member_list = array(); | 
				
			||||
 | 
				
			||||
 | 
				
			||||
	//Shows left column | 
				
			||||
	echo GroupPortalManager::show_group_column_information($group_id, api_get_user_id());	 | 
				
			||||
	 | 
				
			||||
	//-- Show message groups	 | 
				
			||||
	echo '<div id="layout_right" style="margin-left: 282px;">';	 | 
				
			||||
		 | 
				
			||||
	// Display form | 
				
			||||
	foreach($users as $user) {	  | 
				
			||||
		switch ($user['relation_type']) {			 | 
				
			||||
			case  GROUP_USER_PERMISSION_PENDING_INVITATION_SENT_BY_USER: | 
				
			||||
			$user['link'] = '<a href="group_waiting_list.php?id='.$group_id.'&u='.$user['user_id'].'&action=accept">'.Display::return_icon('add_user.gif', get_lang('Accept')).'</a>'; | 
				
			||||
			$user['link'] .= '<a href="group_waiting_list.php?id='.$group_id.'&u='.$user['user_id'].'&action=set_moderator">'.Display::return_icon('add_teacher_big.gif', get_lang('Moderator')).'</a>'; | 
				
			||||
			$user['link'] .='<a href="group_waiting_list.php?id='.$group_id.'&u='.$user['user_id'].'&action=deny">'.Display::return_icon('delete.gif', get_lang('Deny')).'</a>'; | 
				
			||||
			break;				 | 
				
			||||
		} | 
				
			||||
		$new_member_list[] = $user; | 
				
			||||
	} | 
				
			||||
	 | 
				
			||||
	if (count($new_member_list) > 0) {			 | 
				
			||||
		Display::display_sortable_grid('search_users', array(), $new_member_list, array('hide_navigation'=>true, 'per_page' => 100), $query_vars, false, array(true, false, true,true,false,true,true));		 | 
				
			||||
	} | 
				
			||||
	 | 
				
			||||
	echo '</div>'; // end layout right | 
				
			||||
	 | 
				
			||||
Display :: display_footer(); | 
				
			||||
?> | 
				
			||||
					Loading…
					
					
				
		Reference in new issue