canEdit = $acl->acl_check( 'action', 'edit', 'users', $my->usertype, 'content', 'all' ); $access->canEditOwn = $acl->acl_check( 'action', 'edit', 'users', $my->usertype, 'content', 'own' ); require_once ( $mainframe->getPath( 'front_html' ) ); include_once( "administrator/components/com_comprofiler/ue_config.php" ); include_once("administrator/components/com_comprofiler/plugin.class.php"); include_once ("administrator/components/com_comprofiler/comprofiler.class.php"); include_once("administrator/components/com_comprofiler/imgToolbox.class.php"); $UElanguagePath=$mainframe->getCfg( 'absolute_path' ).'/components/com_comprofiler/plugin/language'; if (file_exists($UElanguagePath.'/'.$mosConfig_lang.'/'.$mosConfig_lang.'.php')) { include_once($UElanguagePath.'/'.$mosConfig_lang.'/'.$mosConfig_lang.'.php'); } else include_once($UElanguagePath.'/default_language/default_language.php'); $form=mosGetParam( $_REQUEST, 'reportform', 1 ); $uid=mosGetParam( $_REQUEST, 'uid', 0 ); $act=mosGetParam( $_REQUEST, 'act', 1 ); if(!ISSET($mosConfig_emailpass)) $mosConfig_emailpass=0; switch( $task ) { case "userDetails": case "userdetails": userEdit( $option, $my->id, _UE_UPDATE ); break; case "saveUserEdit": case "saveuseredit": userSave( $my->id ); break; case "userProfile": case "userprofile": userProfile($option, $my->id, _UE_UPDATE); break; case "usersList": case "userslist": usersList($my->id); break; case "userAvatar": case "useravatar": userAvatar($option, $my->id, _UE_UPDATE); break; case "lostPassword": case "lostpassword": lostPassForm( $option ); break; case "sendNewPass": case "sendnewpass": sendNewPass( $option ); break; case "registers": registerForm( $option, $mosConfig_emailpass ); break; case "saveRegistration": case "saveregistration": saveRegistration( $option ); break; case "login": login(); break; case "logout": logout(); break; case "confirm": confirm( mosGetParam( $_REQUEST, 'confirmcode', 1 ) ); break; case "moderateImages": case "moderateimages": moderateImages($option); break; case "moderateReports": case "moderatereports": moderateReports($option); break; case "moderateBans": case "moderatebans": moderateBans($option); break; case "approveImage": case "approveimage": approveImage(); break; case "reportUser": case "reportuser": reportUser($option,$form,$uid); break; case "processReports": case "processreports": processReports(); break; case "banProfile": case "banprofile": banUser($option,$uid,$form,$act); break; case "viewReports": case "viewreports": viewReports($option,$uid); break; case "emailUser": case "emailuser": emailUser($option,$uid); break; case "pendingApprovalUser": case "pendingapprovaluser": pendingApprovalUsers($option); break; case "approveUser": case "approveuser": approveUser(mosGetParam($_POST,'uids')); break; case "rejectUser": case "rejectuser": rejectUser(mosGetParam($_POST,'uids')); break; case "sendUserEmail": case "senduseremail": sendUserEmail(mosGetParam($_POST,'toID'),mosGetParam($_POST,'fromID'),mosGetParam($_POST,'emailSubject'),mosGetParam($_POST,'emailBody')); break; case "addConnection": case "addconnection": addConnection($my->id,mosGetParam($_REQUEST,'connectionid'),((isset($_POST['message'])) ? mosGetParam($_POST,'message') : "")); break; case "removeConnection": case "removeconnection": removeConnection($my->id,mosGetParam($_REQUEST,'connectionid')); break; case "denyConnection": case "denyconnection": denyConnection($my->id,mosGetParam($_REQUEST,'connectionid')); break; case "acceptConnection": case "acceptconnection": acceptConnection($my->id,mosGetParam($_REQUEST,'connectionid')); break; case "manageConnections": case "manageconnections": manageConnections($my->id); break; case "saveConnections": case "saveconnections": saveConnections(mosGetParam($_POST,'uid')); break; case "processConnectionActions": case "processconnectionactions": processConnectionActions(mosGetParam($_POST,'uid')); break; case "teamCredits": case "teamcredits": teamCredits(1); break; case "tabclass": tabClass($option, $my->id); break; default: userProfile($option, $my->id, _UE_UPDATE); break; } function sendUserEmail($toid,$fromid,$subject,$message) { global $ueConfig,$my, $database; if (($my->id == 0) || ($my->id != $fromid) || ($ueConfig['allow_email_display']!=1 && $ueConfig['allow_email_display']!=3)) { mosNotAuth(); return; } $rowFrom = new mosUser( $database ); $rowFrom->load( $fromid ); $rowTo = new mosUser( $database ); $rowTo->load( $toid ); if (isset($_POST["protect"]) && $_POST["protect"] == md5("hash".$rowTo->id.$rowTo->password.$rowTo->lastvisitDate.$rowFrom->password.$rowFrom->lastvisitDate) ) { $cbNotification = new cbNotification(); $res=$cbNotification->sendUserEmail($toid,$fromid,$subject,$message, true); if ($res) echo _UE_SENTEMAILSUCCESS; else echo _UE_SENTEMAILFAILED; } else { echo _UE_SESSIONTIMEOUT." "._UE_SENTEMAILFAILED; } } function emailUser($option,$uid) { global $database,$ueConfig,$my; if (($my->id == 0) || ($ueConfig['allow_email_display']!=1 && $ueConfig['allow_email_display']!=3)) { mosNotAuth(); return; } $rowFrom = new mosUser( $database ); $rowFrom->load( $my->id ); $rowTo = new mosUser( $database ); $rowTo->load( $uid ); HTML_comprofiler::emailUser($option,$rowFrom,$rowTo); } function userEdit( $option, $uid, $submitvalue) { global $database,$ueConfig; if ($uid == 0) { mosNotAuth(); return; } $database->setQuery( "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id='".$uid."'"); $users = $database->loadObjectList(); $user = $users[0]; HTML_comprofiler::userEdit( $user, $option, $submitvalue); } function userAvatar( $option, $uid, $submitvalue) { global $database; if ($uid == 0) { mosNotAuth(); return; } $row = new mosUser( $database ); $row->load( $uid ); $row->orig_password = $row->password; HTML_comprofiler::userAvatar( $row, $option, $submitvalue); } function setUserDBrequest( $uid ) { global $database; if (!isset($_REQUEST['user'])) { if (!$uid) { return false; } $database->setQuery( "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id=".$uid); } else { $userReq = urldecode(cbGetUnEscaped($_REQUEST['user'])); $len = strlen($userReq); if (($len > 2) && (substr($userReq, 0, 1) == "'") && (substr($userReq, $len-1, 1) == "'")) { $userReq = substr($userReq, 1, $len-2); $database->setQuery( "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND u.username='".cbGetEscaped(utf8ToISO($userReq))."'"); } else { $database->setQuery( "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id=".cbGetEscaped($_REQUEST['user'])); } } return true; } function userProfile( $option, $uid, $submitvalue) { global $database, $_REQUEST, $ueConfig,$my; if (!allowAccess( $ueConfig['allow_profileviewbyGID'],'RECURSE', userGID($my->id))) { echo _UE_NOT_AUTHORIZED; return; } if (!ISSET($_REQUEST['user']) && $uid==0) { echo _UE_REGISTERFORPROFILE; return; } $users=array(); if (setUserDBrequest($uid)) { $users = $database->loadObjectList(); } if (count($users)==0) { echo _UE_NOSUCHPROFILE; return; } $user = $users[0]; HTML_comprofiler::userProfile( $user, $option, $submitvalue); } function tabClass( $option, $uid ) { global $database, $_REQUEST, $ueConfig,$my; $users=array(); if (setUserDBrequest($uid)) { $users = $database->loadObjectList(); } if (count($users)==0) { $user = null; } else { $user = $users[0]; } HTML_comprofiler::tabClass( $user, $option ); } function usersList($uid) { global $database,$my,$ueConfig,$_POST,$_REQUEST; $database->setQuery("SELECT listid, title FROM #__comprofiler_lists WHERE published=1 AND useraccessgroupid IN (".implode(',',getChildGIDS(userGID($uid))).") ORDER BY ordering"); $plists = $database->loadObjectList(); //print $database->getQuery(); $lists = array(); $publishedlists = array(); for ($i=0, $n=count( $plists ); $i < $n; $i++) { $plist =& $plists[$i]; $publishedlists[] = mosHTML::makeOption( $plist->listid, getLangDefinition($plist->title) ); } if(!isset($_POST['listid']) && !isset($_REQUEST['listid'])) { $database->setQuery( "SELECT listid FROM #__comprofiler_lists " . "\n WHERE `default`=1 AND published=1" ); $listid = $database->loadresult(); } else { if(isset($_POST['listid'])) $listid = cbGetEscaped($_POST['listid']); else $listid = cbGetEscaped($_REQUEST['listid']); } if(!$listid > 0) { echo _UE_NOLISTFOUND; return; } if (count($plists)>1) { $lists['plists'] = mosHTML::selectList( $publishedlists, 'listid', 'class="inputbox" size="1" onchange="this.form.submit();"', 'value', 'text', $listid ); } else { $lists['plists'] = " "; } $database->setQuery( "SELECT l.* FROM #__comprofiler_lists l" . "\n WHERE l.listid='$listid' AND l.published=1" ); $row = $database->loadObjectList(); if (!allowAccess( $row[0]->useraccessgroupid,'RECURSE', userGID($uid))) { echo _UE_NOT_AUTHORIZED; return; } $col=$row[0]->col1fields; $col=explode('|*|',$col); $lfields=""; for ($i=0, $n=count( $col ); $i < $n; $i++) { if($i==0) $lfields .= "\n"; else $lfields .= "
\n"; if($col[$i]!='' && $col[$i]!=null) { $database->setQuery( "SELECT f.name, f.title, f.type " . "\nFROM #__comprofiler_fields AS f" . "\nWHERE f.published = 1 AND f.fieldid=".$col[$i]); $cfield = $database->loadObjectList(); $cfield = $cfield[0]; if($row[0]->col1captions==1) $oTitle = str_replace("'","\\'",getLangDefinition($cfield->title)).": "; else $oTitle=''; $lfields .= " \".getFieldValue('".$cfield->type."',\$user->".$cfield->name.",\$user,'".$oTitle."').\""; } } $lfields .= "\n"; if($row[0]->col2enabled) { $col=$row[0]->col2fields; $col=explode('|*|',$col); for ($i=0, $n=count( $col ); $i < $n; $i++) { if($i==0) $lfields .= "\n"; else $lfields .= "
\n"; if($col[$i]!='' && $col[$i]!=null) { $database->setQuery( "SELECT f.name, f.title, f.type " . "\nFROM #__comprofiler_fields AS f" . "\nWHERE f.published = 1 AND f.fieldid=".$col[$i]); $cfield = $database->loadObjectList(); $cfield = $cfield[0]; if($row[0]->col2captions==1) $oTitle = str_replace("'","\\'",getLangDefinition($cfield->title)).": "; else $oTitle=''; $lfields .= " \".getFieldValue('".$cfield->type."',\$user->".$cfield->name.",\$user,'".$oTitle."').\""; } } $lfields .= "\n"; } if($row[0]->col3enabled) { $col=$row[0]->col3fields; $col=explode('|*|',$col); for ($i=0, $n=count( $col ); $i < $n; $i++) { if($i==0) $lfields .= "\n"; else $lfields .= "
\n"; $database->setQuery( "SELECT f.name, f.title, f.type " . "\nFROM #__comprofiler_fields AS f" . "\nWHERE f.published = 1 AND f.fieldid=".$col[$i]); $cfield = $database->loadObjectList(); $cfield = $cfield[0]; if($row[0]->col3captions==1) $oTitle = str_replace("'","\\'",getLangDefinition($cfield->title)).": "; else $oTitle=''; $lfields .= " \".getFieldValue('".$cfield->type."',\$user->".$cfield->name.",\$user,'".$oTitle."').\""; } $lfields .= "\n"; } if($row[0]->col4enabled) { $col=$row[0]->col4fields; $col=explode('|*|',$col); for ($i=0, $n=count( $col ); $i < $n; $i++) { if($i==0) $lfields .= "\n"; else $lfields .= "
\n"; if($col[$i]!='' && $col[$i]!=null) { $database->setQuery( "SELECT f.name, f.title, f.type " . "\nFROM #__comprofiler_fields AS f" . "\nWHERE f.published = 1 AND f.fieldid=".$col[$i]); $cfield = $database->loadObjectList(); $cfield = $cfield[0]; if($row[0]->col4captions==1) $oTitle = str_replace("'","\\'",getLangDefinition($cfield->title)).": "; else $oTitle=''; $lfields .= " \".getFieldValue('".$cfield->type."',\$user->".$cfield->name.",\$user,'".$oTitle."').\""; } } $lfields .= "\n"; } $row=$row[0]; HTML_comprofiler::usersList($row,$lfields,$lists,$listid); } function userSave($uid) { global $database,$ueConfig,$_REQUEST,$_POST,$_PLUGINS; $user_id = intval( mosGetParam( $_POST, 'id', 0 )); if ($uid == 0 || $user_id == 0 || $user_id <> $uid) { mosNotAuth(); return; } $row = new mosUser( $database ); $row->load( $user_id ); $row->orig_password = $row->password; if (!$row->bind( $_POST )) { echo "\n"; exit(); } SWITCH ($ueConfig['name_style']) { case 2: $row->name = cbGetUnEscaped(((isset($_POST['firstname'])) ? $_POST['firstname'] : "") . ' ' . ((isset($_POST['lastname'])) ? $_POST['lastname'] : "")); break; case 3: $row->name = cbGetUnEscaped(((isset($_POST['firstname'])) ? $_POST['firstname'] : "") . ' ' . ((isset($_POST['middlename'])) ? ($_POST['middlename'] . ' ') : "") . ((isset($_POST['lastname'])) ? $_POST['lastname'] : "")); break; } mosMakeHtmlSafe($row); if(isset($_POST["password"]) && $_POST["password"] != "") { if(isset($_POST["verifyPass"]) && ($_POST["verifyPass"] == $_POST["password"])) { $row->password = md5($_POST["password"]); } else { echo "\n"; exit(); } } else { // Restore 'original password' $row->password = $row->orig_password; } if (!$row->check()) { echo "\n"; exit(); } unset($row->orig_password); // prevent DB error!! $database->setQuery( "SELECT f.* FROM #__comprofiler_fields f, #__comprofiler_tabs t" . "\n WHERE f.published=1 and f.tabid = t.tabid AND t.enabled=1 and f.readonly=0" ); $rowFields = $database->loadObjectList(); $cbFields=new cbFields(); $rowExtras = new stdClass(); for($i=0, $n=count( $rowFields ); $i < $n; $i++) { $field=cbGetEscaped($rowFields[$i]->name); $value=null; if(isset($_POST[$rowFields[$i]->name])) $value=$cbFields->prepareFieldDataSave($rowFields[$i]->type,$rowFields[$i]->name,$_POST[$rowFields[$i]->name]); $rowExtras->$field=$value; } $rowExtras->id=$user_id; $rowExtras->user_id=$user_id; $rowExtras->lastupdatedate=date('Y-m-d\TH:i:s'); $rowExtras->firstname=cbGetUnEscaped((isset($_POST['firstname']) ? $_POST['firstname'] : "")); $rowExtras->middlename=cbGetUnEscaped((isset($_POST['middlename']) ? $_POST['middlename'] : "")); $rowExtras->lastname=cbGetUnEscaped((isset($_POST['lastname']) ? $_POST['lastname'] : "")); $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeUserUpdate', array(&$row,&$rowExtras)); if($_PLUGINS->is_errors()) { echo "\n"; exit(); } if (!$row->store()) { echo "\n"; exit(); } if($database->updateObject( '#__comprofiler', $rowExtras, 'id')) { echo "\n"; } $tabs = new cbTabs( 0, 1); $tabs->savePluginTabs($row, $rowExtras, $_POST); $_PLUGINS->trigger( 'onAfterUserUpdate', array($row, $rowExtras, true)); if(!isset($_REQUEST['Itemid'])) { $database->setQuery("SELECT id FROM #__menu WHERE link = 'index.php?option=com_comprofiler' AND published=1"); $Itemid = $database->loadResult(); } else { $Itemid = $_REQUEST['Itemid']; } mosRedirect(sefRelToAbs("index.php?option=com_comprofiler&Itemid=".$Itemid."&task=userDetails"), _USER_DETAILS_SAVE); } function mosGetConfig() { $configfile = "administrator/components/com_comprofiler/ue_config.php"; include_once( $configfile ); RETURN $ueConfig; } function lostPassForm( $option ) { HTML_comprofiler::lostPassForm($option); } function sendNewPass( $option ) { global $database, $Itemid; global $ueConfig,$_PLUGINS; // ensure no malicous sql gets past $checkusername = trim( mosGetParam( $_POST, 'checkusername', '') ); $confirmEmail = trim( mosGetParam( $_POST, 'confirmEmail', '') ); $database->setQuery( "SELECT id FROM #__users" . "\nWHERE username='$checkusername' AND email='$confirmEmail'" ); if (!($user_id = $database->loadResult()) || !$checkusername || !$confirmEmail) { mosRedirect(sefRelToAbs("index.php?option=$option&task=lostPassword"),_ERROR_PASS ); } $newpass = makePass(); $message = _NEWPASS_MSG; eval ("\$message = \"$message\";"); $subject = _NEWPASS_SUB; eval ("\$subject = \"$subject\";"); $cbNotification = new cbNotification(); $res=$cbNotification->sendFromSystem($user_id,$subject,$message); if ($res) { $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onNewPassword', array($user_id,$newpass)); $newpass = md5( $newpass ); $sql = "UPDATE #__users SET password='$newpass' WHERE id='".cbGetEscaped($user_id)."'"; $database->setQuery( $sql ); if (!$database->query()) { die("SQL error" . $database->stderr(true)); } mosRedirect(sefRelToAbs("index.php?Itemid=".$Itemid),_NEWPASS_SENT ); } else { mosRedirect(sefRelToAbs("index.php?Itemid=".$Itemid),_UE_NEWPASS_FAILED ); } } function makePass(){ $makepass=""; $salt = "abchefghjkmnpqrstuvwxyz0123456789"; srand((double)microtime()*1000000); $i = 0; while ($i <= 7) { $num = rand() % 33; $tmp = substr($salt, $num, 1); $makepass = $makepass . $tmp; $i++; } return ($makepass); } function registerForm( $option, $emailpass,$regErrorMSG=null ) { global $mosConfig_allowUserRegistration, $database, $my,$_POST; if ($mosConfig_allowUserRegistration == "0") { mosNotAuth(); return; } $database->setQuery( "SELECT f.* FROM #__comprofiler_fields f, #__comprofiler_tabs t" . "\n WHERE t.tabid = f.tabid AND f.published=1 AND f.registration=1 AND t.enabled=1" . "\n ORDER BY t.ordering, f.ordering" ); $rowFields = $database->loadObjectList(); $rowFieldValues=array(); for ($i=0, $n=count( $rowFields ); $i < $n; $i++) { $k=""; if ($regErrorMSG!==null && (isset($_POST[$rowFields[$i]->name]) || ($rowFields[$i]->type=='webaddress' && $rowFields[$i]->rows==2 && isset($_POST[$rowFields[$i]->name."Text"])))) { if (is_array($_POST[$rowFields[$i]->name])) $k = implode("|*|",$_POST[$rowFields[$i]->name]); else $k=$_POST[$rowFields[$i]->name]; $k=htmlentities($k); } elseif ($regErrorMSG===null) { $_POST[$rowFields[$i]->name] = $rowFields[$i]->default; } $database->setQuery( "SELECT fieldtitle FROM #__comprofiler_field_values" . "\n WHERE fieldid = ".$rowFields[$i]->fieldid . "\n ORDER BY ordering" ); $Values = $database->loadObjectList(); $multi=""; if($rowFields[$i]->type=='multiselect') $multi="multiple='multiple'"; if(count($Values) > 0) { if($rowFields[$i]->type=='radio') { $rowFieldValues['lst_'.$rowFields[$i]->name] = moscomprofilerHTML::radioListTable( $Values, $rowFields[$i]->name, 'class="inputbox" size="1" mosReq="'.$rowFields[$i]->required.'" mosLabel="'.getLangDefinition($rowFields[$i]->title).'"', 'fieldtitle', 'fieldtitle', $k, $rowFields[$i]->cols, $rowFields[$i]->rows, $rowFields[$i]->size, $rowFields[$i]->required); } else { $ks=explode("|*|",$k); $k = array(); foreach($ks as $kv) { $k[]->fieldtitle=$kv; } if($rowFields[$i]->type=='multicheckbox') { $rowFieldValues['lst_'.$rowFields[$i]->name] = moscomprofilerHTML::checkboxListTable( $Values, $rowFields[$i]->name."[]", 'class="inputbox" size="'.$rowFields[$i]->size.'" '.$multi.' mosLabel="'.getLangDefinition($rowFields[$i]->title).'"', 'fieldtitle', 'fieldtitle', $k, $rowFields[$i]->cols, $rowFields[$i]->rows, $rowFields[$i]->size, $rowFields[$i]->required); } else { $rowFieldValues['lst_'.$rowFields[$i]->name] = moscomprofilerHTML::selectList( $Values, $rowFields[$i]->name."[]", 'class="inputbox" size="'.$rowFields[$i]->size.'" '.$multi.' mosReq="'.$rowFields[$i]->required.'" mosLabel="'.getLangDefinition($rowFields[$i]->title).'"', 'fieldtitle', 'fieldtitle', $k); } } } } if ($regErrorMSG===null) { $regErrorMSG = ""; // So that default values are displayed $_POST['firstname'] = ""; $_POST['middlename'] = ""; $_POST['lastname'] = ""; $_POST['name'] = ""; $_POST['username'] = ""; $_POST['email'] = ""; } HTML_comprofiler::registerForm($option, $emailpass, $rowFields, $rowFieldValues,$regErrorMSG); } function saveRegistration( $option ) { global $database, $my, $acl,$ueConfig,$_POST; global $mosConfig_emailpass, $mosConfig_allowUserRegistration,$_PLUGINS; if ($mosConfig_allowUserRegistration=="0") { mosNotAuth(); return; } $database->setQuery("SELECT id FROM #__users WHERE email = '".cbGetEscaped( $_POST['email'] )."' AND username='0'"); $uid = $database->loadResult(); if($uid >0 ) $_POST['id'] = $uid; $row = new mosUser( $database ); if (!$row->bind( $_POST )) { echo "\n"; registerForm( $option, $mosConfig_emailpass,$row->getError() ); return; } SWITCH ($ueConfig['name_style']) { case 2: $row->name = $_POST['firstname'] . ' ' . $_POST['lastname']; break; case 3: if(isset($_POST['middlename'])) $row->name = $_POST['firstname'] . ' ' . $_POST['middlename']. ' ' . $_POST['lastname']; else $row->name = $_POST['firstname']. ' ' . $_POST['lastname']; break; } mosMakeHtmlSafe($row); $pwd = ''; $row->gid = $acl->get_group_id('Registered','ARO'); if (!$row->password) { $pwd = makePass(); $row->password = md5( $pwd ); // $includePWD=1; } else { $pwd = $row->password; $row->password = md5( $row->password ); // $includePWD=0; } $row->registerDate = date("Y-m-d\TH:i:s"); if (!$row->check()) { echo "\n"; registerForm( $option, $mosConfig_emailpass,$row->getError() ); return; } if ($ueConfig['reg_admin_approval']=="0") { $approved="1"; } else { $approved="0"; } if ($ueConfig['reg_confirmation']=="0") { $confirmed="1"; } else { $confirmed="0"; } if(ISSET($_POST['acceptedterms'])) $acceptedterms=cbGetUnEscaped($_POST['acceptedterms']); else $acceptedterms=null; $database->setQuery( "SELECT f.* FROM #__comprofiler_fields f, #__comprofiler_tabs t" . "\n WHERE f.published=1 and f.tabid = t.tabid and f.registration=1 and t.enabled=1" ); $rowFields = $database->loadObjectList(); $cbFields=new cbFields(); $rowExtras = new stdClass(); for($i=0, $n=count( $rowFields ); $i < $n; $i++) { $field=cbGetEscaped($rowFields[$i]->name); $value=null; if(isset($_POST[$rowFields[$i]->name])) $value=$cbFields->prepareFieldDataSave($rowFields[$i]->type,$rowFields[$i]->name,$_POST[$rowFields[$i]->name]); $rowExtras->$field=$value; } $rowExtras->id=null; $rowExtras->user_id=null; $rowExtras->firstname=cbGetUnEscaped((isset($_POST['firstname']) ? $_POST['firstname'] : "")); $rowExtras->middlename=cbGetUnEscaped((isset($_POST['middlename']) ? $_POST['middlename'] : "")); $rowExtras->lastname=cbGetUnEscaped((isset($_POST['lastname']) ? $_POST['lastname'] : "")); $rowExtras->acceptedterms=$acceptedterms; $rowExtras->approved=$approved; $rowExtras->confirmed=$confirmed; $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeUserRegistration', array(&$row,&$rowExtras)); if($_PLUGINS->is_errors()) { echo "\n"; registerForm( $option, $mosConfig_emailpass,$_PLUGINS->getErrorMSG("
") ); return; } if (!$row->store()) { echo "\n"; registerForm( $option, $mosConfig_emailpass,$row->getError() ); return; } $database->setQuery("SELECT id FROM #__users WHERE username = '".cbGetEscaped( $_POST['username'] )."'"); $uid = $database->loadResult(); $row->id=$uid; $rowExtras->id=$uid; $rowExtras->user_id=$uid; if(!$database->insertObject( '#__comprofiler', $rowExtras)) { echo "store error:".htmlentities($database->stderr(true))."\n"; exit(); } $tabs = new cbTabs( 0, 1); $results_save_tabs = $tabs->saveRegistrationPluginTabs($row, $_POST); $_PLUGINS->trigger( 'onAfterUserRegistration', array($row, $rowExtras, true)); if($mosConfig_emailpass == "1") $row->password =$pwd ; $query = "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id =" . $uid; $database->setQuery($query); $user = $database->loadObjectList(); $cbNotification = new cbNotification(); $modSub=null; $modMSG=null; if($confirmed==0) { $cbNotification->sendFromSystem($user[0],getLangDefinition($ueConfig['reg_pend_appr_sub']),getLangDefinition($ueConfig['reg_pend_appr_msg'])); } elseif($approved==0 && $confirmed==1) { $cbNotification->sendFromSystem($user[0],getLangDefinition($ueConfig['reg_pend_appr_sub']),getLangDefinition($ueConfig['reg_pend_appr_msg'])); $modSub=_UE_REG_ADMIN_PA_SUB; $modMSG=_UE_REG_ADMIN_PA_MSG; } else { $cbNotification->sendFromSystem($user[0],getLangDefinition($ueConfig['reg_welcome_sub']),getLangDefinition($ueConfig['reg_welcome_msg'])); $modSub=_UE_REG_ADMIN_SUB; $modMSG=_UE_REG_ADMIN_MSG; $_PLUGINS->trigger( 'onUserActive', array($user[0],true)); } if($modSub!=null) { if($ueConfig['moderatorEmail']) { $cbNotification->sendToModerators($modSub,$cbNotification->_replaceVariables($modMSG,$user[0])); } } if ($mosConfig_emailpass == "1" && $ueConfig['reg_admin_approval']=="1" && $ueConfig['reg_confirmation']=="0"){ echo _UE_REG_COMPLETE_NOPASS_NOAPPR; } elseif ($mosConfig_emailpass == "1" && $ueConfig['reg_admin_approval']=="1" && $ueConfig['reg_confirmation']=="1") { echo _UE_REG_COMPLETE_NOPASS_NOAPPR_CONF; } elseif ($mosConfig_emailpass == "1" && $ueConfig['reg_admin_approval']=="0" && $ueConfig['reg_confirmation']=="0") { echo _UE_REG_COMPLETE_NOPASS; } elseif ($mosConfig_emailpass == "1" && $ueConfig['reg_admin_approval']=="0" && $ueConfig['reg_confirmation']=="1") { echo _UE_REG_COMPLETE_NOPASS_CONF; } elseif ($mosConfig_emailpass == "0" && $ueConfig['reg_admin_approval']=="1" && $ueConfig['reg_confirmation']=="0") { echo _UE_REG_COMPLETE_NOAPPR; } elseif ($mosConfig_emailpass == "0" && $ueConfig['reg_admin_approval']=="1" && $ueConfig['reg_confirmation']=="1") { echo _UE_REG_COMPLETE_NOAPPR_CONF; } elseif ($mosConfig_emailpass == "0" && $ueConfig['reg_admin_approval']=="0" && $ueConfig['reg_confirmation']=="1") { echo _UE_REG_COMPLETE_CONF; } else { echo _UE_REG_COMPLETE; } foreach ($results_save_tabs as $res) { if ($res) echo "
".$res; } } function login( $username=null,$passwd=null ) { global $acl,$database,$_COOKIE,$_POST,$mainframe, $ueConfig,$mainframe,$_PLUGINS; // $usercookie = mosGetParam( $_COOKIE, 'usercookie', '' ); // $sessioncookie = mosGetParam( $_COOKIE, 'sessioncookie', '' ); if (!$username || !$passwd) { $username = trim( mosGetParam( $_POST, 'username', '' ) ); $passwd2 = trim( mosGetParam( $_POST, 'passwd', '' ) ); $passwd = md5( $passwd2 ); } $return = trim( mosGetParam( $_POST, 'return', null ) ); $message = trim( mosGetParam( $_POST, 'message', 0 ) ); // $remember = trim( mosGetParam( $_POST, 'remember', '' ) ); // $lang = trim( mosGetParam( $_POST, 'lang', '' ) ); if (!$username || !$passwd) { echo "\n"; exit(); } else { $database->setQuery( "SELECT * " . "\nFROM #__users u, " . "\n#__comprofiler ue" . "\nWHERE u.username='".$username."' AND u.password='".$passwd."' AND u.id = ue.id" ); $row = null; if ($database->loadObject( $row )) { if ($row->block == 1) { echo "\n"; exit(); } else if ($row->approved == 2){ echo "\n"; exit(); } else if ($row->approved == 0){ echo "\n"; exit(); } else if ($row->confirmed != 1){ $cbNotification = new cbNotification(); $cbNotification->sendFromSystem($row->id,getLangDefinition($ueConfig['reg_pend_appr_sub']),getLangDefinition($ueConfig['reg_pend_appr_msg'])); //createEmail($row,'pending',$ueConfig); echo "\n"; exit(); } else if ($row->lastvisitDate == '0000-00-00 00:00:00') { if (isset($ueConfig['reg_first_visit_url']) and ($ueConfig['reg_first_visit_url'] != "")) { $return = sefRelToAbs($ueConfig['reg_first_visit_url']); } } } else { echo "\n"; exit(); } $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeLogin', array($username, $passwd2)); //print_r($results); if($_PLUGINS->is_errors()) { echo "\n"; exit(); } $mainframe->login($username,$passwd); $_PLUGINS->trigger( 'onAfterLogin', array($row, true)); // JS Popup message if ( $message ) { ?> setQuery( "SELECT * " . "\nFROM #__users u, " . "\n#__comprofiler ue" . "\nWHERE u.id=".$my->id." AND u.id = ue.id" ); $row = null; $database->loadObject( $row ); $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeLogout', array($row)); if($_PLUGINS->is_errors()) { echo "\n"; exit(); } $mainframe->logout(); $_PLUGINS->trigger( 'onAfterLogout', array($row, true)); // JS Popup message if ( $message ) { ?> id < 1) { $query = "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND md5(c.id) = '" . cbGetEscaped($confirmcode) . "'"; $database->setQuery($query); $user = $database->loadObjectList(); if ($user === null) { mosNotAuth(); return; } $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeUserConfirm', array($user[0])); if($_PLUGINS->is_errors()) { echo $_PLUGINS->getErrorMSG("
"); exit(); } $query = "UPDATE #__comprofiler SET confirmed = 1 WHERE md5(id) = '" . cbGetEscaped($confirmcode) . "'"; $database->setQuery($query); $database->query(); if(mysql_affected_rows() == 0) { if ($user == null) { echo _UE_USER_NOTCONFIRMED . "
"; } else { if ($user[0]->approved == 0) echo _UE_USER_CONFIRMED_NEEDAPPR . "
"; else echo _UE_USER_CONFIRMED . "
"; } } else { $_PLUGINS->trigger( 'onAfterUserConfirm', array($user[0],true)); $cbNotification = new cbNotification(); if($user[0]->approved == 0) { if($ueConfig['moderatorEmail']==1) { $cbNotification->sendToModerators(_UE_REG_ADMIN_PA_SUB,$cbNotification->_replaceVariables(_UE_REG_ADMIN_PA_MSG,$user[0])); } echo _UE_USER_CONFIRMED_NEEDAPPR . "
"; } else { if($ueConfig['moderatorEmail']==1) { $cbNotification->sendToModerators(_UE_REG_ADMIN_SUB,$cbNotification->_replaceVariables(_UE_REG_ADMIN_MSG,$user[0])); } $_PLUGINS->trigger( 'onUserActive', array($user[0],true)); $cbNotification->sendFromSystem($user[0],getLangDefinition($ueConfig['reg_welcome_sub']),getLangDefinition($ueConfig['reg_welcome_msg'])); echo _UE_USER_CONFIRMED . "
"; } //$tabs = new cbTabs( 0, 1); //$tabs->confirmRegistrationPluginTabs($user[0]); } } else { if(!isset($_REQUEST['Itemid'])) { $database->setQuery("SELECT id FROM #__menu WHERE link = 'index.php?option=com_comprofiler' AND published=1"); $Itemid = $database->loadResult(); } else { $Itemid = $_REQUEST['Itemid']; } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&Itemid='.$Itemid)); } } function approveImage(){ global $database,$_POST,$_REQUEST,$mosConfig_absolute_path,$my,$ueConfig; $isModerator=isModerator($my->id); if (!$isModerator) { mosNotAuth(); return; } $avatars=array(); if(isset($_POST['avatar'])) $avatars=$_POST['avatar']; else $avatars[] = $_REQUEST['avatars']; if(isset($_POST['act'])) $act=$_POST['act']; else $act = $_REQUEST['flag']; $cbNotification = new cbNotification(); if($act=='1') { foreach ($avatars AS $avatar) { $query = "UPDATE #__comprofiler SET avatarapproved = 1, lastupdatedate='".date('Y-m-d\TH:i:s')."' WHERE id = '" . cbGetEscaped($avatar) . "'"; $database->setQuery($query); $database->query(); $cbNotification->sendFromSystem($avatar,_UE_IMAGEAPPROVED_SUB,_UE_IMAGEAPPROVED_MSG); //createEmail($row,'imageApproved',$ueConfig); } } else { foreach ($avatars AS $avatar) { $query = "SELECT avatar FROM #__comprofiler WHERE id = '" . cbGetEscaped($avatar) . "'"; $database->setQuery($query); $file = $database->loadResult(); if(eregi("gallery/",$file)==false && is_file($mosConfig_absolute_path."/images/comprofiler/".$file)) { unlink($mosConfig_absolute_path."/images/comprofiler/".$file); if(is_file($mosConfig_absolute_path."/images/comprofiler/tn".$file)) unlink($mosConfig_absolute_path."/images/comprofiler/tn".$file); } $query = "UPDATE #__comprofiler SET avatarapproved = 1, avatar=null WHERE id = '" . cbGetEscaped($avatar) . "'"; $database->setQuery($query); $database->query(); $cbNotification->sendFromSystem($avatar,_UE_IMAGEREJECTED_SUB,_UE_IMAGEREJECTED_MSG); //createEmail($row,'imageRejected',$ueConfig); } } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=moderateImages'),_UE_USERIMAGEMODERATED_SUCCESSFUL); } function isModerator($oID){ global $ueConfig; if(in_array(userGID($oID), getParentGIDS($ueConfig['imageApproverGid']))) return true; else return false; } function userGID($oID){ global $database,$ueConfig; if($oID > 0) { $query = "SELECT gid FROM #__users WHERE id = '".$oID."'"; $database->setQuery($query); $gid = $database->loadResult(); return $gid; } else return 0; } function reportUser($option,$form=1,$uid=0) { global $database,$ueConfig,$_POST; if($ueConfig['allowUserReports']==0) { echo _UE_FUNCTIONALITY_DISABLED; exit(); } if($form==1) { HTML_comprofiler::reportUserForm($option,$uid); } else { $row = new moscomprofilerUserReport( $database ); if (!$row->bind( $_POST )) { echo "\n"; exit(); } mosMakeHtmlSafe($row); $row->reportedondate = date("Y-m-d\TH:i:s"); if (!$row->check()) { echo "\n"; exit(); } if (!$row->store()) { echo "\n"; exit(); } if($ueConfig['moderatorEmail']==1) { $cbNotification = new cbNotification(); $cbNotification->sendToModerators(_UE_USERREPORT_SUB,_UE_USERREPORT_MSG); } echo _UE_USERREPORT_SUCCESSFUL; } } function banUser($option,$uid,$form=1,$act=1) { global $database,$ueConfig,$_POST,$my; $isModerator=isModerator($my->id); if($ueConfig['allowUserBanning']==0) { echo _UE_FUNCTIONALITY_DISABLED; exit(); } if($form==1) { $database->setQuery("SELECT bannedreason FROM #__comprofiler WHERE id = '$uid'"); $orgbannedreason=$database->loadresult(); HTML_comprofiler::banUserForm($option,$uid,$act,$orgbannedreason); } else { $cbNotification=new cbNotification(); if($act==1) { if (!$isModerator){ mosNotAuth(); return; } $sql="UPDATE #__comprofiler SET banned='1', bannedby='".cbGetEscaped($_POST['bannedby'])."', banneddate='".date('Y-m-d\TH:i:s')."', bannedreason='".cbGetEscaped(htmlspecialchars("["._UE_MODERATORBANRESPONSE."]"))."\n".cbGetEscaped($_POST['bannedreason'])."' WHERE id='$uid'"; $database->SetQuery($sql); $database->query(); $cbNotification->sendFromSystem($uid,_UE_BANUSER_SUB,_UE_BANUSER_MSG); //createEmail($row,'banUser',$ueConfig); echo _UE_USERBAN_SUCCESSFUL; } elseif($act==0) { if (!$isModerator){ mosNotAuth(); return; } $sql="UPDATE #__comprofiler SET banned='0', bannedby=null, banneddate=null, bannedreason=null WHERE id='".cbGetEscaped($uid)."'"; $database->SetQuery($sql); $database->query(); //createEmail($row,'unbanUser',$ueConfig); $cbNotification->sendFromSystem($uid,_UE_UNBANUSER_SUB,_UE_UNBANUSER_MSG); echo _UE_USERUNBAN_SUCCESSFUL; }elseif($act==2) { if ($my->id!=$uid){ mosNotAuth(); return; } $bannedreason = "".htmlspecialchars("["._UE_USERBANRESPONSE."]")."\n".$_POST['bannedreason']."\n".$_POST['orgbannedreason']; $sql="UPDATE #__comprofiler SET banned='2', bannedreason='".cbGetEscaped($bannedreason)."' WHERE id='".cbGetEscaped($uid)."'"; $database->SetQuery($sql); $database->query(); if($ueConfig['moderatorEmail']==1) { $cbNotification->sendToModerators(_UE_UNBANUSERREQUEST_SUB,_UE_UNBANUSERREQUEST_MSG); //createEmail($row,'unbanAdmin',$ueConfig,$rowAdmin); } echo _UE_USERUNBANREQUEST_SUCCESSFUL; } } } function processReports(){ global $database,$_POST,$mosConfig_absolute_path,$my; $isModerator=isModerator($my->id); if (!$isModerator) { mosNotAuth(); return; } $reports=array(); $reports=$_POST['reports']; foreach ($reports AS $report) { $query = "UPDATE #__comprofiler_userreports SET reportedstatus = 1 WHERE reportid = '" . cbGetEscaped($report) . "'"; $database->setQuery($query); $database->query(); } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=moderateReports'),_UE_USERREPORTMODERATED_SUCCESSFUL); } function moderator(){ global $database,$_POST,$mosConfig_absolute_path,$my; $isModerator=isModerator($my->id); if (!$isModerator) { mosNotAuth(); return; } $query = "SELECT count(*) FROM #__comprofiler WHERE avatarapproved=0"; if(!$database->setQuery($query)) print $database->getErrorMsg(); $totalimages = $database->loadResult(); $query = "SELECT count(*) FROM #__comprofiler_userreports WHERE reportedstatus=0 "; if(!$database->setQuery($query)) print $database->getErrorMsg(); $totaluserreports = $database->loadResult(); $query = "SELECT count(*) FROM #__comprofiler WHERE banned=2"; if(!$database->setQuery($query)) print $database->getErrorMsg(); $totalunban = $database->loadResult(); if($totalunban > 0 || $totaluserreports > 0 || $totalimages > 0) { if($totalunban > 0) echo "
".$totalunban._UE_UNBANREQUIREACTION."
"; if($totaluserreports > 0) echo "
".$totaluserreports._UE_USERREPORTSREQUIREACTION."
"; if($totalimages > 0) echo "
".$totalimages._UE_IMAGESREQUIREACTION."
"; } else { echo _UE_NOACTIONREQUIRED; } } function approveUser($uids) { global $database,$ueConfig,$_POST,$my,$mosConfig_emailpass,$_PLUGINS; $isModerator=isModerator($my->id); if($ueConfig['allowModUserApproval']==0) { echo _UE_FUNCTIONALITY_DISABLED; exit(); } if (!$isModerator){ mosNotAuth(); return; } //$tabs = new cbTabs( 0, 1); foreach($uids AS $uid) { $query = "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id = ".$uid; $database->setQuery($query); $user = $database->loadObjectList(); $row = $user[0]; if($mosConfig_emailpass == "1") { $pwd = makePass(); $row->password = $pwd; $pwd=", password='".md5($pwd)."' "; } $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeUserApproval', array($row,true)); if($_PLUGINS->is_errors()) { echo "\n"; exit(); } $sql="UPDATE #__comprofiler SET approved='1'".$pwd." WHERE id='".cbGetEscaped($uid)."'"; $database->SetQuery($sql); $database->query(); $_PLUGINS->trigger( 'onAfterUserApproval', array($row,true,true)); $cbNotification = new cbNotification(); $cbNotification->sendFromSystem($row,getLangDefinition($ueConfig['reg_welcome_sub']),getLangDefinition($ueConfig['reg_welcome_msg'])); //createEmail($row,'welcome',$ueConfig,null,$mosConfig_emailpass); } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=pendingApprovalUser'),(count($uids))?count($uids)." "._UE_USERAPPROVAL_SUCCESSFUL:""); } function rejectUser(&$uids) { global $database,$ueConfig,$_POST,$my,$mosConfig_emailpass,$_PLUGINS,$mosConfig_sitename; $isModerator=isModerator($my->id); if($ueConfig['allowModUserApproval']==0) { echo _UE_FUNCTIONALITY_DISABLED; exit(); } if (!$isModerator){ mosNotAuth(); return; } $cbNotification= new cbNotification(); foreach($uids AS $uid) { $query = "SELECT * FROM #__comprofiler c, #__users u WHERE c.id=u.id AND c.id = ".$uid; $database->setQuery($query); $user = $database->loadObjectList(); $row = $user[0]; $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger( 'onBeforeUserApproval', array($row,false)); if($_PLUGINS->is_errors()) { echo "\n"; exit(); } $sql="UPDATE #__comprofiler SET approved='2'WHERE id='".cbGetEscaped($uid)."'"; $database->SetQuery($sql); $database->query(); $_PLUGINS->trigger( 'onAfterUserApproval', array($row,false,true)); $cbNotification->sendFromSystem(cbGetEscaped($uid),_UE_USERREJECT_SUB,sprintf(_UE_USERREJECT_MSG,$mosConfig_sitename,$_POST['comment'.$uid])); //createEmail($row,'rejectUser',$ueConfig,$_POST['comment'.$uid],$mosConfig_emailpass); } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=pendingApprovalUser'),(count($uids))?count($uids)." "._UE_USERREJECT_SUCCESSFUL:""); } function pendingApprovalUsers($option) { global $database,$ueConfig,$_POST,$my,$mosConfig_emailpass; $isModerator=isModerator($my->id); if($ueConfig['allowModUserApproval']==0) { echo _UE_FUNCTIONALITY_DISABLED; exit(); } if (!$isModerator){ mosNotAuth(); return; } $database->setQuery( "SELECT u.id, u.name, u.username, u.email, u.registerDate " ."\n FROM #__users u, #__comprofiler c " ."\n WHERE u.id=c.id AND c.approved=0 AND c.confirmed=1" ); $rows = $database->loadObjectList(); HTML_comprofiler::pendingApprovalUsers($option, $rows); } //Connections function addConnection($userid,$connectionid,$umsg=null) { global $database,$ueConfig,$my; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($userid); $cbCon->addConnection($connectionid,stripcslashes($umsg)); $url=sefRelToAbs("index.php?option=com_comprofiler&task=userProfile&user=".$connectionid."&tab=1"); echo "\n"; } function removeConnection($userid,$connectionid) { global $database,$ueConfig,$my; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($userid); if(!$cbCon->removeConnection($userid,$connectionid)) $msg=$cbCon->getErrorMSG(); else $msg = $cbCon->getUserMSG(); // $url=sefRelToAbs("index.php?option=com_comprofiler&task=manageConnections"); $url=sefRelToAbs("index.php?option=com_comprofiler&task=userProfile&user=".$connectionid."&tab=1"); echo "\n"; } function denyConnection($userid,$connectionid) { global $database,$ueConfig,$my; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($userid); $cbCon->denyConnection($userid,$connectionid); echo "\n"; } function acceptConnection($userid,$connectionid) { global $database,$ueConfig,$my; if(!$ueConfig['allowConnections']) { // do not test, needed if rules changed! || !$ueConfig['useMutualConnections'] echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($userid); $cbCon->acceptConnection($userid,$connectionid); echo "\n"; } function manageConnections($userid) { global $database,$ueConfig,$my; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if ($my->id!=$userid || $my->id==0) { mosNotAuth(); return; } $cbCon=new cbConnection($userid); $connections=$cbCon->getActiveConnections($userid); $actions = $cbCon->getPendingConnections($userid); $connecteds = $cbCon->getConnectedToMe($userid); HTML_comprofiler::manageConnections($connections,$actions,$connecteds); } function saveConnections($connectionids) { global $database,$ueConfig,$my,$_POST; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($my->id); foreach($connectionids AS $cid) { $cbCon->saveConnection($cid,$_POST[$cid.'description'],implode("|*|",$_POST[$cid.'connectiontype'])); } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=manageConnections&tab=1'),_UE_CONNECTIONSUPDATEDSUCCESSFULL); } function processConnectionActions($connectionids) { global $database,$ueConfig,$my,$_POST; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if (!$my->id > 0) { mosNotAuth(); return; } $cbCon=new cbConnection($my->id); foreach($connectionids AS $cid) { if($_POST[$cid."action"]=='d') { $cbCon->denyConnection($my->id,$cid); } else { $cbCon->acceptConnection($my->id,$cid); } } mosRedirect(sefRelToAbs('index.php?option=com_comprofiler&task=manageConnections'),_UE_CONNECTIONACTIONSSUCCESSFULL); return; } function getConnectionTypes($types) { $typelist=null; $types=explode("|*|",$types); foreach($types AS $type) { if($typelist==null) $typelist = getLangDefinition($type); else $typelist .= ", ".getLangDefinition($type); } return $typelist; } ?>