Example #1
0
 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;
 }
Example #2
0
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;
}