Esempio n. 1
0
 /**
  * main displaying function of Calendar
  */
 public function display()
 {
     global $timedate;
     $cal =& $this->cal;
     $ss = new Sugar_Smarty();
     $ss->assign('APP', $GLOBALS['app_strings']);
     $ss->assign('APPLIST', $GLOBALS['app_list_strings']);
     $ss->assign('MOD', $GLOBALS['cal_strings']);
     $ss->assign('view', $cal->view);
     $ss->assign('style', $cal->style);
     $ss->assign('t_step', $cal->time_step);
     $ss->assign('current_user_id', $GLOBALS['current_user']->id);
     $ss->assign('current_user_name', $GLOBALS['current_user']->name);
     $ss->assign('time_format', $GLOBALS['timedate']->get_user_time_format());
     $ss->assign('enable_repeat', $this->cal->enable_repeat);
     $ss->assign('items_draggable', SugarConfig::getInstance()->get('calendar.items_draggable', true));
     $ss->assign('items_resizable', SugarConfig::getInstance()->get('calendar.items_resizable', true));
     $ss->assign('cells_per_day', $cal->cells_per_day);
     $ss->assign('dashlet', $cal->dashlet);
     $ss->assign('grid_start_ts', intval($cal->grid_start_ts));
     $ss->assign('year', $cal->date_time->format('Y'));
     $ss->assign('month', $cal->date_time->format('m'));
     $ss->assign('day', $cal->date_time->format('d'));
     $ss->assign('CALENDAR_FORMAT', $GLOBALS['timedate']->get_cal_date_format());
     $ss->assign('CALENDAR_FDOW', $GLOBALS['current_user']->get_first_day_of_week());
     if ($cal->style == "basic") {
         switch ($cal->view) {
             case "day":
                 $height = 250;
                 break;
             case "week":
                 $height = 250;
                 break;
             case "shared":
                 $height = 100;
                 break;
             default:
                 $height = 80;
                 break;
         }
     } else {
         $height = 20;
     }
     $ss->assign('basic_min_height', $height);
     $ss->assign('isPrint', $this->cal->isPrint() ? 'true' : 'false');
     if (count($cal->shared_ids)) {
         $ss->assign('shared_ids', $cal->shared_ids);
         $ss->assign('shared_users_count', count($cal->shared_ids));
     }
     $ss->assign('activity_colors', $this->activity_colors);
     $ss->assign('scroll_slot', $this->cal->scroll_slot);
     $ss->assign('editview_width', SugarConfig::getInstance()->get('calendar.editview_width', 800));
     $ss->assign('editview_height', SugarConfig::getInstance()->get('calendar.editview_height', 600));
     $ss->assign('a_str', json_encode($cal->items));
     $ss->assign('sugar_body_only', isset($_REQUEST['to_pdf']) && $_REQUEST['to_pdf'] || isset($_REQUEST['sugar_body_only']) && $_REQUEST['sugar_body_only']);
     require_once 'include/json_config.php';
     global $json;
     $json = getJSONobj();
     $json_config = new json_config();
     $ss->assign('GRjavascript', $json_config->get_static_json_server(false, true, 'Meetings'));
     // form
     $user_default_date_start = $timedate->asUser($timedate->getNow());
     $ss->assign('user_default_date_start', $user_default_date_start);
     // end form
     if ($_REQUEST['module'] == "Calendar") {
         $this->load_settings_template($ss);
         $settings = "custom/modules/Calendar/tpls/settings.tpl";
         if (!file_exists($settings)) {
             $settings = "modules/Calendar/tpls/settings.tpl";
         }
         $ss->assign("settings", $settings);
     }
     $main = "custom/modules/Calendar/tpls/main.tpl";
     if (!file_exists($main)) {
         $main = "modules/Calendar/tpls/main.tpl";
     }
     $form_tpl = "custom/modules/Calendar/tpls/form.tpl";
     if (!file_exists($form_tpl)) {
         $form_tpl = "modules/Calendar/tpls/form.tpl";
     }
     $ss->assign("form", $form_tpl);
     if ($this->cal->enable_repeat) {
         $repeat_tpl = "custom/modules/Calendar/tpls/repeat.tpl";
         if (!file_exists($repeat_tpl)) {
             $repeat_tpl = "modules/Calendar/tpls/repeat.tpl";
         }
         $ss->assign("repeat", $repeat_tpl);
         $repeat_intervals = array();
         for ($i = 1; $i <= 30; $i++) {
             $repeat_intervals[$i] = $i;
         }
         $ss->assign("repeat_intervals", $repeat_intervals);
         $fdow = $GLOBALS['current_user']->get_first_day_of_week();
         $dow = array();
         for ($i = $fdow; $i < $fdow + 7; $i++) {
             $day_index = $i % 7;
             $dow[] = array("index" => $day_index, "label" => $GLOBALS['app_list_strings']['dom_cal_day_short'][$day_index + 1]);
         }
         $ss->assign("dow", $dow);
     }
     echo $ss->fetch($main);
     // grid
     $grid = new CalendarGrid($cal);
     echo $grid->display();
     // end grid
 }
 /**
  * main displaying function of Calendar
  */
 public function display()
 {
     global $timedate;
     $cal =& $this->cal;
     $ss = new Sugar_Smarty();
     $ss->assign('APP', $GLOBALS['app_strings']);
     $ss->assign('APPLIST', $GLOBALS['app_list_strings']);
     $ss->assign('MOD', $GLOBALS['cal_strings']);
     $ss->assign('view', $cal->view);
     $ss->assign('t_step', $cal->time_step);
     $ss->assign('current_user_id', $GLOBALS['current_user']->id);
     $ss->assign('current_user_name', $GLOBALS['current_user']->name);
     $ss->assign('time_format', $GLOBALS['timedate']->get_user_time_format());
     $ss->assign('items_draggable', SugarConfig::getInstance()->get('calendar.items_draggable', true));
     $ss->assign('mouseover_expand', SugarConfig::getInstance()->get('calendar.mouseover_expand', true));
     $ss->assign('item_text', 'name');
     $ss->assign('cells_per_day', $cal->cells_per_day);
     $ss->assign('img_edit_inline', SugarThemeRegistry::current()->getImageURL('edit_inline.gif', false));
     $ss->assign('img_view_inline', SugarThemeRegistry::current()->getImageURL('view_inline.gif', false));
     $ss->assign('img_close', SugarThemeRegistry::current()->getImageURL('close.gif', false));
     $ss->assign('dashlet', $cal->dashlet);
     $ss->assign('grid_start_ts', $cal->grid_start_ts);
     $ss->assign('celcount', $cal->celcount);
     if (count($cal->shared_ids)) {
         $ss->assign('shared_ids', $cal->shared_ids);
         $ss->assign('shared_users_count', count($cal->shared_ids));
     }
     $ss->assign('activity_colors', $this->activity_colors);
     $ss->assign('scroll_slot', $this->cal->scroll_slot);
     $ss->assign('editview_width', SugarConfig::getInstance()->get('calendar.editview_width', 800));
     $ss->assign('editview_height', SugarConfig::getInstance()->get('calendar.editview_height', 600));
     $ss->assign('a_str', $cal->get_activities_js());
     $ss->assign('sugar_body_only', isset($_REQUEST['to_pdf']) && $_REQUEST['to_pdf'] || isset($_REQUEST['sugar_body_only']) && $_REQUEST['sugar_body_only']);
     require_once 'include/json_config.php';
     global $json;
     $json = getJSONobj();
     $json_config = new json_config();
     $ss->assign('GRjavascript', $json_config->get_static_json_server(false, true, 'Meetings'));
     // form
     $user_default_date_start = $timedate->asUser($timedate->getNow());
     $ss->assign('user_default_date_start', $user_default_date_start);
     // end form
     if ($_REQUEST['module'] == "Calendar") {
         $this->load_settings_template($ss);
         $settings = "custom/modules/Calendar/tpls/settings.tpl";
         if (!file_exists($settings)) {
             $settings = "modules/Calendar/tpls/settings.tpl";
         }
         $ss->assign("settings", $settings);
     }
     $main = "custom/modules/Calendar/tpls/main.tpl";
     if (!file_exists($main)) {
         $main = "modules/Calendar/tpls/main.tpl";
     }
     $form_tpl = "custom/modules/Calendar/tpls/form.tpl";
     if (!file_exists($form_tpl)) {
         $form_tpl = "modules/Calendar/tpls/form.tpl";
     }
     $ss->assign("form", $form_tpl);
     echo $ss->fetch($main);
     // drid
     $grid = new CalendarGrid($cal);
     echo $grid->display();
     // end grid
 }