Страница 1 из 2

Ограничение конкретно календаре

Добавлено: 22 фев 2022, 11:00
neontic
Здравствуйте, помогите сделать, суть в том что есть отель, существуют дни когда все номера заняты и нужно сделать так чтобы этот день был недоступен для выбора, либо как-то ограничен. Сущность "Бронирования" поле "Дата заезда" тип поля "Дата с календарем" , как сделать правильно чтобы день был ограничен в публичной форме в JS?

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 11:11
believe
Была похожая тема. viewtopic.php?f=2&t=4858 - посмотрите тут

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 13:01
neontic
Вы можете показать код для моего случая?

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:26
believe

Код: Выделить всё

  // - ..._62 - id сущности

$dt_field_start = [649];
$dt_field_end = [650];

if ($_GET['item_id'] == 0) { // если это новая запись  
  $count_query = db_query("select count(*) as total from app_entity_62 where ".
   "(field_649 <= ".$dt_field_start.") and (field_650 >= ".$dt_field_end.")  or (field_649 >= ".$dt_field_start." and field_649 <= ".$dt_field_end.") or (field_650 >= ".$dt_field_start." and field_650 <= ".$dt_field_end." );");
  
  $count = db_fetch_array($count_query);
// проверка на вшивость (если дата начала больше даты конца) 
if( 
      ($dt_field_start > 0) and 
      ($dt_field_end > 0) and 
      ($dt_field_start > $dt_field_end) 
      
    )
  {
    echo 
  '<script>'.
  '$(".zvezdelka").remove(); '.
  '$(".btn-primary-modal-action").before("<div class=\"zvezdelka alert alert-danger\">Дата начала не может быть позже даты конца!</div>");'.
  '$(".btn-primary-modal-action").hide();'.
  '</script>';
  exit;
  } 
 else 
  { echo
     '<script>'.
     '$(".zvezdelka").remove(); '.
     '$(".btn-primary-modal-action").show(); '.
     '</script>';
  }

// эта проверка должна стоять ниже всех прочих

  if(
      ($dt_field_start > 0) and 
      ($dt_field_end > 0) and
      ($count['total']>=1)
    )
  {
    echo 
  '<script>'.
  '$(".zvezdelka").remove(); '.
  '$(".btn-primary-modal-action").before("<div class=\"zvezdelka alert alert-danger\">Уже есть проект(ы) в указанном диапазоне дат!</div>");'.
  '$(".btn-primary-modal-action").hide();'.
  '</script>';
    exit;
  } 
 else 
  { echo
     '<script>'.
     '$(".zvezdelka").remove(); '.
     '$(".btn-primary-modal-action").show(); '.
     '</script>';
  } 
} 

else // блокировка от изменений
  
{
echo '<script>'.
'$("#fields_649").prop("disabled",true).next().hide();'.
'$("#fields_650").prop("disabled",true).next().hide();'.
'</script>';
}

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:27
believe
Этот код был в теме

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:27
neontic
Мне нужно чтобы 1 день определенный блокировался

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:31
believe
Попробуйте разобраться в нем, там как раз если запись уже имеется на определенную дату- добавить новую нельзя, в форме добавления высветится ошибка.

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:31
neontic
Вообще не понимаю, очень трудно... Можешь написать код который на 1 дату?

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 14:32
believe
Создайте демо, попробую вам помочь

Re: Ограничение конкретно календаре

Добавлено: 22 фев 2022, 16:17
neontic
Поможете в лс написал