* @version $id SVN * @access public * @license http://opensource.org/licenses/gpl-3.0.html */ include_once(themePath('../user/'.SQL.'.inc.php')); if(!function_exists('DisplayInfoUser')) { function DisplayInfoUser($user_id) { $data=$GLOBALS['sql_object'] -> DBSelect(SQL_getAllUserInfo($user_id)); $content = ''; if(count($data)!=1) return false; else { // Récupération infos groupes de travail include_once('../class/class.user.php'); $user_object= new user; $r=$user_object->GetUserWorkshops($user_id, $GLOBALS['sql_object']); $default_wg= array(); foreach($r as $value) { array_push($default_wg, $value['jwu_workshop_id']); } $user_workgroups = ''; if(!empty($default_wg)) { $q=SQL_Get_WorkshopsDenomination($default_wg); $workgroups=$GLOBALS['sql_object']->DBSelect($q); $user_workgroups .= ''; } else $user_workgroups .= _t('divers', 'none'); // formattage des données $user_login=formatText($data[0]['user_login'], '2HTML'); $user_public_email=$data[0]['profile_email_display']; $user_email=$data[0]['profile_email']; $user_email=formatText(''.$user_email.'', '2HTML'); $user_groupe=formatText($data[0]['catus_name'], '2HTML'); $user_profile_firstname=formatText(empty_nc($data[0]['profile_firstname']), '2HTML'); $user_profile_lastname=formatText(empty_nc($data[0]['profile_lastname']), '2HTML'); $user_profile_city=formatText(empty_nc($data[0]['profile_city']), '2HTML'); $user_profile_birthdate=formatText(empty_nc($data[0]['profile_birthdate']), '2HTML'); $user_profile_leisures=formatText(empty_nc($data[0]['profile_leisures']), '2HTML'); $user_profile_job=formatText(empty_nc($data[0]['profile_job']), '2HTML'); $user_profile_quotation=formatText(empty_nc($data[0]['profile_quotation']), '2HTML'); $user_profile_signature=formatText(empty_nc($data[0]['profile_signature']), '2HTML'); if(!empty($data[0]['profile_avatar'])) { list($complete_uri)=GetAllPhotoUri('../'.$data[0]['profile_avatar']); $user_profile_avatar=''._t('user','avatar').' '.$user_login.''; } else $user_profile_avatar=_t('divers','none'); $profile_last_modify_display=$data[0]['profile_last_modify_display']; $profile_date_crea_display=$data[0]['profile_date_crea_display']; $content.='

'._t('user','profile').' '.$user_login.'

'.END_LINE; $content.='
'; $content.=_t('user','h1_public_comment'); $content.='
'; $content.=GetLinkModifyUserInfo($user_id); $content.='
'.END_LINE; $content.='
'.END_LINE; $content.='
'._t('user','type').'
'.END_LINE; $content.='
'.$user_groupe.'
'.END_LINE; $content.='
'. ucfirst(_t('user','email')). '
'.END_LINE; if($user_public_email=='Y') $content.='
'.$user_email.'
'.END_LINE; else $content.='
'._t('statut','draftpdf').'
'.END_LINE; $content.='
'.ucfirst(_t('user','first_name')).'
'.END_LINE; $content.='
'. $user_profile_firstname.'
'.END_LINE; $content.='
'.ucfirst(_t('user','last_name')).'
'.END_LINE; $content.='
'. $user_profile_lastname.'
'.END_LINE; $content.='
'._t('user','birthdate').'
'.END_LINE; $content.='
'. $user_profile_birthdate.'
'.END_LINE; $content.='
'._t('user','city').'
'.END_LINE; $content.='
'. $user_profile_city.'
'.END_LINE; $content.='
'._t('user','leisures').'
'.END_LINE; $content.='
'. $user_profile_leisures.'
'.END_LINE; $content.='
'._t('user','job').'
'.END_LINE; $content.='
'. $user_profile_job.'
'.END_LINE; $content.='
'._t('user','avatar').'
'.END_LINE; $content.='
'. $user_profile_avatar.'
'.END_LINE; $content.='
'._t('user','quotation').'
'.END_LINE; $content.='
'. $user_profile_quotation.'
'.END_LINE; $content.='
'._t('user','signature').'
'.END_LINE; $content.='
'. $user_profile_signature.'
'.END_LINE; $content.='
'._t('groups','his').'
'.END_LINE; $content.='
'. $user_workgroups.'
'.END_LINE; $content.='
'.ucfirst(_t('divers','last_modify')).'
'.END_LINE; $content.='
'. $profile_last_modify_display.'
'.END_LINE; $content.='
'.ucfirst(_t('divers','date_crea')).'
'.END_LINE; $content.='
'. $profile_date_crea_display.'
'.END_LINE; $content.='
'.END_LINE; $content.='
'.END_LINE; } echo $content; } } if(!function_exists('DisplayFormProfileUser')) { function DisplayFormProfileUser($user_id, $submitted=-1) { $data=$GLOBALS['sql_object'] -> DBSelect(SQL_getAllUserInfo($user_id)); $content = ''; $mask_display_mail_1=''; $mask_display_mail_2=''; // en modification simple if($submitted==-1) { if(count($data)!=1) return false; else { // formattage des données $form_login=formatText($data[0]['user_login'], '2FIELD'); $form_public_email=$data[0]['profile_email_display']; $form_email=formatText($data[0]['profile_email'], '2FIELD'); $current_email=formatText($data[0]['profile_email'], '2FIELD'); $form_groupe=formatText($data[0]['catus_name'], '2FIELD'); $current_avatar=$data[0]['profile_avatar']; if($form_public_email=='Y') $mask_display_mail_1=' checked="checked"'; else $mask_display_mail_2=' checked="checked"'; $form_profile_firstname=formatText($data[0]['profile_firstname'], '2FIELD'); $form_profile_lastname=formatText($data[0]['profile_lastname'], '2FIELD'); $form_profile_city=formatText($data[0]['profile_city'], '2FIELD'); $form_profile_birthdate = isNullDate($data[0]['profile_birthdate']) ? '--' : formatDate($data[0]['profile_birthdate'], true); list($form_date_y, $form_date_m, $form_date_d)=explode('-', $form_profile_birthdate); $form_profile_leisures=formatText($data[0]['profile_leisures'], '2FIELD'); $form_profile_job=formatText($data[0]['profile_job'], '2FIELD'); $form_profile_quotation=formatText($data[0]['profile_quotation'], '2FIELD'); $form_profile_signature=formatText($data[0]['profile_signature'], '2FIELD'); if(!empty($data[0]['profile_avatar'])) { list($complete_uri)=GetAllPhotoUri('../'.$data[0]['profile_avatar']); $user_profile_avatar=''._t('user','avatar').' '.$_COOKIE['linea21']['login'].''; } else $user_profile_avatar=_t('divers','none'); $profile_last_modify_display=$data[0]['profile_last_modify_display']; $profile_date_crea_display=$data[0]['profile_date_crea_display']; } // un submit à déjà été fait, on affiche les infos entrées par l'utilisateur } else { $form_email=$_REQUEST['email']; $current_email=$_REQUEST['current_email']; $current_avatar=base64_decode($_REQUEST['current_avatar']); if(!empty($current_avatar)) { list($complete_uri)=GetAllPhotoUri('../'.$current_avatar); $user_profile_avatar=''._t('user','avatar').' '.$_COOKIE['linea21']['login'].''; } else $user_profile_avatar=_t('divers','none'); if($_REQUEST['email_display']=='Y') $mask_display_mail_1=' checked="checked"'; else $mask_display_mail_2=' checked="checked"'; $form_profile_firstname=$_REQUEST['firstname']; $form_profile_lastname=$_REQUEST['lastname']; $form_date_d=$_REQUEST['date_d']; $form_date_m=$_REQUEST['date_m']; $form_date_y=$_REQUEST['date_y']; $form_profile_city=$_REQUEST['city']; $form_profile_leisures=$_REQUEST['leisures']; $form_profile_job=$_REQUEST['job']; $form_profile_quotation=$_REQUEST['quotation']; $form_profile_signature=$_REQUEST['signature']; } $content.='
'.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''._t('divers','yes').''.END_LINE; $content.=''._t('divers','no').''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.= sprintf(input_date($form_date_y, $form_date_m, $form_date_d)); $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.='' . _t('user','current_avatar').' : '.''.END_LINE; $content.=''.END_LINE; $content.=$user_profile_avatar.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; $content.='
'.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.=''.END_LINE; $content.='
'.END_LINE; echo $content; } } if(!function_exists('ModifyProfile')) { function ModifyProfile() { $link_home= array('rub'=> $GLOBALS['links'][U_L]['home']['linkvalue']); $id=$_COOKIE['linea21']['id']; $integrity=1; $table_user[0]= ''; // valeur login --> Non checké $table_user[1] =$_REQUEST['email']; $table_profile[0] = $_REQUEST['email']; $table_profile[1] = $_REQUEST['email_display']; $table_profile[2] = $_REQUEST['city']; $form_date_d = trim($_REQUEST['date_d']); $form_date_m = trim($_REQUEST['date_m']); $form_date_y = trim($_REQUEST['date_y']); $form_date=$form_date_d . '-' . $form_date_m . '-' . $form_date_y; if(!empty($form_date_d) && !empty($form_date_m) && !empty($form_date_y)) { $date_integrity=checkdate_validity($form_date); } else { $date_integrity=true; } if(is_string($date_integrity)) $integrity = $date_integrity; else { $table_profile[3]= $form_date; } $table_profile[4] = $_REQUEST['leisures']; $table_profile[5] = $_REQUEST['job']; $table_profile[6] = $_REQUEST['quotation']; $table_profile[7] = $_REQUEST['signature']; $table_profile[8] = $_REQUEST['firstname']; $table_profile[9] = $_REQUEST['lastname']; $table_profile[10] = base64_decode($_REQUEST['current_avatar']); include_once('../class/class.user.php'); $user_object= new user; $data_user_integrity=$user_object->CheckDataIntegrity($table_user); if(is_string($data_user_integrity)) $integrity=$data_user_integrity; if(!empty($_REQUEST['password'])) { $integrity=$user_object->checkPasswordValidity($_REQUEST['password'], $_REQUEST['password2']); } if(!is_string($integrity)) { if(isset($_FILES['avatar']) && $_FILES['avatar']['name']!='') { include_once('../class/system/class.upload.php'); $upload_object= new upload; $upload=$_FILES['avatar']; $size_integrity=$upload_object->CheckMaxFile($upload['size'], $user_object->UPLOAD_MAX_MO); if(is_string($size_integrity)) $integrity=$size_integrity; $format_integrity=$upload_object->CheckExtImage($upload['name']); if(is_string($format_integrity)) $integrity=$format_integrity; if(!is_string($integrity)) { $final_name=$id.".".$upload_object->GetExtension($upload ['name']); $table_profile[10]=$user_object->URI_INPUT.$final_name; $destination="../".$user_object->URI_INPUT; $result_upload=$upload_object->UploadFile($upload, $final_name, $destination); } } } if(!is_string($integrity)) { $result=$user_object->ModifyProfile($id, $table_profile, $GLOBALS['sql_object']); if($result == true) { $string =_t('user','p_confirm_mod').'.'; $string.=' '._t('user','p_confirm_back').''; $integrity = array('code'=> 'confirm', 'string' => $string); } if(($_REQUEST['email']!=$_REQUEST['current_email']) || !empty($_REQUEST['password'])) { if($_REQUEST['email']!=$_REQUEST['current_email']) { $new_pass=$user_object->GetNewPassword(); $todo_mail='change_mail'; // choix template pour mail $new_email=$_REQUEST['email']; // renseignement nouvel email $user_login=$_COOKIE['linea21']['login']; // retrieve login } if(!empty($_REQUEST['password'])) { $new_pass=$_REQUEST['password']; $todo_mail='change_pass'; // choix template pour mail $user_email=$_REQUEST['email']; // renseignement email $user_login=$_COOKIE['linea21']['login']; // retrieve login } $user_object->UpdateUserPassword($id, $new_pass, $GLOBALS['sql_object']); UpdateCookiePassword(crypt($new_pass, SALT_CRYPT)); /** include envoi de mail */ include_once(themePath('../user/mail_actions.php')); include_once('../mail/template.php'); } } else { $integrity = array('code'=> 'error', 'string' => $integrity); } $return_result ='
'.END_LINE; $return_result.=$integrity['string'].END_LINE; $return_result.='
'.END_LINE; echo $return_result; if(!isset($result)) return DisplayFormProfileUser($_COOKIE['linea21']['id'], 1); } } if(!function_exists('ChangeNotifySettings')) { function ChangeNotifySettings($user_id) { include_once('../class/class.user.php'); $user_object= new user; $allgroups = array(); $checked = array(); $disabled = array(); // get workgroups $data=$GLOBALS['sql_object'] -> DBSelect(SQL_getUserWorkgroups($user_id)); if($data == 0) return false; foreach($data as $el) { array_push($allgroups, 'topic-'.$el['id']); array_push($allgroups, 'post-'.$el['id']); array_push($allgroups, 'file-'.$el['id']); } if(isset($_POST['topic'])) { foreach($_POST['topic'] as $el) { array_push($checked, 'topic-'.$el); } } if(isset($_POST['post'])) { foreach($_POST['post'] as $el) { array_push($checked, 'post-'.$el); } } if(isset($_POST['file'])) { foreach($_POST['file'] as $el) { array_push($checked, 'file-'.$el); } } if(isset($_POST['disabledfields'])) { $disabled = unserialize(rawurldecode($_POST['disabledfields'])); } $checked = array_merge($disabled, $checked); // diff between all groups and checked boxes $exceptions = array_diff($allgroups, $checked); $r = $user_object->changeWorkshopsNotification($user_id, $exceptions, $GLOBALS['sql_object']); $str ='
'.END_LINE; $str.=_t('user','notify_changes_success').END_LINE; $str.='
'.END_LINE; echo $str; } } if(!function_exists('GetLinkModifyUserInfo')) { function GetLinkModifyUserInfo($user_id) { $content =''; if(isset($_COOKIE['linea21']['whois']) && $user_id==$_COOKIE['linea21']['id']) { $link_edit= array('rub'=> $GLOBALS['links'][U_L]['user-prefs']['linkvalue']); $content.='
'.END_LINE; $content.=''._t('user','p_mod').''; $content.='
'.END_LINE; } return $content; } } if(!function_exists('DisplayAuthTextInfo')) { function DisplayAuthTextInfo() { $link_account= array('rub'=> $GLOBALS['links'][U_L]['user-registration']['linkvalue']); $content ='
'.END_LINE; $content.=_t('user','info_inscription').END_LINE; $content.=''._t('user','info_inscription2').' '.END_LINE; $content.='.
'._t('user','info_inscription3').''.END_LINE; $content.='
'.END_LINE; echo $content; } } if(!function_exists('DisplaySubscribeTextInfo')) { function DisplaySubscribeTextInfo() { $content ='
'.END_LINE; $content.=_t('user','info_inscription5').END_LINE; $content.='
'; echo $content; } } if(!function_exists('DisplayWorkgroupsSettings')) { function DisplayWorkgroupsSettings($user_id) { $content ='

'._t('user','my_workgroups').'

'.END_LINE; $content.='
'.END_LINE; $content.='

'._t('user','workgroups_notification').'

'.END_LINE; $content.=getWorkgroupsNotificationTable($user_id); $content.='
'; echo $content; } } if(!function_exists('getWorkgroupsNotificationTable')) { function getWorkgroupsNotificationTable($user_id) { $exceptions = array(); $disabled_fields = array(); // get workgroups $data=$GLOBALS['sql_object'] -> DBSelect(SQL_getUserWorkgroups($user_id)); // get notification exceptions $exc=$GLOBALS['sql_object'] -> DBSelect(SQL_getUserNotifyExceptionsSettings($user_id)); if($exc!=0) { foreach($exc as $el) { array_push($exceptions, $el['exception']); } } // default mask $dmask='checked="checked"'; if($data==0) return false; // general config if(ALERT_NEWTOPIC==2) { $is_topicDisabled=''; } else { $is_topicDisabled=' disabled="disabled"'; } if(ALERT_NEWPOST==2) { $is_postDisabled=''; } else { $is_postDisabled=' disabled="disabled"'; } if(ALERT_NEWFILE==2) { $is_fileDisabled=''; } else { $is_fileDisabled=' disabled="disabled"'; } $content ='
'.END_LINE; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; foreach($data as $el) { if(in_array('topic-'.$el['id'], $exceptions)) { $topic_mask = ''; $topic_on_class=''; $topic_off_class=' selected'; } else { $topic_mask = $dmask; $topic_on_class=' selected'; $topic_off_class=''; // we handle disabled fields because they are not sent to server !!! if(ALERT_NEWTOPIC!=2) array_push($disabled_fields, 'topic-'.$el['id']); } if(in_array('post-'.$el['id'], $exceptions)) { $post_mask = ''; $post_on_class=''; $post_off_class=' selected'; } else { $post_mask = $dmask; $post_on_class=' selected'; $post_off_class=''; // we handle disabled fields because they are not sent to server !!! if(ALERT_NEWPOST!=2) array_push($disabled_fields, 'post-'.$el['id']); } if(in_array('file-'.$el['id'], $exceptions) ) { $file_mask = ''; $file_on_class=''; $file_off_class=' selected'; } else { $file_mask = $dmask; $file_on_class=' selected'; $file_off_class=''; // we handle disabled fields because they are not sent to server !!! if(ALERT_NEWFILE!=2) array_push($disabled_fields, 'file-'.$el['id']); } $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; $content .= ""; } $content .= ""; $content .= "
"._t('user','workgroups_label')."".str_replace(' - ', '
', _t('user','notify_topic'))."
".str_replace(' - ', '
',_t('user','notify_post'))."
".str_replace(' - ', '
',_t('user','notify_file'))."
".$el['name']."

"; $content .=''.END_LINE; $content .=''.END_LINE; $content .=''.END_LINE; $content .= "
"; //Iphone style button /** $content .=""; */ return $content; } } ?>