не могу вставить событие, начинающееся в определенную дату, в fullCalendar

Я работаю над проектом codeIgniter. Я использую fullCalendar для вставки событий. Концепция, которую я хочу реализовать, похожа на Календарь Google. Когда пользователь щелкает день в календаре, он вставляет событие, начинающееся с даты выбранного дня. Я сделал ajax-вызов из своего представления и отправил дату в контроллер. После того, как я попал в контроллер, все, что я хочу сделать, это установить дату начала с этим значением и вставить событие в календарь. Вот мой код (контроллер)

function add_event()
    {

           $click_date = $this->input->post('date'); 
           $date= explode(" ", "$click_date ");
           $month= (int)$date[1];
           $day= (int)$date[2];
           $year= (int)$date[3]; 
           $date_start = $this->unix_timestamp($year.'-'.$month.'-'.$day);
           $this->load->library('gcal');
           $date_end = $this->unix_timestamp('2012-08-15'); 

           $params = array(
            'calendarId'    => 'my Google calendar id',
            'allday'        => true, 
            'start'         => $date_start,
            'end'       => $date_end,
            'summary'       => 'event',
            'description'   => "My first event"
        );

        $response = $this->gcal->eventInsert($params); 


        if($response)
        {
            echo "true";
        } 
    }

Вот моя функция unix_timestamp:

function unix_timestamp($date)
    {
        $date = str_replace(array(' ', ':'), '-', $date);
        $c    = explode('-', $date);
        $c    = array_pad($c, 6, 0);
        array_walk($c, 'intval');

        return mktime($c[3], $c[4], $c[5], $c[1], $c[2], $c[0]);
    }

В календаре событие вставлено, но не в правильную дату начала. Он начинается 01.01.2012, что, я думаю, является датой по умолчанию. Я не понимаю, почему у меня неправильная дата начала. Что я делаю неправильно? Может ли кто-нибудь помочь мне?


person user1499220    schedule 30.08.2012    source источник


Ответы (1)


Я нашел ответ. Я должен преобразовать формат даты fullCalendar в строку, прежде чем отправлять ее в контроллер. Не хватало одной строки:

date_format = $.fullCalendar.formatDate(date,"yyyy-MM-dd HH:mm:ss");`

Надеюсь, что это поможет людям, у которых такая же проблема `

person user1499220    schedule 30.08.2012