public function showNavBar() { if (loadvar(POST_PARAM_AJAX_LOAD) == AJAX_LOAD) { return; } $smsActive = ''; $surveyActive = ''; $outputActive = ''; $toolsActive = ''; if (!isset($_SESSION['LASTPAGE'])) { $_SESSION['LASTPAGE'] = 'sysadmin.survey'; } if (startsWith($_SESSION['LASTPAGE'], 'sysadmin.sms')) { $smsActive = ' active'; $surveyActive = ''; $outputActive = ''; $toolsActive = ''; } if (startsWith($_SESSION['LASTPAGE'], 'sysadmin.survey')) { $smsActive = ''; $surveyActive = ' active'; $outputActive = ''; $toolsActive = ''; } if (startsWith($_SESSION['LASTPAGE'], 'sysadmin.output')) { $smsActive = ''; $surveyActive = ''; $outputActive = ' active'; $toolsActive = ''; } if (startsWith($_SESSION['LASTPAGE'], 'sysadmin.tools')) { $smsActive = ''; $surveyActive = ''; $outputActive = ''; $toolsActive = ' active'; } $returnStr = ' <!-- Fixed navbar --> <div id="mainnavbar" class="navbar navbar-default navbar-fixed-top"> <div class="container"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a href="' . setSessionParams(array('page' => 'sysadmin.home')) . '" class="navbar-brand">' . Language::messageSMSTitle() . '</a> </div> <div class="collapse navbar-collapse"> <ul class="nav navbar-nav"> <li' . $smsActive . '>' . setSessionParamsHref(array('page' => 'sysadmin.sms'), Language::linkSms()) . '</li> <li class="dropdown' . $surveyActive . '"><a data-hover="dropdown" class="dropdown-toggle" data-toggle="dropdown">' . Language::linkSurvey() . ' <b class="caret"></b></a>'; $surveys = new Surveys(); $surveys = $surveys->getSurveys(); $returnStr .= '<ul class="dropdown-menu">'; if (sizeof($surveys) > 0) { foreach ($surveys as $survey) { $span = ''; if (isset($_SESSION['SUID']) && $_SESSION['SUID'] == $survey->getSuid()) { $span = ' <span class="glyphicon glyphicon-chevron-down"></span>'; } $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.survey', 'suid' => $survey->getSuid()), $survey->getName() . $span, "", POST_PARAM_NOAJAX . "=" . NOAJAX) . '</li>'; } } else { $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.survey.addsurvey'), Language::labelSurveysAddNewCaps()) . '</li>'; } $returnStr .= '</ul>'; $returnStr .= '</li>'; $returnStr .= '<li class="dropdown' . $outputActive . '"><a data-hover="dropdown" class="dropdown-toggle" data-toggle="dropdown">' . Language::linkOutput() . ' <b class="caret"></b></a>'; $returnStr .= '<ul class="dropdown-menu">'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.output.data'), '<span class="glyphicon glyphicon-save"></span> ' . Language::linkData()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.output.statistics'), '<span class="glyphicon glyphicon-stats"></span> ' . Language::linkStatistics()) . '</li>'; $returnStr .= '<li class="divider"></li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.output.documentation'), '<span class="glyphicon glyphicon-file"></span> ' . Language::linkDocumentation()) . '</li>'; $returnStr .= '</ul></li>'; $returnStr .= '<li class="dropdown' . $toolsActive . '"><a data-hover="dropdown" class="dropdown-toggle" data-toggle="dropdown">' . Language::linkTools() . ' <b class="caret"></b></a>'; $returnStr .= '<ul class="dropdown-menu">'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.batcheditor'), '<span class="glyphicon glyphicon-tag"></span> ' . Language::linkBatchEditor()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.check'), '<span class="glyphicon glyphicon-check"></span> ' . Language::linkChecker()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.compile'), '<span class="glyphicon glyphicon-cog"></span> ' . Language::linkCompiler()) . '</li>'; if (Config::xiExtension()) { $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.xicompile'), '<span class="glyphicon glyphicon-share"></span> ' . Language::linkXiCompiler()) . '</li>'; } $returnStr .= '<li class="divider"></li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.test'), '<span class="glyphicon glyphicon-comment"></span> ' . Language::linkTester()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.issues'), '<span class="glyphicon glyphicon-thumbs-down"></span> ' . Language::linkReported()) . '</li>'; $returnStr .= '<li class="divider"></li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.export'), '<span class="glyphicon glyphicon-export"></span> ' . Language::linkExport()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.import'), '<span class="glyphicon glyphicon-import"></span> ' . Language::linkImport()) . '</li>'; $returnStr .= '<li class="divider"></li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.clean'), '<span class="glyphicon glyphicon-trash"></span> ' . Language::linkCleaner()) . '</li>'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.tools.flood'), '<span class="glyphicon glyphicon-random"></span> ' . Language::linkFlood()) . '</li>'; $returnStr .= '</ul></li></ul>'; $user = new User($_SESSION['URID']); $returnStr .= '<ul class="nav navbar-nav navbar-right"> <li class="dropdown"> <a data-hover="dropdown" class="dropdown-toggle" data-toggle="dropdown">' . $user->getUsername() . ' <b class="caret"></b></a> <ul class="dropdown-menu"> <li><a href="' . setSessionParams(array('page' => 'sysadmin.preferences')) . '"><span class="glyphicon glyphicon-wrench"></span> ' . Language::linkPreferences() . '</a></li>'; if ($user->getUserType() == USER_SYSADMIN && $user->getUserSubType() == USER_SYSADMIN_MAIN) { $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.users')) . '"><span class="glyphicon glyphicon-user"></span> ' . Language::linkUsers() . '</a></li>'; } $returnStr .= '<li class="divider"></li> <li><a ' . POST_PARAM_NOAJAX . '=' . NOAJAX . ' href="index.php?rs=1&se=2"><span class="glyphicon glyphicon-log-out"></span> ' . Language::linkLogout() . '</a></li> </ul> </li> </ul> '; $returnStr .= $this->showSearch(); $returnStr .= ' </div><!--/.nav-collapse --> </div> </div> '; $returnStr .= "<div id='content'>"; return $returnStr; }
function showEditUser($urid, $message = "") { $user = new User($urid); $returnStr = $this->showSysAdminHeader(Language::messageSMSTitle()); $returnStr .= '<div id="wrap">'; $returnStr .= $this->showNavBar(); $returnStr .= '<div class="container"><p>'; $returnStr .= '<ol class="breadcrumb">'; $returnStr .= '<li>' . setSessionParamsHref(array('page' => 'sysadmin.users'), Language::headerUsers()) . '</li>'; if ($user->getUsername() == '') { $returnStr .= '<li>' . Language::labelUserAddUser() . '</li>'; } else { $returnStr .= '<li>' . Language::labelEdit() . ' ' . $user->getUsername() . '</li>'; } $returnStr .= '</ol>'; $returnStr .= $message; $returnStr .= $this->displayComboBox(); $returnStr .= '<form id="editform" method="post">'; $returnStr .= '<span class="label label-default">' . Language::labelUserGeneral() . '</span>'; $returnStr .= '<div class="well">'; $returnStr .= setSessionParamsPost(array('page' => 'sysadmin.users.edituserres', 'urid' => $urid)); $returnStr .= '<div class="row">'; $returnStr .= '<div class="col-md-6">'; $returnStr .= '<table>'; $returnStr .= '<tr><td>' . Language::labelUserUserName() . '</td><td><input type="text" class="form-control" name="username" value="' . convertHTLMEntities($user->getUsername(), ENT_QUOTES) . '"></td></tr>'; $returnStr .= '<tr><td>' . Language::labelUserUserNameName() . '</td><td><input type="text" class="form-control" name="name" value="' . convertHTLMEntities($user->getName(), ENT_QUOTES) . '"></td></tr>'; $returnStr .= '<tr><td align=top>' . Language::labelUserActive() . '</td><td>'; $returnStr .= $this->showDropDown(array(VARIABLE_ENABLED => Language::labelEnabled(), VARIABLE_DISABLED => Language::labelDisabled()), $user->getStatus(), 'status'); $returnStr .= '</td></tr>'; $returnStr .= '<tr><td align=top>' . Language::labelUserUserType() . '</td><td>'; $returnStr .= $this->showDropDown(array(USER_INTERVIEWER => Language::labelInterviewer(), USER_NURSE => Language::labelNurse(), USER_SUPERVISOR => Language::labelSupervisor(), USER_TRANSLATOR => Language::labelTranslator(), USER_RESEARCHER => Language::labelResearcher(), USER_SYSADMIN => Language::labelSysadmin(), USER_TESTER => Language::labelTester()), $user->getUserType(), 'usertype', 'usertype'); $returnStr .= '</td></tr>'; $returnStr .= "<script type='text/javascript'>"; $returnStr .= '$( document ).ready(function() { $("#usertype").change(function (e) { if (this.value == ' . USER_NURSE . ') { $("#subtype").show(); $("#subtype2").hide(); } else if (this.value == ' . USER_SYSADMIN . ') { $("#subtype2").show(); $("#subtype").hide(); } else { $("#subtype").hide(); $("#subtype2").hide(); } if (this.value == ' . USER_INTERVIEWER . ' || this.value == ' . USER_CATIINTERVIEWER . ' || this.value == ' . USER_NURSE . ' || this.value == ' . USER_SUPERVISOR . ') { $("#super").show(); $("#accessdiv").hide(); $("#surveyaccess").hide(); } else { $("#super").hide(); $("#accessdiv").show(); $("#surveyaccess").show(); } }); })'; $returnStr .= "</script>"; if (inArray($user->getUserType(), array(USER_NURSE))) { $returnStr .= '<tr id=subtype><td align=top>' . Language::labelUserUserSubType() . '</td><td>'; $returnStr .= $this->showDropDown(array(USER_NURSE_MAIN => Language::labelNurseMain(), USER_NURSE_LAB => Language::labelNurseLab(), USER_NURSE_FIELD => Language::labelNurseField(), USER_NURSE_VISION => Language::labelNurseVision()), $user->getUserSubType(), 'usersubtype'); $returnStr .= '</td></tr>'; } else { if (inArray($user->getUserType(), array(USER_SYSADMIN))) { $returnStr .= '<tr id=subtype2><td align=top>' . Language::labelUserUserSubType() . '</td><td>'; $returnStr .= $this->showDropDown(array(USER_SYSADMIN_MAIN => Language::labelSysadminMain(), USER_SYSADMIN => Language::labelSysadminAdmin()), $user->getUserSubType(), 'usersubtype'); $returnStr .= '</td></tr>'; } else { $returnStr .= '<tr id=subtype style="display: none;"><td align=top>' . Language::labelUserUserSubType() . '</td><td>'; $returnStr .= $this->showDropDown(array(USER_NURSE_MAIN => Language::labelNurseMain(), USER_NURSE_LAB => Language::labelNurseLab(), USER_NURSE_FIELD => Language::labelNurseField(), USER_NURSE_VISION => Language::labelNurseVision()), $user->getUserSubType(), 'usersubtype'); $returnStr .= '</td></tr>'; $returnStr .= '<tr id=subtype2 style="display: none;"><td align=top>' . Language::labelUserUserSubType() . '</td><td>'; $returnStr .= $this->showDropDown(array(USER_SYSADMIN_MAIN => Language::labelSysadminMain(), USER_SYSADMIN => Language::labelSysadminAdmin()), $user->getUserSubType(), 'usersubtype'); $returnStr .= '</td></tr>'; } } if (inArray($user->getUserType(), array(USER_INTERVIEWER, USER_CATIINTERVIEWER, USER_NURSE, USER_SUPERVISOR))) { $returnStr .= '<tr id=super><td>' . Language::labelUserSupervisor() . '</td><td>'; $users = new Users(); $users = $users->getUsersByType(USER_SUPERVISOR); $returnStr .= $this->displayUsers($users, $user->getSupervisor(), 'uridsel', true); $returnStr .= '</td></tr>'; } $extra = ''; if (inArray($user->getUserType(), array(USER_NURSE, USER_INTERVIEWER, USER_SUPERVISOR, USER_CATIINTERVIEWER))) { $extra = "style='display: none;'"; } $returnStr .= '<tr id="surveyaccess"' . $extra . '><td>' . Language::labelUserSurveyAllowed() . '</td><td>' . $this->displaySurveys(SETTING_USER_SURVEYS . "[]", SETTING_USER_SURVEYS, implode("~", $user->getSurveysAccess()), '', "multiple") . '</td></tr>'; $returnStr .= '</table></div>'; $returnStr .= '<div class="col-md-6">'; $returnStr .= '<table>'; $returnStr .= '<tr><td align=top>' . Language::labelUserPassword() . '</td><td><input type="text" class="form-control" name="pwd1"></td></tr>'; $returnStr .= '<tr><td align=top>' . Language::labelUserPassword2() . '</td><td><input type="text" class="form-control" name="pwd2"></td></tr>'; $returnStr .= '</table></div></div>'; if ($urid != "") { $returnStr .= '<br/><input type="submit" class="btn btn-default" value="' . Language::buttonEdit() . '"/>'; } else { $returnStr .= '<br/><input type="submit" class="btn btn-default" value="' . Language::buttonAdd() . '"/>'; } $returnStr .= '</div></form>'; $suid = $_SESSION['SUID']; /* available surveys */ if ($urid != "") { $extra = ''; if (inArray($user->getUserType(), array(USER_NURSE, USER_INTERVIEWER, USER_SUPERVISOR, USER_CATIINTERVIEWER))) { $extra = "style='display: none;'"; } $returnStr .= "<div " . $extra . " id='accessdiv'>"; $returnStr .= "<form id=refreshform method=post>"; $returnStr .= '<input type=hidden name=page value="sysadmin.users.edituser">'; $returnStr .= '<input type=hidden name="' . SMS_POST_SURVEY . '" id="' . SMS_POST_SURVEY . '_hidden" value="' . getSurvey() . '">'; $returnStr .= "</form>"; $returnStr .= '<form id="editform1" method="post">'; $returnStr .= setSessionParamsPost(array('page' => 'sysadmin.users.edituseraccessres', 'urid' => $urid)); $returnStr .= '<span class="label label-default">' . Language::labelUserAccess() . '</span>'; $returnStr .= '<div class="well">'; $returnStr .= "<table>"; $allsurveys = $user->getSurveysAccess(); if (!inArray($suid, $allsurveys)) { $suid = $allsurveys[0]; } $survey = new Survey($suid); $u = $_SESSION['URID']; $_SESSION['URID'] = $urid; // pretend to be edited user for a moment to get surveys to display $returnStr .= '<tr><td>' . Language::labelUserSurveyAccess() . '</td><td>' . $this->displaySurveys(SMS_POST_SURVEY, SMS_POST_SURVEY, $suid, '', "") . '</td></tr>'; $_SESSION['URID'] = $u; $returnStr .= "<script type='text/javascript'>"; $returnStr .= '$( document ).ready(function() { $("#' . SMS_POST_SURVEY . '").change(function (e) { $("#' . SMS_POST_SURVEY . '_hidden").val(this.value); $("#refreshform").submit(); }); })'; $returnStr .= "</script>"; /* available modes */ $modes = Common::surveyModes(); $allowedmodes = explode("~", $survey->getAllowedModes()); $usermodes = $user->getModes($suid); foreach ($allowedmodes as $mode) { $returnStr .= "<tr class='modesrow'><td>" . $modes[$mode] . "</td><td>"; $returnStr .= $this->displayUserMode(SETTING_USER_MODE . $mode, inArray($mode, $usermodes)); $userlanguages = $user->getLanguages($suid, $mode); $returnStr .= "<td>" . Language::labelUserLanguageAllowed() . "</td>"; $returnStr .= "<td>" . $this->displayLanguagesAdmin(SETTING_USER_LANGUAGES . $mode, SETTING_USER_LANGUAGES . $mode, $userlanguages, true, false, false, "multiple", $survey->getAllowedLanguages($mode)) . "</td>"; $returnStr .= "</tr>"; } $returnStr .= '</table>'; $returnStr .= '<br/><input type="submit" class="btn btn-default" value="' . Language::buttonEdit() . '"/>'; $returnStr .= '</div></form></div>'; } $returnStr .= '</p></div> </div>'; //container and wrap $returnStr .= $this->showBottomBar(); $returnStr .= $this->showFooter(false); return $returnStr; }