コード例 #1
0
ファイル: index.php プロジェクト: bearf/xicl-web-interface
function outName($team, $role, $name)
{
    return implode(';', array(getBase($team, $role), $name, implode(';', array('', '', '', '', '', '', '', '', '', '')))) . '';
}
コード例 #2
0
 function showQuestions($variablenames, $realvariablenames, $groupname = "", $parentgroup = null)
 {
     /*
     * 
     * group
      intro
      subgroup
      q1
      q2
      subgroup
      q3
      endsubgroup
      endsubgroup
     
      endgroup
     * 
     */
     // strip preceding ~ (in case of group statements)
     if (startsWith($variablenames, "~")) {
         $variablenames = substr($variablenames, 1);
     }
     $variables = explode("~", $variablenames);
     if (startsWith($realvariablenames, "~")) {
         $realvariablenames = substr($realvariablenames, 1);
     }
     $realvariables = explode("~", $realvariablenames);
     /* no template specified */
     $group = null;
     if (trim($groupname) == "") {
         $group = new Group();
         $template = "default";
         $options = "";
     } else {
         $groupname = strtolower($groupname);
         //echo $groupname . '----' . $this->engine->replaceFills($groupname);
         $group = $this->engine->getGroup($this->engine->replaceFills($groupname));
         $template = $group->getTemplate();
         // specified template not found, then use default for display
         if ($template != TABLE_TEMPLATE_CUSTOM && file_exists(getBase() . DIRECTORY_SEPARATOR . "templates" . DIRECTORY_SEPARATOR . $template . '.php') == false) {
             $template = "default";
         }
     }
     /* handle display */
     $returnStr = "";
     /* allowed template and definition present */
     if (file_exists(getBase() . DIRECTORY_SEPARATOR . "templates" . DIRECTORY_SEPARATOR . $template . '.php')) {
         require_once $template . '.php';
         try {
             $class = new ReflectionClass($template . "Template");
             if ($class) {
                 if ($class->hasMethod(FUNCTION_SHOW)) {
                     if ($parentgroup == null) {
                         $parentgroup = new Group();
                     }
                     $group->setParentGroup($parentgroup);
                     $instance = $class->newInstanceArgs(array($this->engine, $group));
                     if ($instance) {
                         $method = $class->getMethod(FUNCTION_SHOW);
                         $returnStr .= $method->invokeArgs($instance, array($variables, $realvariables, $this->language));
                         $success = true;
                     }
                 }
             }
         } catch (Exception $e) {
         }
     }
     /* return result */
     return $returnStr;
 }
コード例 #3
0
ファイル: index.php プロジェクト: tetherless-world/twdoc
 if ($_SERVER["REQUEST_METHOD"] == "GET") {
     // Obtain best possible Accept type
     $type = getBestSupportedMimeType(array("application/rdf+xml", "*/*"));
     $fileType = exec("file -biL 'files/" . $requestedFile . "'");
     if ($type == "application/rdf+xml" || isset($_GET["mode"]) && $_GET["mode"] == "rdf") {
         // Handle application/rdf+xml as a separate condition
         $query = "";
         // Test if this is the 'current' symlink, look up the original file
         // and use it as the URI in the SPARQL request
         if (is_link('files/' . $requestedFile)) {
             $requestedFile = readlink('files/' . $requestedFile);
             $perl = "/" . preg_replace("/\\//", "\\/", getRoot()) . "files\\//";
             $requestedFile = preg_replace($perl, "", $requestedFile);
         }
         // Build the SPARQL query
         $base = getBase();
         $query = "PREFIX dc: <http://purl.org/dc/terms/> DESCRIBE <{$base}" . $requestedFile . "> ?x WHERE { <{$base}" . $requestedFile . "> dc:creator ?x }";
         // Return SPARQL result
         header("Content-type: application/rdf+xml");
         echo file_get_contents(ENDPOINT . "?query=" . urlencode($query));
     } else {
         if (!preg_match("/ERROR/", $fileType)) {
             // Handle when the file command returns an error
             // (e.g. the file doesn't exist or is not readable)
             // Get the mime component
             $fileType = explode(';', $fileType);
             $fileType = $fileType[0];
             // Send headers and content
             header("Content-type: {$fileType}");
             readfile("files/" . $requestedFile);
         } else {
コード例 #4
0
 function showToolsBatchEditorGroupTabs()
 {
     // tabs content
     $returnStr = '<div class="tab-content">';
     // general tab
     $returnStr .= '<div class="tab-pane active" id="general">';
     $returnStr .= '<div class="well">';
     $returnStr .= '<table>';
     $opendir = opendir(getBase() . DIRECTORY_SEPARATOR . "templates");
     if ($opendir) {
         $returnStr .= '<tr><td>' . Language::labelTypeEditGeneralGroupTemplate() . '</td><td>
                         <select class="selectpicker show-tick" id="' . SETTING_GROUP_TEMPLATE . '" name="' . SETTING_GROUP_TEMPLATE . '">';
         $templates = Common::surveyTemplates();
         $current = TABLE_TEMPLATE_DEFAULT;
         while (false !== ($entry = readdir($opendir))) {
             if (!is_dir($entry)) {
                 $entry = str_replace(".php", "", $entry);
                 if (inArray($entry, array_keys($templates))) {
                     $selected = "";
                     if (strtoupper($entry) == strtoupper($current)) {
                         $selected = "SELECTED";
                     }
                     $returnStr .= "<option {$selected} value='" . $entry . "'>" . $templates[$entry] . "</option>";
                 }
             }
         }
         $returnStr .= '</select>    
                         </td></tr>';
     }
     $returnStr .= "<tr id=customtemplate style='display: none;'><td>" . Language::labelTypeEditEnumeratedCustom() . "</td>";
     $returnStr .= '<td colspan=4><textarea style="width: 650px;" rows=20 class="form-control" name="' . SETTING_GROUP_CUSTOM_TEMPLATE . '"></textarea></td></tr>';
     $returnStr .= '</table>';
     $returnStr .= "<script type='text/javascript'>";
     $returnStr .= '$( document ).ready(function() {
                                                 $("#' . SETTING_GROUP_TEMPLATE . '").change(function (e) {
                                                     if (this.value == "' . TABLE_TEMPLATE_CUSTOM . '") {
                                                         $("#customtemplate").show();                                                           
                                                     }  
                                                     else {                                                            
                                                         $("#customtemplate").hide();
                                                     }                                                        
                                                 });
                                                 })';
     $returnStr .= "</script>";
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     // access tab
     $returnStr .= '<div class="tab-pane" id="access">';
     $returnStr .= '<div class="well">';
     $returnStr .= '<table>';
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_ACCESS_REENTRY_ACTION . "_checkbox /></td><td>" . Language::labelTypeEditAccessReentry() . "</td>";
     $returnStr .= "<td>" . $this->displayAccessReentryAction(SETTING_ACCESS_REENTRY_ACTION, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_ACCESS_REENTRY_PRELOAD_REDO . "_checkbox /></td><td>" . Language::labelTypeEditAccessReentryPreload() . "</td>";
     $returnStr .= "<td>" . $this->displayAccessReentryPreload(SETTING_ACCESS_REENTRY_PRELOAD_REDO, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_ACCESS_RETURN_AFTER_COMPLETION_ACTION . "_checkbox /></td><td>" . Language::labelSettingsAccessAfterCompletion() . "</td>";
     $returnStr .= "<td>" . $this->displayAccessAfterCompletionReturn(SETTING_ACCESS_RETURN_AFTER_COMPLETION_ACTION, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_ACCESS_RETURN_AFTER_COMPLETION_PRELOAD_REDO . "_checkbox /></td><td>" . Language::labelSettingsAccessAfterCompletionPreload() . "</td>";
     $returnStr .= "<td>" . $this->displayAccessAfterCompletionPreload(SETTING_ACCESS_RETURN_AFTER_COMPLETION_PRELOAD_REDO, '', true) . "</td></tr>";
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     // verification tab
     $returnStr .= '<div class="tab-pane" id="verification">';
     $returnStr .= '<div class="well">';
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_IFEMPTY . "_checkbox /></td><td>" . Language::labelTypeEditIfEmpty() . "</td>";
     $returnStr .= "<td>" . $this->displayIfEmpty(SETTING_IFEMPTY, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_IFERROR . "_checkbox /></td><td>" . Language::labelTypeEditIfError() . "</td>";
     $returnStr .= "<td>" . $this->displayIfError(SETTING_IFERROR, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_EXCLUSIVE . "_checkbox /><td>" . Language::labelGroupEditExclusive() . "</td>";
     $returnStr .= "<td>" . $this->displayExclusive(SETTING_GROUP_EXCLUSIVE, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_INCLUSIVE . "_checkbox /><td>" . Language::labelGroupEditInclusive() . "</td>";
     $returnStr .= "<td>" . $this->displayExclusive(SETTING_GROUP_INCLUSIVE, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_UNIQUE_REQUIRED . "_checkbox /><td>" . Language::labelGroupEditUnique() . "</td>";
     $returnStr .= "<td>" . $this->displayInclusive(SETTING_GROUP_UNIQUE_REQUIRED, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_SAME_REQUIRED . "_checkbox /><td>" . Language::labelGroupEditSame() . "</td>";
     $returnStr .= "<td>" . $this->displayInclusive(SETTING_GROUP_SAME_REQUIRED, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_MINIMUM_REQUIRED . "_checkbox /><td>" . Language::labelGroupEditMinRequired() . "</td>";
     $returnStr .= '<td><input name="' . SETTING_GROUP_MINIMUM_REQUIRED . '" type="text" value="" class="form-control" /></td></tr>';
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_MAXIMUM_REQUIRED . "_checkbox /><td>" . Language::labelGroupEditMaxRequired() . "</td>";
     $returnStr .= '<td><input name="' . SETTING_GROUP_MAXIMUM_REQUIRED . '" type="text" value="" class="form-control" /></td></tr>';
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_EXACT_REQUIRED . "_checkbox /><td>" . Language::labelGroupEditExactRequired() . "</td>";
     $returnStr .= '<td><input name="' . SETTING_GROUP_EXACT_REQUIRED . '" type="text" value="" class="form-control" /></td></tr>';
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     // display tab
     $returnStr .= '<div class="tab-pane" id="display">';
     $returnStr .= '<div class="well">';
     /* header/footer setting */
     $returnStr .= '<span class="label label-default">' . Language::labelSettingsPage() . '</span>';
     $returnStr .= '<div class="well">';
     $returnStr .= '<table width=100%>';
     $returnStr .= '<tr><td><input type=checkbox value=1 name=' . SETTING_SURVEY_TEMPLATE . '_checkbox /></td><td>' . Language::labelTypeEditLayoutTemplate() . '</td><td>';
     $returnStr .= '<input type="text" class="form-control" name="' . SETTING_SURVEY_TEMPLATE . '" value=""></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_PAGE_HEADER . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelSettingsHeader() . '</td><td><textarea style="width: 100%;" rows=6 class="form-control" name="' . SETTING_PAGE_HEADER . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_PAGE_FOOTER . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelSettingsFooter() . '</td><td><textarea style="width: 100%;" rows=6 class="form-control" name="' . SETTING_PAGE_FOOTER . '"></textarea></td></tr>';
     $returnStr .= "</table>";
     $returnStr .= '</div>';
     $returnStr .= '<span class="label label-default">' . Language::labelTypeEditLayoutOverall() . '</span>';
     $returnStr .= "<div class='well'>";
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_BUTTON_ALIGNMENT . "_checkbox /></td><td>" . Language::labelTypeEditButtonAlignment() . "</td>";
     $returnStr .= "<td>" . $this->displayAlignment(SETTING_BUTTON_ALIGNMENT, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_BUTTON_FORMATTING . "_checkbox /></td>            \n                      <td>" . Language::labelTypeEditButtonFormatting() . "</td>";
     $returnStr .= "<td>" . $this->displayFormatting(SETTING_BUTTON_FORMATTING, '') . "</td></tr>";
     $returnStr .= '</table></div>';
     $returnStr .= '<span class="label label-default">' . Language::labelTypeEditLayoutError() . '</span>';
     $returnStr .= "<div class='well'>";
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_ERROR_PLACEMENT . "_checkbox /></td><td>" . Language::labelTypeEditLayoutErrorPlacement() . "</td>";
     $returnStr .= "<td>" . $this->displayErrorPlacement(SETTING_ERROR_PLACEMENT, '') . "</td><td width=25><nobr/>";
     $returnStr .= "</tr>";
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '<span class="label label-default">' . Language::labelTypeEditLayoutButtons() . '</span>';
     $returnStr .= "<div class='well'>";
     $returnStr .= $this->displayColorPicker();
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_BACK_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditBackButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_BACK_BUTTON, '') . "</td>\n                      </tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_BACK_BUTTON_LABEL . "_checkbox /></td>           \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_BACK_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_NEXT_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditNextButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_NEXT_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_NEXT_BUTTON_LABEL . "_checkbox /></td>            \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_NEXT_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_DK_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditDKButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_DK_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_DK_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_DK_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_RF_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditRFButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_RF_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_RF_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_RF_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_NA_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditNAButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_NA_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_NA_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_NA_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_UPDATE_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditUpdateButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_UPDATE_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_UPDATE_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_UPDATE_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_REMARK_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditRemarkButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_REMARK_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_REMARK_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_REMARK_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_REMARK_SAVE_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditRemarkSaveButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_REMARK_SAVE_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_REMARK_SAVE_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_REMARK_SAVE_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_CLOSE_BUTTON . "_checkbox /></td><td>" . Language::labelTypeEditCloseButton() . "</td>";
     $returnStr .= "<td>" . $this->displayButton(SETTING_CLOSE_BUTTON, '') . "</td></tr>\n            <tr><td><input type=checkbox value=1 name=" . SETTING_CLOSE_BUTTON_LABEL . "_checkbox /></td>             \n                      <td>" . Language::labelTypeEditButtonLabel() . "</td>";
     $returnStr .= "<td>" . $this->displayButtonLabel(SETTING_CLOSE_BUTTON_LABEL, '') . "</td></tr>";
     $returnStr .= '</table></div>';
     $returnStr .= '<span class="label label-default">' . Language::labelTypeEditLayoutProgressBar() . '</span>';
     $returnStr .= "<div class='well'>";
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_PROGRESSBAR_SHOW . "_checkbox /></td><td>" . Language::labelTypeEditLayoutProgressBarShow() . "</td>";
     $returnStr .= "<td>" . $this->displayProgressbar(SETTING_PROGRESSBAR_SHOW, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_PROGRESSBAR_FILLED_COLOR . "_checkbox /></td><td>" . Language::labelTypeEditLayoutProgressBarFillColor() . "</td>";
     $returnStr .= '<td><div class="input-group colorpicker">
       <input name=' . SETTING_PROGRESSBAR_FILLED_COLOR . ' type="text" value="' . '' . '" class="form-control" />
       <span class="input-group-addon"><i></i></span>
       </div></td></tr>';
     $returnStr .= '<tr><td><input type=checkbox value=1 name=' . SETTING_PROGRESSBAR_WIDTH . '_checkbox /></td><td>' . Language::labelTypeEditLayoutProgressBarWidth() . '</td><td><input type="text" class="form-control" name="' . SETTING_PROGRESSBAR_WIDTH . '" value="' . '' . '"></td></tr>';
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     // group
     $returnStr .= '<span class="label label-default">' . Language::labelSettingsTable() . '</span>';
     $returnStr .= "<div class='well'>";
     $returnStr .= "<table>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_HEADER_ALIGNMENT . "_checkbox /></td><td>" . Language::labelTypeEditHeaderAlignment() . "</td>";
     $returnStr .= "<td>" . $this->displayAlignment(SETTING_HEADER_ALIGNMENT, '') . "</td></tr>\n          <tr><td><input type=checkbox value=1 name=" . SETTING_HEADER_FORMATTING . "_checkbox /></td>\n          <td>" . Language::labelTypeEditHeaderFormatting() . "</td>";
     $returnStr .= "<td>" . $this->displayFormatting(SETTING_HEADER_FORMATTING, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_HEADER_FIXED . "_checkbox /></td><td>" . Language::labelTypeEditHeaderFixed() . "</td>";
     $returnStr .= "<td>" . $this->displayHeaderFixed('') . "</td></tr>\n          <tr><td><input type=checkbox value=1 name=" . SETTING_HEADER_SCROLL_DISPLAY . "_checkbox /></td>\n          <td>" . Language::labelTypeEditHeaderScrollDisplay() . "</td>";
     $returnStr .= '<td><input type="text" class="form-control" name="' . SETTING_HEADER_SCROLL_DISPLAY . '" value="' . '' . '"></td></tr>';
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_TABLE_BORDERED . "_checkbox /></td><td>" . Language::labelGroupEditBordered() . "</td>";
     $returnStr .= "<td>" . $this->displayStriped(SETTING_GROUP_TABLE_BORDERED, '') . "</td></tr><tr>";
     $returnStr .= "<td><input type=checkbox value=1 name=" . SETTING_GROUP_TABLE_CONDENSED . "_checkbox /></td><td>" . Language::labelGroupEditCondensed() . "</td>";
     $returnStr .= "<td>" . $this->displayStriped(SETTING_GROUP_TABLE_CONDENSED, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_GROUP_TABLE_HOVERED . "_checkbox /></td><td>" . Language::labelGroupEditHovered() . "</td>";
     $returnStr .= "<td>" . $this->displayStriped(SETTING_GROUP_TABLE_HOVERED, '') . "</td></tr><tr>";
     $returnStr .= "<td><input type=checkbox value=1 name=" . SETTING_GROUP_TABLE_STRIPED . "_checkbox /></td><td>" . Language::labelGroupEditStriped() . "</td>";
     $returnStr .= "<td>" . $this->displayStriped(SETTING_GROUP_TABLE_STRIPED, '') . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_TABLE_WIDTH . "_checkbox /></td><td>" . Language::labelTypeEditTableWidth() . "</td>";
     $returnStr .= '<td><input type="text" class="form-control" name="' . SETTING_TABLE_WIDTH . '" value="' . '' . '"></td></tr><tr>';
     $returnStr .= "<td><input type=checkbox value=1 name=" . SETTING_QUESTION_COLUMN_WIDTH . "_checkbox /></td><td>" . Language::labelTypeEditQuestionColumnWidth() . "</td>";
     $returnStr .= '<td><input type="text" class="form-control" name="' . SETTING_QUESTION_COLUMN_WIDTH . '" value="' . '' . '"></td><td width=25><nobr/></td></tr>';
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     $returnStr .= '<div class="tab-pane" id="assistance">';
     $returnStr .= '<div class="well">';
     $returnStr .= '<table width=100%>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_EXCLUSIVE . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceExclusive() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_EXCLUSIVE . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_INCLUSIVE . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceInclusive() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_INCLUSIVE . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_MINIMUM_REQUIRED . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceMinimumRequired() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_MINIMUM_REQUIRED . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_MAXIMUM_REQUIRED . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceMaximumRequired() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_MAXIMUM_REQUIRED . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_EXACT_REQUIRED . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceExactRequired() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_EXACT_REQUIRED . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_UNIQUE_REQUIRED . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceUniqueRequired() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_UNIQUE_REQUIRED . '"></textarea></td></tr>';
     $returnStr .= '<tr><td valign=top><input type=checkbox value=1 name=' . SETTING_ERROR_MESSAGE_SAME_REQUIRED . '_checkbox /></td><td valign=top style="width: 15%;">' . Language::labelGroupEditAssistanceSameRequired() . '</td><td><textarea style="width: 100%;" rows=2 class="form-control" name="' . SETTING_ERROR_MESSAGE_SAME_REQUIRED . '"></textarea></td></tr>';
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     $returnStr .= '<div class="tab-pane" id="navigation">';
     $returnStr .= '<div class="well">';
     $returnStr .= '<table>';
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_ENABLED . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingEnabled() . "</td>";
     $returnStr .= "<td>" . $this->displayKeyBoardBindingDropdown(SETTING_KEYBOARD_BINDING_ENABLED, '', true) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_BACK . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingBack() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_BACK) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_NEXT . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingNext() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_NEXT) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_DK . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingDK() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_DK) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_RF . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingRF() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_RF) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_NA . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingNA() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_NA) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_UPDATE . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingUpdate() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_UPDATE) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_REMARK . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingRemark() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_REMARK) . "</td></tr>";
     $returnStr .= "<tr><td><input type=checkbox value=1 name=" . SETTING_KEYBOARD_BINDING_CLOSE . "_checkbox /></td><td>" . Language::labelTypeEditKeyboardBindingClose() . "</td><td>" . $this->displayButtonBinding(SETTING_KEYBOARD_BINDING_CLOSE) . "</td></tr>";
     $returnStr .= '</table>';
     $returnStr .= '</div>';
     $returnStr .= '</div>';
     $returnStr .= '<input onclick="$(\'#batchaction\').val(\'edit\'); $(\'#actionform\').submit(); " type="button" class="btn btn-default" value="' . Language::buttonEdit() . '"/>';
     $returnStr .= '</div>';
     return $returnStr;
 }
コード例 #5
0
ファイル: common.php プロジェクト: tetherless-world/twdoc
function handleFileUpload($tmpPath, $file, $creator, $oldName = NULL, $title = NULL)
{
    // For debugging purposes, if an error occurs we'll see the dump
    header("Content-type: text/html");
    $file = preg_replace("/ /", "_", $file);
    if ($oldName === NULL) {
        $oldName = $file;
    }
    // Compute date and path information for the new file
    $date = date("Y-m-d\\TH:i:sP");
    $sec = dechex(3600 * date("H") + 60 * date("i") + 1 * date("s"));
    $base = getBase();
    $path = date("Y/m/d") . "/" . $sec;
    // Create the directory to store the file if it doesn't exist
    if (MEDIA_DEBUG) {
        echo "mkdir -p 'files/" . $path . "'<br>";
    } else {
        exec("mkdir -p 'files/" . $path . "'", $text, $result);
        if ($result != 0) {
            echo '{"success":false,"error":"unable to create target directory"}';
            die;
        }
    }
    // Move the file
    if (MEDIA_DEBUG) {
        echo "move_upload_file({$tmpPath}, 'files/{$path}/{$file}')<br>";
    } else {
        if (!move_uploaded_file($tmpPath, "files/{$path}/{$file}")) {
            error(500);
        }
        /*
        exec("openssl enc -d -base64 -in '$tmpPath' -out 'files/$path/$file'");
        */
    }
    // Create or update the symlink in the "latest" directory
    if (!is_link("files/latest/{$oldName}")) {
        // There's no link yet, so create one
        if (MEDIA_DEBUG) {
            echo "Create symlink 'files/latest/{$file}' to 'files/{$path}/{$file}'<br>";
        } else {
            symlink(getRoot() . "files/{$path}/{$file}", "files/latest/{$file}");
            $query = "PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\r\n" . "PREFIX dc: <http://purl.org/dc/terms/>\r\n" . "PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>\r\n" . "PREFIX foaf: <http://xmlns.com/foaf/0.1/>\r\n\r\n" . "INSERT DATA {\r\n" . "  <{$base}" . "latest/{$file}> rdf:type foaf:Document .\r\n" . ($title ? "  <{$base}" . "latest/{$file}> dc:title \"{$title}\" .\r\n" : "") . "}";
            if (MEDIA_DEBUG) {
                echo "Execute query:<br><pre>" . htmlspecialchars($query) . "</pre><br>";
            } else {
                $params = array('http' => array('method' => 'POST', 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'content' => 'request=' . urlencode($query)));
                $ctx = stream_context_create($params);
                file_get_contents(UPDATE, false, $ctx);
            }
        }
    } else {
        // Make SPARQL update to reference old file
        $oldPath = readlink("files/latest/{$oldName}");
        $oldPath = explode("files/", $oldPath);
        $oldPath = $oldPath[count($oldPath) - 1];
        $query = "PREFIX dc: <http://purl.org/dc/terms/>\r\n" . "INSERT DATA {\r\n" . "<{$base}{$path}/{$file}> dc:replaces <{$base}{$oldPath}> .\r\n" . "}";
        if (MEDIA_DEBUG) {
            echo "Execute query:<br><pre>" . htmlspecialchars($query) . "</pre><br>";
        } else {
            $params = array('http' => array('method' => 'POST', 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'content' => 'request=' . urlencode($query)));
            $ctx = stream_context_create($params);
            file_get_contents(UPDATE, false, $ctx);
        }
        // Replace the symlink with one to the new file
        if (MEDIA_DEBUG) {
            echo "Remove symlink 'files/latest/{$file}'<br>";
            echo "Create symlink 'files/latest/{$file}' to 'files/{$path}/{$file}'<br>";
        } else {
            exec("rm 'files/latest/{$file}'");
            symlink(getRoot() . "files/{$path}/{$file}", "files/latest/{$file}");
        }
    }
    // Add metadata about the file to the SPARQL endpoint
    $query = "PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\r\n" . "PREFIX dc: <http://purl.org/dc/terms/>\r\n" . "PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>\r\n" . "PREFIX foaf: <http://xmlns.com/foaf/0.1/>\r\n\r\n" . "INSERT DATA {\r\n" . "  <{$base}{$path}/{$file}> rdf:type foaf:Document .\r\n" . "  <{$base}{$path}/{$file}> dc:creator <{$creator}> .\r\n" . ($title ? "  <{$base}{$path}/{$file}> dc:title \"{$title}\" .\r\n" : "") . "  <{$base}{$path}/{$file}> dc:created \"{$date}\"^^xsd:dateTime .\r\n" . "  <{$base}{$path}/{$file}> dc:modified \"{$date}\"^^xsd:dateTime .\r\n" . "}";
    if (MEDIA_DEBUG) {
        echo "Execute query:<br><pre>" . htmlspecialchars($query) . "</pre>";
    } else {
        $params = array('http' => array('method' => 'POST', 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'content' => 'request=' . urlencode($query)));
        $ctx = stream_context_create($params);
        $response = file_get_contents(UPDATE, false, $ctx);
    }
    return array("success" => true, "persist" => "{$base}{$path}/{$file}", "latest" => $base . "latest/{$file}");
}