function getFieldHTML($field, $required) { // it might be some other user (in case of admin is editing profile) $user =& JFactory::getUser(); $tName = $field->value; $templates = XiptHelperJomsocial::getTemplatesList(); $class = $required == 1 ? ' required' : ''; $selectedValue = $this->getTemplateValue($tName, $user->id); // XITODO : format it in proper way $allowToChangeTemplate = XiptHelperProfiletypes::getProfileTypeData(XiptLibProfiletypes::getUserData($user->id), 'allowt'); $allowToChangeTemplate = $allowToChangeTemplate || XiptHelperUtils::isAdmin($user->id); if (!$allowToChangeTemplate) { $html = '<input type="hidden" id="field' . $field->id . '" name="field' . $field->id . '" value="' . $selectedValue . '" />'; $html .= $selectedValue; return $html; } $html = '<select id="field' . $field->id . '" name="field' . $field->id . '" class="hasTip select' . $class . ' inputbox" title="' . $field->name . '::' . htmlentities($field->tips) . '">'; $selectedElement = 0; if (!empty($templates)) { foreach ($templates as $tmpl) { $selected = $tmpl == $selectedValue ? ' selected="selected"' : ''; if (!empty($selected)) { $selectedElement++; } $html .= '<option value="' . $tmpl . '"' . $selected . '>' . $tmpl . '</option>'; } } $html .= '</select>'; $html .= '<span id="errfield' . $field->id . 'msg" style="display:none;"> </span>'; return $html; }
function _buildTemplate($value) { $templates = XiptHelperJomsocial::getTemplatesList(); if (!$templates) { return false; } foreach ($templates as $t) { $allValues[]['value'] = $t; } return JHTML::_('select.genericlist', $allValues, 'template', 'class="inputbox"', 'value', 'value', $value); }
function getUserData($userid, $what = 'PROFILETYPE') { $results = array(); switch ($what) { case 'PROFILETYPE': if ($userid == 0) { return XiptFactory::getSettings('guestProfiletypeID', XiptFactory::getSettings('defaultProfiletypeID', 0)); } $getMe = PROFILETYPE_FIELD_IN_USER_TABLE; $defaultValue = XiptLibProfiletypes::getDefaultProfiletype(); break; case 'TEMPLATE': $getMe = TEMPLATE_FIELD_IN_USER_TABLE; $allTemplates = XiptHelperJomsocial::getTemplatesList(); $pID = XiptLibProfiletypes::getUserData($userid, 'PROFILETYPE'); $defaultValue = XiptLibProfiletypes::getProfileTypeData($pID, 'template'); //else get system template if (in_array($defaultValue, $allTemplates) === false) { $defaultValue = XiptLibProfiletypes::getDefaultTemplate(); } break; default: XiptError::raiseError('XIPT-SYSTEM-ERROR', 'XIPT System Error'); } $results = XiptFactory::getInstance('users', 'model')->loadRecords(0); // not a valid result OR value not set if (!$results || isset($results[$userid]) == false) { return $defaultValue; } $what = strtolower($what); return $results[$userid]->{$what}; }