Несколько календарей событий с использованием codeigniter, jquery и ajaxPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Несколько календарей событий с использованием codeigniter, jquery и ajax

Сообщение Anonymous »

Я хочу создать календарь с несколькими событиями, используя CodeIgniter. Мне удалось создать единый календарь событий. Мне нужна помощь в следующем:

class Calendar_model extends CI_Model {

var $conf;

public function __construct() {
parent::__construct();

$this->conf = array(
'day_type' => 'long',
'month_type' => 'short',
'show_next_prev' => true,
'next_prev_url' => base_url() . 'Calendar/index'
);

$this->conf['template'] = '
{table_open}{/table_open}

{heading_row_start}{/heading_row_start}

{heading_previous_cell}<<{/heading_previous_cell}
{heading_title_cell}{heading}{/heading_title_cell}
{heading_next_cell}>>{/heading_next_cell}

{heading_row_end}{/heading_row_end}

{week_row_start}{/week_row_start}
{week_day_cell}{week_day}{/week_day_cell}
{week_row_end}{/week_row_end}

{cal_row_start}{/cal_row_start}
{cal_cell_start}{/cal_cell_start}

{cal_cell_content}
{day}
{content}
{/cal_cell_content}
{cal_cell_content_today}
{day}
{content}
{/cal_cell_content_today}

{cal_cell_no_content}{day}{/cal_cell_no_content}
{cal_cell_no_content_today}{day}{/cal_cell_no_content_today}

{cal_cell_blank} {/cal_cell_blank}

{cal_cell_end}{/cal_cell_end}
{cal_row_end}{/cal_row_end}

{table_close}{/table_close}
';

}

function get_calendar_data($year, $month) {
$query = $this->db->query("SELECT DISTINCT DATE_FORMAT
(date, '%Y-%m-%e') AS date FROM
tbl_calendar WHERE date LIKE '$year-$month%' "); //date format eliminates zeros make
//days look 05 to 5

$cal_data = array();

foreach ($query->result() as $row) { //for every date fetch data
$a = array();
$i = 0;
$query2 = $this->db->query("SELECT data FROM tbl_calendar
WHERE date LIKE DATE_FORMAT('$row->date', '%Y-%m-%d') ");
//date format change back the date format
//that fetched earlier
foreach ($query2->result() as $r) {
$a[$i] = $r->data; //make data array to put to specific date
$i++;
}
$cal_data[substr($row->date,8,2)] = $a;

}

return $cal_data;
}

function add_calendar_data($date, $data) {

if ($this->db->select('date')->from('tbl_calendar')
->where('date', $date)->count_all_results()) {

$this->db->where('date', $date)
->update('tbl_calendar', array(
'date' => $date,
'data' => $data
));

} else {

$this->db->insert('tbl_calendar', array(
'date' => $date,
'data' => $data
));
}

}
public function get_todo($year, $month)
{
$query = $this->db->query("SELECT DISTINCT DATE_FORMAT(due_date, '%Y-%m-%e') AS date FROM
tbl_todos WHERE due_date LIKE '$year-$month%' "); //date format eliminates zeros make
//days look 05 to 5

$data = array();

foreach ($query->result() as $row) { //for every date fetch data
$a = array();
$i = 0;
$query2 = $this->db->query("SELECT title FROM tbl_todos
WHERE due_date LIKE DATE_FORMAT('$row->date', '%Y-%m-%d') ");
//date format change back the date format
//that fetched earlier
foreach ($query2->result() as $r) {
$a[$i] = $r->title; //make data array to put to specific date
$i++;
}
$data[substr($row->date,8,2)] = $a;

}

return $data;

}

function generate ($year, $month) {

$this->load->library('calendar', $this->conf);
$cal_data = array();
$cal_data = $this->get_calendar_data($year, $month);
$cal_data += $this->get_todo($year, $month);

return $this->calendar->generate($year, $month, $cal_data);

}

}


Подробнее здесь: https://stackoverflow.com/questions/262 ... y-and-ajax
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»