Ejemplo n.º 1
0
 /**
  * @param string $json_column_array
  * @param string $json_argument_array
  * @param string $get_array
  * @param string $css_page_id
  * @param string $css_row_sort_id
  * @param string $entries_per_page
  * @param string $page
  * @param string $sortvalue
  * @param string $sortmethod
  * @return integer
  * @throws BaseUserAccessDeniedException
  */
 public static function list_measuring_units($json_column_array, $json_argument_array, $get_array, $css_page_id, $css_row_sort_id, $entries_per_page, $page, $sortvalue, $sortmethod)
 {
     global $user;
     if ($user->is_admin()) {
         $argument_array = json_decode($json_argument_array);
         $list_request = new ListRequest_IO();
         $list_request->set_column_array($json_column_array);
         if (!is_numeric($entries_per_page) or $entries_per_page < 1) {
             $entries_per_page = 20;
         }
         $list_array = Environment_Wrapper::list_measuring_units($sortvalue, $sortmethod, $page * $entries_per_page - $entries_per_page, $page * $entries_per_page);
         if (is_array($list_array) and count($list_array) >= 1) {
             foreach ($list_array as $key => $value) {
                 $list_array[$key]['symbol'] = "<img src='images/icons/measuring_unit.png' alt='N' border='0' />";
                 switch ($list_array[$key]['type']) {
                     case "aa":
                         $list_array[$key]['type'] = "anglo-american";
                         break;
                     case "metric":
                         $list_array[$key]['type'] = "metric";
                         break;
                     default:
                         $list_array[$key]['type'] = "none";
                         break;
                 }
                 if (is_numeric($list_array[$key]['min_prefix_exponent']) and $list_array[$key]['min_prefix_exponent'] > 0) {
                     for ($i = $list_array[$key]['min_prefix_exponent']; $i >= 3; $i = $i - 3) {
                         $prefix_array = MeasuringUnit::get_prefix($i, false);
                         if (is_array($prefix_array) and count($prefix_array) == 2) {
                             if ($list_array[$key]['secondary_units']) {
                                 $list_array[$key]['secondary_units'] = $list_array[$key]['secondary_units'] . ", " . $prefix_array[1] . "" . $list_array[$key]['unit_symbol'];
                             } else {
                                 $list_array[$key]['secondary_units'] = $prefix_array[1] . "" . $list_array[$key]['unit_symbol'];
                             }
                         }
                     }
                 }
                 if (is_numeric($list_array[$key]['max_prefix_exponent']) and $list_array[$key]['max_prefix_exponent'] > 0) {
                     for ($i = 3; $i <= $list_array[$key]['max_prefix_exponent']; $i = $i + 3) {
                         $prefix_array = MeasuringUnit::get_prefix($i, true);
                         if (is_array($prefix_array) and count($prefix_array) == 2) {
                             if ($list_array[$key]['secondary_units']) {
                                 $list_array[$key]['secondary_units'] = $list_array[$key]['secondary_units'] . ", " . $prefix_array[1] . "" . $list_array[$key]['unit_symbol'];
                             } else {
                                 $list_array[$key]['secondary_units'] = $prefix_array[1] . "" . $list_array[$key]['unit_symbol'];
                             }
                         }
                     }
                 }
                 $list_array[$key]['edit'] = "<a title='edit' style='cursor: pointer;' id='BaseAdminMeasuringUnitEdit" . $list_array[$key]['id'] . "' class='BaseAdminMeasuringUnitEdit'><img src='images/icons/edit.png' alt='D' /></a>";
                 if (MeasuringUnit::is_deletable($list_array[$key]['id']) === true) {
                     $list_array[$key]['delete'] = "<a title='delete' style='cursor: pointer;' id='BaseAdminMeasuringUnitDelete" . $list_array[$key]['id'] . "' class='BaseAdminMeasuringUnitDelete'><img src='images/icons/delete.png' alt='D' /></a>";
                 } else {
                     $list_array[$key]['delete'] = "";
                 }
             }
         } else {
             $list_request->empty_message("<span class='italic'>No results found!</span>");
         }
         $list_request->set_array($list_array);
         return $list_request->get_page($page);
     } else {
         throw new BaseUserAccessDeniedException();
     }
 }