Календарь занятости
Календарь занятости
Добрый день, Сообщество Yii разработчиков!
Пилю один проект на данном замечательном фреймворке, касается недвижимости.
Мне необходимо запилить для объектов недвижимости календарь занятости.
Схема такая:
Юзер создает объект, для него генерируется в отдельной модели календарь по связи HAS ONE,
и соответственно может кликать в дни, устанавливая тем самым что какието дни заняты а какието нет.
Есть такая штука ajaxavailabilitycalendar.com ставится как отдельная цмс со своей сессией юзерами и т.д.
Но нашел статью о том что в ней дофига дыр по SQL безопасности: http://www.securitylab.ru/vulnerability/440446.php
в общем решил отказаться от этой штуки.
нашел множество модулей календарей на YII, все обновлялись максимум пару лет назад.
и в тех календарях немного не то, что меня интересует, там про события в общем не то.
делал ли кто нибудь календарь занятости или толкните меня в нужном направлении
буду рад советам и критике )
с уважением, Виктор.
P.S. если не та ветка то отправьте по адресу.
Пилю один проект на данном замечательном фреймворке, касается недвижимости.
Мне необходимо запилить для объектов недвижимости календарь занятости.
Схема такая:
Юзер создает объект, для него генерируется в отдельной модели календарь по связи HAS ONE,
и соответственно может кликать в дни, устанавливая тем самым что какието дни заняты а какието нет.
Есть такая штука ajaxavailabilitycalendar.com ставится как отдельная цмс со своей сессией юзерами и т.д.
Но нашел статью о том что в ней дофига дыр по SQL безопасности: http://www.securitylab.ru/vulnerability/440446.php
в общем решил отказаться от этой штуки.
нашел множество модулей календарей на YII, все обновлялись максимум пару лет назад.
и в тех календарях немного не то, что меня интересует, там про события в общем не то.
делал ли кто нибудь календарь занятости или толкните меня в нужном направлении
буду рад советам и критике )
с уважением, Виктор.
P.S. если не та ветка то отправьте по адресу.
Re: Календарь занятости
Здравствуйте, Виктор.
Спасибо за такое обращение.
Ваша тема слишком щекотливая, и редкая. Скорее всего нужного не найдёте, придётся самому писать.
Попробуйте начать, а уже вопросы походу задавайте тут.
Было бы вообще идеально, если бы у Вас получился http://www.yiiframework.com/extensions/
Спасибо за такое обращение.
Ваша тема слишком щекотливая, и редкая. Скорее всего нужного не найдёте, придётся самому писать.
Попробуйте начать, а уже вопросы походу задавайте тут.
Было бы вообще идеально, если бы у Вас получился http://www.yiiframework.com/extensions/
Re: Календарь занятости
Да я уже все пересмотрел, есть много вопросов.
Экстеншены ни разу не писал, скорее всего буду делать модуль.
Опыт в модулестроении нулевой, завтра буду пилить, о результатах отписывать.
БД в голове сформирована, модуль сгенерирован в гии, образцы есть.
спасибо за любую помощь.
Экстеншены ни разу не писал, скорее всего буду делать модуль.
Опыт в модулестроении нулевой, завтра буду пилить, о результатах отписывать.
БД в голове сформирована, модуль сгенерирован в гии, образцы есть.
спасибо за любую помощь.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
vitekvil имел ввиду внутренностиbecause писал(а):а чем стандартный jquery календарь не устроил ?
Re: Календарь занятости
jquery календарь я делать умею это совсем не то что нужно. нужна система бронирования но очень простая, а за такие системы люди берут немалые деньги.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
я бы посоветовал экстеншен а не модуль, модуль это типа мини юи внутри юи, не думаю что такое понадобиться тут
Re: Календарь занятости
+alekso писал(а):я бы посоветовал экстеншен а не модуль, модуль это типа мини юи внутри юи, не думаю что такое понадобиться тут
Re: Календарь занятости
спасибо, делаю расширение, в статье кукбука есть классификация, а по модулям больше материалов, вот я и думал, ща накачаю расширений посмотрю как они делаются, была бы какаянибудь болванка типо как гии генерирует было бы легче.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
http://www.yiiframework.com/extension/flowing-calendar наверное из вот этого сваяю.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
если есть гитхаб выкладывай туда будем критиковать
Re: Календарь занятости
Проблема:
делаю листалку по месяцам вперед, назад на месяц. при клике по кнопке календарь перестраивается по ajax
проблема в том что кнопки переключают на следующий(предыдущий) месяц относительно сегодня.
то есть как я понимаю виджет создается заново при клике на кнопку и открывает сегодняшний месяц +1 /-1
а надо чтобы хранился текущий месяц...
есть пост http://www.yiiframework.com/forum/index ... -ajaxlink/
в котором Парень расписал как у него все заработало, то есть он вынет в _ajax views все и вызывает через renderpartial эти вьюсы а что внутри у них он, к сожалению, не расписал.
мои коды:
views/flowingCalendar.php
controller
Сам виджет спаян из открытого везде гуглящегося коды пхп календарь без какихлибо изменений.
Вопрос в том как сделать чтобы правильно листался календарь, храня в виджете текущий месяц и и при нажатии кнопки это не сбрасывалось
делаю листалку по месяцам вперед, назад на месяц. при клике по кнопке календарь перестраивается по ajax
проблема в том что кнопки переключают на следующий(предыдущий) месяц относительно сегодня.
то есть как я понимаю виджет создается заново при клике на кнопку и открывает сегодняшний месяц +1 /-1
а надо чтобы хранился текущий месяц...
есть пост http://www.yiiframework.com/forum/index ... -ajaxlink/
в котором Парень расписал как у него все заработало, то есть он вынет в _ajax views все и вызывает через renderpartial эти вьюсы а что внутри у них он, к сожалению, не расписал.
мои коды:
views/flowingCalendar.php
Код: Выделить всё
<?php
$this->storePreviousLink = CHtml::ajaxLink(
"<< prev",
Yii::app()->createUrl(Yii::app()->controller->id . '/updateCalendar'), //<-CONTROLLER
array(
'type'=>'POST',
'data'=>array(
'current' => $this->month,
'month' => $this->previousMonth,
'year' => $this->yearPreviousMonth
),
'update' => '.acal'
)
);
$this->storeNextLink = CHtml::ajaxLink(
"next >>",
Yii::app()->createUrl(Yii::app()->controller->id . '/updateCalendar'), //<-CONTROLLER
array(
'type'=>'POST',
'data'=>array(
'current' => $this->month,
'month' => $this->nextMonth,
'year' => $this->yearNextMonth
),
'update' => '.acal'
),
array('class' => 'pull-right')
);
echo '<h5>' . $this->title . '</h5>';
?>
<?php
echo $this->printCalendar();
echo $this->storePreviousLink;
echo $this->storeNextLink;
?>
Код: Выделить всё
public function actionUpdateCalendar(){
if (isset($_POST['month'])){
$mes = $_POST['month'];
$anyo = $_POST['year'];
$this->widget('ext.flowing-calendar.FlowingCalendarWidget', array("month"=>$mes, "year"=>$anyo));
}
Yii::app()->end();
}
Вопрос в том как сделать чтобы правильно листался календарь, храня в виджете текущий месяц и и при нажатии кнопки это не сбрасывалось
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
ищу мысли по реализации смены статуса дня ajax по клику в ячейку таблицы календаря, аякс должен помещать в модель броней строку с датой и статусом если такой нет если есть менять статус на +1 статусы у меня пока цифрами идут от 1 до 4.
пока не вижу решения.
пока не вижу решения.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
ну как есть у кого мысли, у меня вопрос висит уже длительное время и никак не могу прийти к решению, рендер паршал неособо чтото работать хочет... Разработчики прошу помощи...
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
Возможно я не правильно понял задачу, но вроде сложностей не должно быть.
Один из самых простых вариантов реализации нужного функционала может быть таким:
- Создается календарь (php, js, наверное не важно)
- Выбираются из базы те дни которые заняты у объекта. (простая таблица: object_id (int) | reserved_time (timestamp))
- На календаре выводятся эти дни, за счет timestamp значения например.
- Остальным дням добавляется класс, по нажатию на который выполняется добавление новой записи в базу. Уже занятым, на оборот, класс для их удаления из базы.
Конечно можно делать сначала выборку, потом формирования календаря и заполнение нужной инфой в тоже время. Но это уже ваше дело.
Смысл в том что связку можно делать например на основе timestamp дня.
Конечно же возможны более красивые решения, но это уже дело личное.
Удачи!
Один из самых простых вариантов реализации нужного функционала может быть таким:
- Создается календарь (php, js, наверное не важно)
- Выбираются из базы те дни которые заняты у объекта. (простая таблица: object_id (int) | reserved_time (timestamp))
- На календаре выводятся эти дни, за счет timestamp значения например.
- Остальным дням добавляется класс, по нажатию на который выполняется добавление новой записи в базу. Уже занятым, на оборот, класс для их удаления из базы.
Конечно можно делать сначала выборку, потом формирования календаря и заполнение нужной инфой в тоже время. Но это уже ваше дело.
Смысл в том что связку можно делать например на основе timestamp дня.
Конечно же возможны более красивые решения, но это уже дело личное.
Удачи!
Re: Календарь занятости
Это уже реализованно
в базу пишется
проблема именно с переключением месяцов, вперед и назад, листает только на 1 месяц
в базу пишется
проблема именно с переключением месяцов, вперед и назад, листает только на 1 месяц
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
решено!
Убрал полностью ajax
сделал через обычную ссылку с _GET параметрами
и все заработало, меня устраивает, т.к. можно делиться ссылкой с нужным месяцем в календаре.
Убрал полностью ajax
сделал через обычную ссылку с _GET параметрами
и все заработало, меня устраивает, т.к. можно делиться ссылкой с нужным месяцем в календаре.
с уважением,
Виктор.
Виктор.
Re: Календарь занятости
Я недавно реализовывал календарь занятости - http://SSMaker.ru/5b189384/, тоже сайт про недвижимость...
viewtopic.php?f=4&t=16009
Все оказалось очень просто и удобно.
viewtopic.php?f=4&t=16009
Все оказалось очень просто и удобно.
Re: Календарь занятости
у меня та же проблема. если у вас есть решение не могли бы вы скинуть ваш календарь
Re: Календарь занятости
Это все легко реализуется через http://www.yiiframework.com/doc/api/1.1/CJuiDatePicker