Отключить определенную дату

#php #codeigniter #extjs

#php #codeigniter #extjs

Вопрос:

Итак, я хочу отключить определенную дату в месяцах, это моя функция в контроллере называется «jurnal.php «

 function jurnal_harian_form() {
        setlocale(LC_ALL,"US");
        echo "<h3 id='title'>Jurnal Harian :: Daftar SKP :: Form Jurnal Harian</h3>";
        $_GET['nip'] = ($_SESSION['NIP']);
        $data_profil_pegawai = $this->jurnal_mdl->get_data_statistik_Jabatan();
        $harilibur = $this->jurnal_mdl->GetHariLibur();
        $currentYear = date("Y");
        $currentDay = date("d");
        $month = strftime("%B");
        $min =  date('Y-m-d', strtotime("$month $currentYear   14 days"));
        $now =  date('Y-m-d');

        $r =0;
        for ($i=1; $i < 6 ; $i  ) { 
            $gg = date('Y-m-d',strtotime("$i $month $currentYear"));
            $issun = date('w',strtotime("$gg"));
            if ($issun == '6' || $issun == '0') {
                $min =  date('Y-m-d', strtotime("$min  1 days"));
                $r  ;
            } 
            
        }

        $hasilmin = '';
        $hasilmax = '';
        if($now >= $min){
            $hasilmin = date('Y-m-d', strtotime("first day of $month $currentYear"));
            if ($r == 1) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  1 month  6 days"));
            } elseif($r == 2) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear   14 days"));
            }else{
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  1 month  5 days"));
            }  
        }else if($now == $min){
            $hasilmin = date('Y-m-d', strtotime("first day of $month $currentYear"));
            if ($r == 1) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  5 days"));
            } elseif($r == 2) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  6 days"));
            }else{
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  4 days"));
            }
        }else{
            $hasilmin = date('Y-m-d', strtotime("first day of $month $currentYear "));
            if ($r == 1) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  5 days"));
            } 
            elseif($r == 2 amp;amp; $currentDay <= 15) {
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  14 days"));
            }
            elseif($r == 2 amp;amp; $currentDay >= 15) {
                $hasilmax = date('Y-m-d', strtotime("$now  14 days"));
            }
            else{
                $hasilmax = date('Y-m-d', strtotime("$month $currentYear  4 days"));
            } 
        }
       
        $data = array(
            "html_store" => $this->get_store_form_tambah_jurnal(),
            "pegawai"    => $data_profil_pegawai,
            "harilibur"  => $harilibur,
            "minvalue"   => $hasilmin,
            "maxvalue"   => $hasilmax
        );
        $this->load->view('jurnal/grid_jurnal_harian2', $data);
    }
  

Я хочу сделать так, чтобы, когда месяц все еще длится с 1-го по 15-е число, 16-е число до конца месяца было отключено, но если это уже 16-е число, с 1-го по 15-е число будет отключено. как это сделать?

Ответ №1:

Если вы хотите ограничить количество дней в поле даты внешнего интерфейса (extjs), вы можете использовать setDisabledDates метод поля даты.

Пример: Чтобы отключить 5 и 6 октября, используйте: datefield.setDisabledDates(["10/05/2003", "10/06/2003"])

Для получения более подробной информации просмотрите ссылку