Example #1
0
 public static function buildEditTable($formID)
 {
     $form = self::get($formID);
     // Get all objects from this form
     $objects = objects::getAllObjectsForForm($formID);
     $objects = objects::sort($objects, $form['objectTitleField']);
     // If the data is too large, setup pagination
     if (sizeof($objects) > mfcs::config("metadataPageCount")) {
         $pagination = new pagination(sizeof($objects));
         $pagination->itemsPerPage = mfcs::config("metadataPageCount");
         $pagination->currentPage = isset(mfcs::$engine->cleanGet['MYSQL'][$pagination->urlVar]) ? mfcs::$engine->cleanGet['MYSQL'][$pagination->urlVar] : 1;
         $startPos = $pagination->itemsPerPage * ($pagination->currentPage - 1);
         $objects = array_slice($objects, $startPos, $pagination->itemsPerPage);
     }
     if (count($objects) > 0) {
         $headers = array();
         $headers[] = "Delete";
         foreach ($form['fields'] as $field) {
             $headers[] = $field['label'];
         }
         if (forms::isMetadataForm($formID) === TRUE) {
             $headers[] = "Search";
             $headers[] = "Move";
         }
         $tableRows = array();
         for ($I = 0; $I < count($objects); $I++) {
             $temp = array();
             $temp[] = sprintf('<input type="checkbox" name="delete[]" value="%s"', $objects[$I]['ID']);
             foreach ($form['fields'] as $field) {
                 $temp[] = sprintf('<input type="%s" style="%s" name="%s_%s" value="%s" />', $field['type'], $field['style'], $field['name'], $objects[$I]['ID'], isset($objects[$I]['data'][$field['name']]) ? htmlSanitize($objects[$I]['data'][$field['name']]) : "");
             }
             if (forms::isMetadataForm($formID) === TRUE) {
                 $temp[] = sprintf('<a href="%sdataView/list.php?listType=metadataObjects&amp;formID=%s&amp;objectID=%s">Find Objects</a>', localvars::get('siteRoot'), htmlSanitize($formID), $objects[$I]['ID']);
                 $temp[] = sprintf('<a href="%sdataEntry/move.php?objectID=%s">Move</a>', localvars::get('siteRoot'), $objects[$I]['ID']);
             }
             $tableRows[] = $temp;
         }
         $table = new tableObject("array");
         $table->summary = "Object Listing";
         $table->class = "tableObject table table-striped table-bordered";
         $table->headers($headers);
         $output = "";
         // Add in pagination bar
         if (isset($pagination)) {
             $output .= $pagination->nav_bar();
         }
         $output .= sprintf('<form action="%s?formID=%s" method="%s" name="updateForm" data-formid="%s">', $_SERVER['PHP_SELF'], htmlSanitize($formID), "post", mfcs::$engine->openDB->escape($formID));
         $output .= sessionInsertCSRF();
         $output .= $table->display($tableRows);
         $output .= '<input type="submit" name="updateEdit" value="Update" class="btn" />';
         $output .= "</form>";
         // Add in pagination bar
         if (isset($pagination)) {
             $output .= $pagination->nav_bar();
         }
         return $output;
     } else {
         return "No data entered for this Metadata Form.";
     }
 }