public function setTmpMdValues($form_data) { $rs = array(); $rs['ok'] = FALSE; $rs['report'] = ''; $this->setTableMode('tmp'); //my_print_r($form_data); $uuid = $form_data['uuid'] != '' ? htmlspecialchars($form_data['uuid']) : ''; $recno = $form_data['recno'] != '' ? htmlspecialchars($form_data['recno']) : -1; $block = $form_data['block'] != '' ? htmlspecialchars($form_data['block']) : -1; $nextblock = $form_data['nextblock'] != '' ? htmlspecialchars($form_data['nextblock']) : -1; $profil = $form_data['profil'] != '' ? htmlspecialchars($form_data['profil']) : -1; $nexprofil = $form_data['nextprofil'] != '' ? htmlspecialchars($form_data['nextprofil']) : -1; $mds = $form_data['mds'] != '' ? htmlspecialchars($form_data['mds']) : -1; //$data_type = (isset($form_data['public']) && $form_data['public'] == 'on') ? 1 : 0; $data_type = isset($form_data['data_type']) ? htmlspecialchars($form_data['data_type']) : -1; $edit_group = isset($form_data['edit_group']) ? htmlspecialchars($form_data['edit_group']) : ''; $view_group = isset($form_data['view_group']) ? htmlspecialchars($form_data['view_group']) : ''; $ende = array_key_exists('ende', $form_data) ? $form_data['ende'] : 0; if ($recno < 1 || $ende == 0 || count($form_data) < 6 || $mds < 0) { setMickaLog("recno={$recno}, mds={$mds}, ende={$ende}, count=" . count($form_data), 'ERROR', 'MdRecord.setTmpMdValues'); $rs['report'] = 'SYSTEM ERROR, not complete input data!'; return $rs; } // kontrola přístupových práv $md = $this->getMd($where_col = 'recno', $where_value = $recno); if ($md['report'] != 'ok') { $rs['report'] = $md['report']; return $rs; } unset($md); if ($this->md_record['user_right'] != 'w') { $rs['report'] = 'No rights'; return $rs; } //my_print_r($this->md_record); if ($this->md_record['md']['UUID'] != $uuid) { $rs['report'] = 'Error, save other record'; setMickaLog("Error, save other record. recno={$recno}, uuid={$uuid}, uuid dle recno=" . $this->md_record['md']['UUID'], 'ERROR', 'MdRecord.setTmpMdValues'); return $rs; } // Administrace záznamu $data = array(); $data['data_type'] = $data_type; if ($edit_group != '') { $data['edit_group'] = $edit_group; } if ($view_group != '') { $data['view_group'] = $view_group; } $this->setMd($recno, $data); // Smazání starých dat $pom = getProfilPackages($mds, $profil, $block); $this->deleteMdValues($recno, $mds, $pom['profil'], $pom['package']); // Vložení nových dat $insert_values = array(); foreach ($form_data as $key => $value) { // Přeskočení nedatových záznamů if ($key == 'recno' || $key == 'uuid' || $key == 'ak' || $key == 'w' || $key == 'iframe' || $key == 'mds' || $key == 'block' || $key == 'nextblock' || $key == 'profil' || $key == 'nextprofil' || $key == 'lang_its' || $key == 'public' || $key == 'data_type' || $key == 'edit_group' || $key == 'view_group' || $key == 'ende') { continue; } if ($value != '') { if (strpos($key, 'RB_') !== FALSE) { continue; } $pom = explode('|', $key); //form_code|lang|package_id|md_path if (count($pom) != 4) { setMickaLog("BAD key={$key}", 'ERROR', 'MdRecord.setTmpMdValues'); continue; } if ($pom[0] == 'R') { // RadioButton se neukládá continue; } if ($pom[0] == 'D' && MICKA_LANG == 'cze') { // Převod na ISO datum $value = dateCz2Iso($value); } $data = array(); $data['recno'] = $recno; $data['md_value'] = trim($value); $data['md_id'] = getMdIdFromMdPath($pom[3]); $data['md_path'] = $pom[3]; $data['lang'] = $pom[1]; $data['package_id'] = $pom[2]; if ($data['recno'] != '' && $data['md_value'] != '' && $data['md_id'] != '' && $data['md_path'] != '' && $data['lang'] != '' && $data['package_id'] != '') { array_push($insert_values, $data); } else { setMickaLog("Incomplet insert data", 'ERROR', 'MdRecord.setTmpMdValues'); } } } $this->setMdValues($insert_values); // aktualizace tabulky MD //$this->updateTableMd('recno', $recno); $rs['ok'] = TRUE; return $rs; }
function getSearchRange($range_b, $range_e) { $rs = array(); if (strpos($range_b, '.')) { $range_b = dateCz2Iso($range_b); } if (strpos($range_e, '.')) { $range_e = dateCz2Iso($range_e); } $pom = timeWindow('', $range_b, $range_e); if ($pom[0] != '0000-00-00' && $pom[1] != '0000-00-00') { $rs[] = "_DATEB_ >= '{$pom['0']}'"; $rs[] = "AND"; $rs[] = "_DATEE_ <= '{$pom['1']}'"; } return $rs; }