Example #1
0
    function watch()
    {
        $returnStr = $this->showHeader(Language::messageSMSTitle());
        $returnStr .= $this->displayComboBox();
        $returnStr .= "<form method='post'>";
        $params = getSessionParams();
        //$params['reportpage'] = 'reportRes';
        $returnStr .= setSessionParamsPost($params);
        $returnStr .= '<div id="wrap">';
        $returnStr .= '<div class="container"><p>';
        $returnStr .= '<div class="panel panel-default">
                <div class="panel-heading">';
        $returnStr .= '<h4>' . Language::linkWatch() . '</h4>';
        $returnStr .= '                </div>
                <div class="panel-body">';
        require_once 'data.php';
        require_once 'display.php';
        $data = new Data();
        $values = $data->getRespondentData(getFromSessionParams('watchsuid'), getFromSessionParams('watchprimkey'));
        $returnStr .= '</div>
    <div role="panel" class="panel">';
        if (sizeof($values) == 0) {
            $returnStr .= "<br/>" . '<div class="alert alert-warning">' . Language::labelWatchNoData() . '</div>';
        } else {
            $returnStr .= $this->displayDataTablesScripts(array("colvis", "rowreorder"));
            $returnStr .= "<script type='text/javascript'>\n                        \$(document).ready(function(){\n                            \$('#issuetable').dataTable(\n                                {\n                                    \"iDisplayLength\": 5,\n                                    dom: 'C<\"clear\">lfrtip',\n                                    searching: false,\n                                    paging: true\n                                    }    \n                                );\n                                         \n                       });</script>\n\n                        ";
            //
            $returnStr .= "<br/><table id='issuetable' class='table table-bordered table-striped'><thead>";
            $returnStr .= "<th>" . Language::labelWatchVariable() . "</th><th>" . Language::labelWatchValue() . "</th><th>" . Language::labelWatchClean() . "</th><th>" . Language::labelWatchMode() . "</th><th>" . Language::labelWatchLanguage() . "</th><th>" . Language::labelWatchTime() . "</th></tr>";
            $returnStr .= "</thead><tbody>";
            $modes = Common::surveyModes();
            $languages = Language::getLanguagesArray();
            $sesid = session_id();
            require_once 'object.php';
            require_once 'component.php';
            require_once 'setting.php';
            require_once 'type.php';
            require_once 'variabledescriptive.php';
            $survey = new Survey(getFromSessionParams('watchsuid'));
            foreach ($values as $is) {
                $returnStr .= "<tr>";
                $returnStr .= "<td>" . $is["variablename"] . "</td>";
                $returnStr .= "<td>" . $this->getDisplayValue($survey->getVariableDescriptiveByName($is["variablename"]), $is["answer_dec"]) . "</td>";
                $returnStr .= "<td>" . $this->displayDirty([$is["dirty"]]) . "</td>";
                $returnStr .= "<td>" . $modes[$is["mode"]] . "</td>";
                $returnStr .= "<td>" . $languages[str_replace("_", "", getSurveyLanguagePostFix($is["language"]))]['name'] . "</td>";
                $returnStr .= "<td>" . $is["ts"] . "</td>";
                $returnStr .= "</tr>";
            }
            $returnStr .= "</tbody></table>";
        }
        $returnStr .= '</div>
  </div>
</div>';
        $returnStr .= '                </div></div>';
        $returnStr .= '</p></div>    </div>';
        //container and wrap
        $returnStr .= $this->showFooter(false);
        echo $returnStr;
    }
Example #2
0
    function jump()
    {
        $returnStr = $this->showHeader(Language::messageSMSTitle());
        $returnStr .= "<form method='post'>";
        $params = getSessionParams();
        $params['testpage'] = 'jumpbackRes';
        $returnStr .= setSessionParamsPost($params);
        $returnStr .= '<div id="wrap">';
        $returnStr .= '<div class="container"><p>';
        $returnStr .= $this->displayComboBox();
        $returnStr .= '<div class="panel panel-default">
                <div class="panel-heading">';
        $returnStr .= '<h4>' . Language::jumpBack() . '</h4>';
        $returnStr .= '                </div>
                <div class="panel-body">';
        $states = $this->getStates(getFromSessionParams('jumpsuid'), getFromSessionParams('jumpprimkey'), getFromSessionParams('jumpstateid'));
        $returnStr .= "<br/><table>";
        $returnStr .= "<tr><td>" . Language::jumpBackTo() . "</td><td>";
        $returnStr .= "<select class='selectpicker show-tick' name='jumpto'>";
        if (sizeof($states) == 0) {
            $returnStr .= "<option value=" . $k . ">" . Language::noJumpBack() . "</option>";
        } else {
            $cnt = 1;
            foreach ($states as $k => $option) {
                $option = str_replace(ROUTING_SUBGROUP, "", $option);
                $option = str_replace(ROUTING_ENDSUBGROUP, "", $option);
                $option = str_replace(ROUTING_ENDGROUP, "", $option);
                $option = str_replace(ROUTING_GROUP, "", $option);
                $returnStr .= "<option value=" . $k . ">" . Language::jumpScreen() . " " . $cnt . ": " . $option . "</option>";
                $cnt++;
            }
        }
        $returnStr .= "</select></td></tr>";
        //$returnStr .= "<tr><td valign=top>" . Language::reportProblemDescription() . "</td><td>";
        //$returnStr .= "<textarea name='reportcomment' class='form-control' style='min-width: 400px;' rows=6></textarea>";
        //$returnStr .= "</td></tr>";
        $returnStr .= '</table><br/>';
        $returnStr .= '<button type="submit" class="btn btn-success" style="min-width:100px">' . Language::buttonJump() . '</button>';
        $returnStr .= '<button onclick="window.close();" type="cancel" class="btn btn-default" style="min-width:100px">' . Language::buttonClose() . '</button>';
        $returnStr .= "</form>";
        $returnStr .= '</div>';
        $returnStr .= '</div>
</div>';
        $returnStr .= '                </div></div>';
        $returnStr .= '</p></div>    </div>';
        //container and wrap
        $returnStr .= $this->showFooter(false);
        echo $returnStr;
    }
Example #3
0
 function report()
 {
     $returnStr = $this->showHeader(Language::messageSMSTitle());
     $returnStr .= "<form method='post'>";
     $params = getSessionParams();
     $params['testpage'] = 'reportRes';
     $returnStr .= setSessionParamsPost($params);
     $returnStr .= '<div id="wrap">';
     $returnStr .= '<div class="container"><p>';
     $returnStr .= $this->reportSub();
     $returnStr .= '                </div></div>';
     $returnStr .= '</p></div>    </div>';
     //container and wrap
     $returnStr .= $this->showFooter(false);
     echo $returnStr;
 }
    function displaySurveySideBarFilter($survey, $filter = 0)
    {
        $active = array('', '', '', '');
        $active[$filter] = ' active';
        $params = getSessionParams();
        //echo $page;
        $user = new User($_SESSION['URID']);
        $modes = $user->getModes(getSurvey());
        /* mode drop down */
        if (sizeof($modes) > 1) {
            $returnStr = '<form id=modeform method="post">';
            $returnStr .= '<input type=hidden name=r value="' . setSessionsParamString($params) . '">';
            $returnStr .= $this->displayModesAdmin("surveymode", "surveymode", getSurveyMode(), "", implode("~", $modes));
            $returnStr .= '<script type=text/javascript>
                              function submitModeForm() {
                                    var values = $("#modeform").serialize();
                                        values += "&' . POST_PARAM_AJAX_LOAD . '=' . AJAX_LOAD . '&ignoreres=1";

                                        // Send the data using post
                                        var posting = $.post( $("#modeform").attr("action"), values );

                                        posting.done(function( data ) {       
                                          $("#content").html( $( data ).html());
                                          $("[data-hover=\'dropdown\']").dropdownHover();  
                                        });
                                }
                                        
                                $(document).ready(function(){
                                    $("#surveymode").on("change", function(event) {
                                        var dirty = $.DirtyForms.isDirty();                                        
                                        if (dirty) {
                                            var r = confirm("' . Language::labelUnsavedChangesMessageConfirm() . '");
                                            if (r == true) {
                                                submitModeForm();
                                            }
                                         }
                                        else {
                                            submitModeForm();
                                        }                                                                                                        
                                    });
                                });
                                </script>';
            $returnStr .= "</form>";
        }
        /* language dropdown */
        $langs = explode("~", $user->getLanguages(getSurvey(), getSurveyMode()));
        $default = $survey->getDefaultLanguage();
        if (!inArray($default, $langs)) {
            $langs[] = $default;
        }
        if (sizeof($langs) > 1) {
            $returnStr .= '<form id=languageform method="post">';
            $returnStr .= '<input type=hidden name=r value="' . setSessionsParamString($params) . '">';
            $returnStr .= $this->displayLanguagesAdmin("surveylanguage", "surveylanguage", getSurveyLanguage(), true, false, true, "", implode("~", $langs));
            $returnStr .= '<script type=text/javascript>
                                    function submitLanguageForm() {
                                    var values = $("#languageform").serialize();
                                        values += "&' . POST_PARAM_AJAX_LOAD . '=' . AJAX_LOAD . '&ignoreres=1";

                                        // Send the data using post
                                        var posting = $.post( $("#modeform").attr("action"), values );

                                        posting.done(function( data ) {       
                                          $("#content").html( $( data ).html());
                                          $("[data-hover=\'dropdown\']").dropdownHover();  
                                        });
                                }
                                $(document).ready(function(){
                                    $("#surveylanguage").on("change", function(event) {
                                        var dirty = $.DirtyForms.isDirty();                                        
                                        if (dirty) {
                                            var r = confirm("' . Language::labelUnsavedChangesMessageConfirm() . '");
                                            if (r == true) {
                                                submitLanguageForm();
                                            }
                                         }
                                        else {
                                            submitLanguageForm();
                                        }                                                                                                        
                                    });
                                });
                                </script>';
            $returnStr .= "</form>";
        }
        $returnStr .= '<form method="post" id="surveysidebar">';
        $returnStr .= setSessionParamsPost(array('page' => 'translator.survey'));
        $returnStr .= '<input type="hidden" name="vrfiltermode_survey" id="vrfiltermode_survey" value="' . $filter . '">';
        $returnStr .= '<div class="btn-group">';
        $returnStr .= '<div class="btn-group">';
        $show = false;
        if (getSurveyLanguage() != $survey->getDefaultLanguage(getSurveyMode())) {
            $show = true;
        }
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-remove";
            $statustext = Language::messageTranslationStatusIncomplete();
            if ($survey->isTranslatedSections()) {
                $status = "glyphicon glyphicon-ok";
                $statustext = Language::messageTranslationStatusComplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        $returnStr .= '<button class="btn btn-default' . $active[0] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(0);$(\'#surveysidebar\').submit();">' . $span . Language::labelSections() . '</button>';
        $returnStr .= '<ul class="dropdown-menu" role="menu">';
        $sections = $survey->getSections();
        foreach ($sections as $section) {
            $span = "";
            if ($show) {
                $status = "glyphicon glyphicon-remove";
                $statustext = Language::messageTranslationStatusIncomplete();
                if ($section->isTranslated()) {
                    $status = "glyphicon glyphicon-ok";
                    $statustext = Language::messageTranslationStatusComplete();
                }
                $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
            }
            $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'translator.survey.section', 'seid' => $section->getSeid())) . '">' . $span . $section->getName() . '</a></li>';
        }
        $returnStr .= '</ul>';
        $returnStr .= '</div>';
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-remove";
            $statustext = Language::messageTranslationStatusIncomplete();
            if ($survey->isTranslatedTypes()) {
                $status = "glyphicon glyphicon-ok";
                $statustext = Language::messageTranslationStatusComplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        $returnStr .= '<button class="btn btn-default' . $active[2] . '" onclick="$(\'#vrfiltermode_survey\').val(2);$(\'#surveysidebar\').submit();">' . $span . Language::labelTypes() . '</button>';
        $returnStr .= '</div>';
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-remove";
            $statustext = Language::messageTranslationStatusIncomplete();
            if ($survey->isTranslatedGroups()) {
                $status = "glyphicon glyphicon-ok";
                $statustext = Language::messageTranslationStatusComplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        //$returnStr .= '<li><a ' . $active[3] . ' onclick="$(\'#vrfiltermode_section\').val(3);$(\'#sectionsidebar\').submit();">' . $span . Language::labelGroups() . '</a></li>';
        $returnStr .= '<button class="btn btn-default ' . $active[3] . '" onclick="$(\'#vrfiltermode_survey\').val(3);$(\'#sectionsidebar\').submit();">' . $span . Language::labelGroups() . '</button>';
        $returnStr .= '<div class="btn-group">';
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-ok";
            $statustext = Language::messageTranslationStatusComplete();
            if ($survey->isTranslatedLayout() == false || $survey->isTranslatedAssistance() == false) {
                $status = "glyphicon glyphicon-remove";
                $statustext = Language::messageTranslationStatusIncomplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        $returnStr .= '<button class="btn btn-default' . $active[1] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(1);$(\'#surveysidebar\').submit();">' . $span . Language::labelTexts() . '</button>';
        $returnStr .= '<ul class="dropdown-menu" role="menu">';
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-remove";
            $statustext = Language::messageTranslationStatusIncomplete();
            if ($survey->isTranslatedAssistance()) {
                $status = "glyphicon glyphicon-ok";
                $statustext = Language::messageTranslationStatusComplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'translator.survey.translatesettingsassistance', 'suid' => $survey->getSuid())) . '">' . $span . Language::labelSettingsAssistance() . '</a></li>';
        $span = "";
        if ($show) {
            $status = "glyphicon glyphicon-remove";
            $statustext = Language::messageTranslationStatusIncomplete();
            if ($survey->isTranslatedLayout()) {
                $status = "glyphicon glyphicon-ok";
                $statustext = Language::messageTranslationStatusComplete();
            }
            $span = '<span style="padding-right: 5px;" title="' . $statustext . '" class="' . $status . '"></span>';
        }
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'translator.survey.translatesettingslayout', 'suid' => $survey->getSuid())) . '">' . $span . Language::labelSettingsLayout() . '</a></li>';
        $returnStr .= '</ul>';
        $returnStr .= '</div>';
        $returnStr .= '</form>';
        return $returnStr;
    }
Example #5
0
 function showOutputStatisticsParadataVariable($seid, $vsid)
 {
     if (loadvar(DATA_OUTPUT_TYPEDATA) != "") {
         if (loadvar(DATA_OUTPUT_TYPEDATA) == DATA_TEST) {
             $_SESSION[SURVEY_EXECUTION_MODE] = SURVEY_EXECUTION_MODE_TEST;
         } else {
             $_SESSION[SURVEY_EXECUTION_MODE] = SURVEY_EXECUTION_MODE_NORMAL;
         }
     } else {
         $_SESSION[SURVEY_EXECUTION_MODE] = SURVEY_EXECUTION_MODE_NORMAL;
     }
     $survey = new Survey($_SESSION['SUID']);
     $section = $survey->getSection($seid);
     $variable = $survey->getVariableDescriptive($vsid);
     $headers[] = array('link' => setSessionParamsHref(array('page' => 'sysadmin.output'), Language::headerOutput()), 'label' => Language::headerOutputData());
     $headers[] = array('link' => setSessionParamsHref(array('page' => 'sysadmin.output.statistics'), Language::headerOutputStatistics()), 'label' => Language::headerOutputStatistics());
     $headers[] = array('link' => setSessionParamsHref(array('page' => 'sysadmin.output.statistics.paradata'), Language::headerOutputStatisticsParadata()), 'label' => Language::headerOutputStatisticsParadata());
     $headers[] = array('link' => setSessionParamsHref(array('page' => 'sysadmin.output.statistics.paradata', 'suid' => $suid), $survey->getName()), 'label' => $survey->getName());
     $headers[] = array('link' => setSessionParamsHref(array('page' => 'sysadmin.output.statistics.paradata.section', 'seid' => $seid), $section->getName()), 'label' => $section->getName());
     $headers[] = array('link' => '', 'label' => $variable->getName());
     $returnStr = $this->showOutputHeader($headers);
     $returnStr .= '<form id=surveyform method="post">';
     $returnStr .= '<span class="label label-default">' . Language::labelAggregateDetails() . '</span>';
     $returnStr .= '<div class="well well-sm">';
     $returnStr .= '<table>';
     $returnStr .= $this->displayComboBox();
     $returnStr .= '<tr><td>' . Language::labelOutputDataType() . '</td><td>';
     $returnStr .= "<select id='typedata' class='selectpicker show-tick' name=" . DATA_OUTPUT_TYPEDATA . ">";
     $selected = array('', '');
     if (loadvar(DATA_OUTPUT_TYPEDATA) != "") {
         $selected[loadvar(DATA_OUTPUT_TYPEDATA)] = "selected";
     }
     //print_r($selected);
     $returnStr .= "<option " . $selected[0] . " value=" . DATA_REAL . ">" . Language::optionsDataReal() . "</option>";
     $returnStr .= "<option " . $selected[1] . " value=" . DATA_TEST . ">" . Language::optionsDataTest() . "</option>";
     $returnStr .= "</select>";
     $returnStr .= "</td></tr>";
     $returnStr .= '<script type=text/javascript>
                     $(document).ready(function(){
                         $("#typedata").on("change", function(event) {
                             document.getElementById("surveyform").submit();
                         });
                     });
                 </script>';
     $returnStr .= "</form>";
     $returnStr .= '</table>';
     $returnStr .= '<br/><table>';
     $returnStr .= '<tr><td valign=top style="min-width: 100px;">' . Language::labelTypeEditGeneralQuestion() . ": </td><td valign=top>";
     $returnStr .= $variable->getQuestion() . "</td></tr>";
     $returnStr .= '<tr><td valign=top>' . Language::labelTypeEditGeneralAnswerType() . ": </td><td valign=top>";
     $answertype = $variable->getAnswerType();
     $arr = Language::getAnswerTypes();
     $returnStr .= $arr[$answertype] . "</td></tr>";
     if (inArray($answertype, array(ANSWER_TYPE_ENUMERATED, ANSWER_TYPE_SETOFENUMERATED, ANSWER_TYPE_DROPDOWN, ANSWER_TYPE_MULTIDROPDOWN))) {
         $returnStr .= '<tr><td valign=top>' . Language::labelTypeEditGeneralCategories() . ": </td><td valign=top>";
         $returnStr .= str_replace("\r\n", "<br/>", $variable->getOptionsText()) . "</td></tr>";
     } else {
         if (inArray($answertype, array(ANSWER_TYPE_RANGE, ANSWER_TYPE_SLIDER))) {
             $returnStr .= '<tr><td valign=top>' . Language::labelTypeEditRangeMinimum() . ": </td><td valign=top>";
             $returnStr .= $variable->getMinimum() . "</td></tr>";
             $returnStr .= '<tr><td valign=top>' . Language::labelTypeEditRangeMaximum() . ": </td><td valign=top>";
             $returnStr .= $variable->getMaximum() . "</td></tr>";
         }
     }
     if ($variable->isArray()) {
         $returnStr .= $this->displayComboBox();
         $returnStr .= '<tr><td valign=top>' . Language::labelTypeEditGeneralArrayInstance() . ": </td><td valign=top>";
         $options = $this->getArrayData($_SESSION['SUID'], $variable->getName());
         $returnStr .= "<form id=instanceform method=post>";
         $returnStr .= "<select class='selectpicker show-tick' id='arrayinstance' name='arrayinstance'>";
         foreach ($options as $op) {
             $returnStr .= "<option value='" . $op . "'>" . $op . "</option>";
         }
         $returnStr .= "</select>";
         $returnStr .= "</td></tr>";
         $params = getSessionParams();
         $params['vsid'] = $variable->getVsid();
         $returnStr .= setSessionParamsPost($params);
         $returnStr .= "</form>";
         $returnStr .= "<script type='text/javascript'>";
         $returnStr .= "\$('#arrayinstance').change(function () {\n                                \$('#instanceform').submit();\n                            });";
         $returnStr .= "</script>";
     }
     $returnStr .= "</table></div>";
     $returnStr .= '<span class="label label-default">' . Language::labelAggregateData() . '</span>';
     $returnStr .= '<div class="well well-sm">';
     $data = new Data();
     $brackets = array();
     $varname = $variable->getName();
     if ($variable->isArray()) {
         if (loadvar("arrayinstance") != "") {
             $varname = loadvar("arrayinstance");
         } else {
             $varname = $varname . "[1]";
         }
     }
     $paradata = $data->getParaData($variable, $varname);
     //$aggdata = array(2,5);
     if (sizeof($paradata) == 0) {
         $returnStr .= "<br>" . $this->displayWarning(Language::messageNoData());
     } else {
         $returnStr .= '<script src="js/highcharts.js"></script>';
         $returnStr .= '<script src="js/modules/exporting.js"></script>';
         $returnStr .= '<script src="js/export-csv.js"></script>';
         $returnStr .= '<div id="chart1" style="min-width: 310px; height: 400px; margin: 0 auto"></div>';
         $errorlabels = Language::errorCodeLabels();
         $brackets = array();
         foreach ($paradata as $k => $p) {
             if (isset($errorlabels[$k])) {
                 $brackets[] = $errorlabels[$k];
             }
         }
         $returnStr .= $this->createParadataChart($variable->getName(), implode(",", array_values($paradata)), $brackets);
     }
     $returnStr .= "</div>";
     $returnStr .= '</p></div>    </div>';
     //container and wrap
     $returnStr .= $this->showBottomBar();
     $returnStr .= $this->showFooter(false);
     return $returnStr;
 }
Example #6
0
    function displaySurveySideBarFilter($survey, $filter = 0)
    {
        $active = array('', '', '', '');
        $active[$filter] = ' active';
        $params = getSessionParams();
        /* no mode/language dropdowns on edit routing page */
        $page = $_SESSION['LASTPAGE'];
        if (inArray($page, array("sysadmin.survey.section")) && $_SESSION['VRFILTERMODE_SECTION'] == 1) {
        } else {
            /* mode drop down (not for mode attributes) */
            $user = new User($_SESSION['URID']);
            if (!inArray($page, array("sysadmin.survey.editsettingsmode"))) {
                $returnStr = '<form id=modeform method="post">';
                $returnStr .= '<input type=hidden name=r value="' . setSessionsParamString($params) . '">';
                //$returnStr .= $this->displayModesAdmin("surveymode", "surveymode", getSurveyMode(), "", $survey->getAllowedModes());
                $returnStr .= $this->displayModesAdmin("surveymode", "surveymode", getSurveyMode(), "", implode("~", $user->getModes($survey->getSuid())));
                $returnStr .= '<script type=text/javascript>
                    
                               function submitModeForm() {
                                    var values = $("#modeform").serialize();
                                        values += "&' . POST_PARAM_AJAX_LOAD . '=' . AJAX_LOAD . '&ignoreres=1";

                                        // Send the data using post
                                        var posting = $.post( $("#modeform").attr("action"), values );

                                        posting.done(function( data ) {       
                                          $("#content").html( $( data ).html());
                                          $("[data-hover=\'dropdown\']").dropdownHover();  
                                        });
                                }
                                        
                                $(document).ready(function(){
                                    $("#surveymode").on("change", function(event) {
                                        var dirty = $.DirtyForms.isDirty();                                        
                                        if (dirty) {
                                            var r = confirm("' . Language::labelUnsavedChangesMessageConfirm() . '");
                                            if (r == true) {
                                                submitModeForm();
                                            }
                                         }
                                        else {
                                            submitModeForm();
                                        }                                                                                                        
                                    });
                                });
                            </script>';
                $returnStr .= "</form>";
            }
            if (!inArray($page, array("sysadmin.survey.editsettingsmode", "sysadmin.survey.editsettingslanguage"))) {
                /* language dropdown */
                $returnStr .= '<form id=languageform method="post">';
                $returnStr .= '<input type=hidden name=r value="' . setSessionsParamString($params) . '">';
                //$returnStr .= $this->displayLanguagesAdmin("surveylanguage", "surveylanguage", getSurveyLanguage(), true, false, true, "", $survey->getAllowedLanguages(getSurveyMode(), false));
                $returnStr .= $this->displayLanguagesAdmin("surveylanguage", "surveylanguage", getSurveyLanguage(), true, false, true, "", $user->getLanguages($survey->getSuid(), getSurveyMode()), false);
                $returnStr .= '<script type=text/javascript>
                    
                                function submitLanguageForm() {
                                    var values = $("#languageform").serialize();
                                        values += "&' . POST_PARAM_AJAX_LOAD . '=' . AJAX_LOAD . '&ignoreres=1";

                                        // Send the data using post
                                        var posting = $.post( $("#modeform").attr("action"), values );

                                        posting.done(function( data ) {       
                                          $("#content").html( $( data ).html());
                                          $("[data-hover=\'dropdown\']").dropdownHover();  
                                        });
                                }
                                $(document).ready(function(){
                                    $("#surveylanguage").on("change", function(event) {
                                        var dirty = $.DirtyForms.isDirty();                                        
                                        if (dirty) {
                                            var r = confirm("' . Language::labelUnsavedChangesMessageConfirm() . '");
                                            if (r == true) {
                                                submitLanguageForm();
                                            }
                                         }
                                        else {
                                            submitLanguageForm();
                                        }                                                                                                        
                                    });
                                });
                            </script>';
                $returnStr .= "</form>";
            }
        }
        $returnStr .= '<form method="post" id="surveysidebar">';
        $returnStr .= setSessionParamsPost(array('page' => 'sysadmin.survey'));
        $returnStr .= '<input type="hidden" name="vrfiltermode_survey" id="vrfiltermode_survey" value="' . $filter . '">';
        $returnStr .= '<div class="btn-group">';
        $returnStr .= '<div class="btn-group">';
        //$returnStr .= '<button class="btn btn-default' . $active[0] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(0);$(\'#surveysidebar\').submit();">' . Language::labelSections() . '</button>';
        $returnStr .= '<button  title="' . Language::labelSections() . '" class="btn btn-default' . $active[0] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(0);$(\'#surveysidebar\').submit();"><span class="glyphicon glyphicon-tasks"></span></button>';
        $returnStr .= '<ul class="dropdown-menu" role="menu">';
        $sections = $survey->getSections();
        foreach ($sections as $section) {
            $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.section', 'seid' => $section->getSeid())) . '">' . $section->getName() . '</a></li>';
        }
        $returnStr .= '</ul>';
        $returnStr .= '</div>';
        //$returnStr .= '<button class="btn btn-default' . $active[2] . '" onclick="$(\'#vrfiltermode_survey\').val(2);$(\'#surveysidebar\').submit();">' . Language::labelTypes() . '</button>';
        $returnStr .= '<button title="' . Language::labelTypes() . '" class="btn btn-default' . $active[2] . '" onclick="$(\'#vrfiltermode_survey\').val(2);$(\'#surveysidebar\').submit();"><span class="glyphicon glyphicon-list-alt"></span></button>';
        //$returnStr .= '<button  title="' . Language::labelGroups() . '" class="btn btn-default' . $active[3] . '" onclick="$(\'#vrfiltermode_survey\').val(3);$(\'#surveysidebar\').submit();">' . Language::labelGroups() . '</button>';
        $returnStr .= '<button  title="' . Language::labelGroups() . '" class="btn btn-default' . $active[3] . '" onclick="$(\'#vrfiltermode_survey\').val(3);$(\'#surveysidebar\').submit();"><span class="glyphicon glyphicon-th-large"></span></button>';
        $returnStr .= '<div class="btn-group">';
        //$returnStr .= '<button class="btn btn-default' . $active[1] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(1);$(\'#surveysidebar\').submit();">' . Language::labelSettings() . '</button>';
        $returnStr .= '<button  title="' . Language::labelSettings() . '" class="btn btn-default' . $active[1] . ' dropdown-toggle" data-hover="dropdown" data-toggle="dropdown" onclick="$(\'#vrfiltermode_survey\').val(1);$(\'#surveysidebar\').submit();"><span class="glyphicon glyphicon-flash"></span></button>';
        $returnStr .= '<ul class="dropdown-menu" role="menu">';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsaccess', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsAccess() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsassistance', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsAssistance() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingslayout', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsLayout() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsgeneral', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsGeneral() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsinteractive', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsInteractive() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsmode', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsMode() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingslanguage', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsLanguage() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsnavigation', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsNavigation() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsdata', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsData() . '</a></li>';
        $returnStr .= '<li><a href="' . setSessionParams(array('page' => 'sysadmin.survey.editsettingsvalidation', 'suid' => $survey->getSuid())) . '">' . Language::labelSettingsValidation() . '</a></li>';
        $returnStr .= '</ul>';
        $returnStr .= '</div>';
        $returnStr .= '</div>';
        $returnStr .= '</form>';
        return $returnStr;
    }
Example #7
0
    function update()
    {
        $returnStr = $this->showHeader(Language::messageSMSTitle());
        $returnStr .= $this->displayComboBox();
        $returnStr .= '<div id="wrap">';
        $returnStr .= '<div class="container"><p>';
        $returnStr .= '<div class="panel panel-default">
                <div class="panel-heading">';
        $returnStr .= '<h4>' . Language::linkUpdate() . '</h4>';
        $returnStr .= '                </div>
                <div class="panel-body">';
        require_once 'data.php';
        require_once 'display.php';
        $data = new Data();
        $values = $data->getRespondentData(getFromSessionParams('watchsuid'), getFromSessionParams('watchprimkey'));
        $returnStr .= '</div>
    <div role="panel" class="panel">';
        if (sizeof($values) == 0) {
            $returnStr .= "<br/>" . '<div class="alert alert-warning">' . Language::labelWatchNoData() . '</div>';
        } else {
            $display = $this->engine->getDisplayObject();
            $returnStr .= $display->displayDataTablesScripts(array("colvis", "rowreorder"));
            $returnStr .= "<script type='text/javascript'>\n                        \$(document).ready(function(){\n                            \$('#issuetable').dataTable(\n                                {\n                                    \"iDisplayLength\": 4,\n                                    dom: 'C<\"clear\">lfrtip',\n                                    searching: false,\n                                    paging: true\n                                    }    \n                                );\n                                         \n                       });</script>\n\n                        ";
            //
            $returnStr .= "<br/><table id='issuetable' class='table table-bordered table-striped'><thead>";
            $returnStr .= "<th>" . Language::labelUpdateVariable() . "</th><th>" . Language::labelUpdateQuestion() . "</th><th>" . Language::labelUpdateCurrent() . "</th><th>" . Language::labelUpdateChangeTo() . "</th></tr>";
            $returnStr .= "</thead><tbody>";
            $modes = Common::surveyModes();
            $languages = Language::getLanguagesArray();
            $sesid = session_id();
            require_once 'object.php';
            require_once 'component.php';
            require_once 'setting.php';
            require_once 'type.php';
            require_once 'variabledescriptive.php';
            global $survey;
            $survey = new Survey(getFromSessionParams('watchsuid'));
            $cnt = 1;
            $params = getSessionParams();
            $params[SESSION_PARAM_SURVEY] = getFromSessionParams('watchsuid');
            // add for getSurvey
            $params['testpage'] = 'updateRes';
            $paramstring = setSessionParamsPost($params);
            foreach ($values as $is) {
                $var = $survey->getVariableDescriptiveByName($is["variablename"]);
                $returnStr .= "<tr>";
                $returnStr .= "<td>" . $is["variablename"] . "</td>";
                $returnStr .= "<td>" . $var->getQuestion() . "</td>";
                $returnStr .= "<td>" . $this->getDisplayValue($var, $is["answer_dec"]) . "</td>";
                $returnStr .= "<td>" . $this->displayInput($paramstring, $is["variablename"], $var, $is["answer_dec"], $cnt) . "</td>";
                $returnStr .= "</tr>";
                $cnt++;
            }
            $returnStr .= "</tbody></table>";
        }
        $returnStr .= '</div>
  </div>
</div>';
        $returnStr .= '                </div></div>';
        $returnStr .= '</p></div>    </div>';
        //container and wrap
        $returnStr .= $this->showFooter(false);
        echo $returnStr;
    }
Example #8
0
    function getTinyMCE($selector = "textarea.tinymce", $inline = 1, $editicon = '')
    {
        $returnStr = '';
        if (!isRegisteredScript("js/tinymce/tinymce.min.js")) {
            registerScript('js/tinymce/tinymce.min.js');
            $returnStr .= getScript("js/tinymce/tinymce.min.js");
        }
        if (!isRegisteredScript("js/tinymce/jquery.tinymce.min.js")) {
            registerScript('js/tinymce/jquery.tinymce.min.js');
            $returnStr .= getScript("js/tinymce/jquery.tinymce.min.js");
        }
        $returnStr .= '
            <script type="text/javascript">';
        // inline survey editing, then define load text function
        if ($inline > 1) {
            $returnStr .= 'function loadRealText() {
                var realtext = "";
                var ed = tinyMCE.activeEditor;
                var id = ed.id;
                var target = $("#" + id).attr("uscic-target");
                var texttype = $("#" + id).attr("uscic-texttype");
                var answercode = $("#" + id).attr("uscic-answercode"); 
                $.ajax({
                        type: "POST",
                        url: "' . setSessionParams(getSessionParams()) . '",
                        data: { ' . POST_PARAM_SMS_AJAX . ': "' . SMS_AJAX_CALL . '", p: "sysadmin.inline.getcontent", texttype: texttype, answercode: answercode, target: target },    
                        success: function(response){
                            ed.setContent(response + "' . $editicon . '");
                        }
                    });     
            }';
        }
        if ($inline == 1) {
            $returnStr .= 'var old = "";
               $( document ).ready(function() {
                
                /*$("textarea.tinymce").focusin(function() {
                    $(this).click();
                });*/
                                
                tinymce.init({  
                    valid_elements : "*[*]",
                    mode : "textareas",
                    selector: "' . $selector . '",    
                    menubar: "insert edit table format view tools",
                    setup: function(editor) {
                                editor.on("blur", function(e) {
                                    return;
                                });
                                editor.on("init", function(e) {
                                    tinyMCE.activeEditor.focus(); // does not work first time round
                                });
                
                                
                            },';
        }
        // editor
        // inline survey editing
        if ($inline > 1) {
            $returnStr .= '
                tinymce.init({
                mode : "textareas",
                selector: "' . $selector . '",    
                menubar: "insert edit table format view tools",';
            if ($inline == 2) {
                $returnStr .= '
                    valid_elements : "*[*]",';
            }
            $save = '';
            $contextmenu = 'contextmenu';
            $save = 'save';
            $contextmenu = '';
            $returnStr .= 'inline: true,
                            save_enablewhendirty: true,
                            save_onsavecallback: function() { ajaxSave(this);},
                            setup: function(editor) {
                                editor.on("focus", function(e) {
                                    loadRealText();
                                });                                
                            },
                        ';
        }
        $returnStr .= '    
        content_css : "css/tinymce.css",
        theme_advanced_font_sizes: "10px,12px,13px,14px,16px,18px,20px",
        font_size_style_values : "10px,12px,13px,14px,16px,18px,20px",
        force_br_newlines : false,
        force_p_newlines : false,
        forced_root_block: \'\',
        plugins: [
            "advlist autolink lists link image charmap print preview anchor",
            "searchreplace code ' . $save . '",
            "insertdatetime media table ' . $contextmenu . ' paste"
        ],
        toolbar1: "insertfile save undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image",
        toolbar2: "preview media | forecolor backcolor emoticons"
});';
        // inline survey editing
        if ($inline > 1) {
            $returnStr .= '
                function ajaxSave(ed) {
        ed.setProgressState(1); // Show progress 
        var id = ed.id;
        var texttype = $("#" + id).attr("uscic-texttype");
        var answercode = $("#" + id).attr("uscic-answercode");
        var target = $("#" + id).attr("uscic-target");
        $.ajax({
            type: "POST",
            url: "' . setSessionParams(getSessionParams()) . '",
            data: { ' . POST_PARAM_SMS_AJAX . ': "' . SMS_AJAX_CALL . '", p: "sysadmin.inline.editcontent", target: target, texttype: texttype, answercode: answercode, text: ed.getContent() },    
            success: function(msg){
                document.getElementById("navigation").value="' . PROGRAMMATIC_UPDATE . '"; 
                document.getElementById("form").submit();
            }
        });
        ed.setProgressState(0); // Show progress            
}
';
        }
        if ($inline == 1) {
            $returnStr .= '
                });';
        }
        $returnStr .= '</script>';
        return $returnStr;
    }