Пример #1
0
 /**
  * Edit JS - Used to load all configuration for Edit Reservation Form
  *
  * This method loads only configuration information required by the edit.js
  * reservation page.
  *
  * @return   js variable used directly by edit.js
  */
 public function edit_Js_Action()
 {
     $fieldsDAO = new RM_ReservationConfig();
     $configFields = $fieldsDAO->getAdminEdit()->toArray();
     foreach ($configFields as $key => $configField) {
         $metainfo[] = $configField['admin_edit_preferences'];
     }
     $fieldsDAO = new RM_UnitConfig();
     $configFields = $fieldsDAO->getAllReservationFields()->toArray();
     foreach ($configFields as $key => $configField) {
         $metainfo[] = $configField['admin_edit_reservation_preferences'];
     }
     return "RM.Common.Reservations_Edit_Setup([" . implode(',', $metainfo) . "]);";
 }
Пример #2
0
 /**
  * @deprecated
  */
 public function fetchAllByReservation($reservation, $order = null, $count = null, $offset = null, $language = null)
 {
     if ($language == null) {
         $language = RM_Environment::getInstance()->getLocale();
     }
     if ($reservation == null) {
         return null;
     }
     //1. we need all fields from reservation_config that have admin_edit_preferences!=""
     $reservationConfigModel = new RM_ReservationConfig();
     $reservationDetailColumns = $reservationConfigModel->getAdminEdit();
     //2. we need all fields from unit config that have admin_reservation=1 and language = 0
     $unitConfigModel = new RM_UnitConfig();
     $unitColumns = $unitConfigModel->getReservationFields();
     //3. we need all fields from unit config that have admin_reservation=1 and language = 1
     $unitLanguageColumns = $unitConfigModel->getReservationLanguageFields();
     //4. create SQL
     $fieldsNames = array();
     foreach ($reservationDetailColumns as $field) {
         $fieldsNames[] = 'rd.' . $field->name . ' AS ' . $field->name;
     }
     foreach ($unitColumns as $field) {
         $fieldsNames[] = 'rm_units.' . $field->column_name . ' AS ' . $field->column_name;
     }
     foreach ($unitLanguageColumns as $field) {
         $fieldsNames[] = 'rm_unit_language_details.' . $field->column_name . ' AS ' . $field->column_name;
     }
     if ($offset === null) {
         $offset = 0;
     }
     $sql = "\r\n            SELECT\r\n                " . implode(',', $fieldsNames) . "\r\n            FROM\r\n                {$this->_name} rd\r\n            INNER JOIN\r\n                rm_units ON rm_units.id = rd.unit_id\r\n            LEFT OUTER JOIN\r\n                rm_unit_language_details ON rm_unit_language_details.unit_id=rm_units.id AND rm_unit_language_details.iso = '{$language}'\r\n            WHERE\r\n                rd.reservation_id = '{$reservation->id}' ";
     if ($order !== null) {
         $sql .= " ORDER BY {$order} ";
     }
     if ($count !== null) {
         $sql .= " LIMIT {$offset}, {$count} ";
     }
     return $this->_getBySQL($sql);
 }