Squiz Matrix  4.12.2
 All Data Structures Namespaces Functions Variables Pages
page_calendar_edit_fns.inc
1 <?php
18 require_once SQ_CORE_PACKAGE_PATH.'/page/page_edit_fns.inc';
19 require_once SQ_LIB_PATH.'/html_form/html_form.inc';
20 
34 {
35 
36 
41  function __construct()
42  {
43  parent::__construct();
44  $this->static_screens['details']['force_unlock'] = 0;
45 
46  }//end constructor
47 
48 
59  function paintRootNodes(&$asset, &$o, $prefix)
60  {
61  $write_access = $asset->writeAccess('attributes');
62  ?>
63  <table class="sq-backend-table">
64  <tr>
65  <td class="sq-backend-table-header"><?php echo translate('cal_page_event_location'); ?></td>
66  <td class="sq-backend-table-header"><?php echo translate('cal_page_event_css_class'); ?></td>
67  </tr>
68  <?php
69  $locations = $asset->attr('root_nodes');
70  $location_info = $GLOBALS['SQ_SYSTEM']->am->getAssetInfo(array_keys($locations));
71  $l = 1;
72 
73  foreach ($locations as $location => $details) {
74  ?>
75  <tr>
76  <td class="sq-backend-table-cell">
77  <?php
78  if ($write_access) {
79  asset_finder($prefix.'_root_nodes['.$l.']', $location);
80  } else {
81  echo get_asset_tag_line($location);
82  }
83  ?>
84  </td>
85 
86  <td class="sq-backend-table-cell">
87  <?php
88  if ($write_access) {
89  text_box($prefix.'_node_classes['.$l.']', $details['class_name']);
90  } else {
91  echo $details['class_name'];
92  }
93  ?>
94  </td>
95  </tr>
96  <?php
97  $l++;
98  }//end foreach
99 
100  if ($write_access) {
101  ?>
102  <tr>
103  <td class="sq-backend-table-cell"><?php asset_finder($prefix.'_root_nodes['.$l.']', 0); ?></td>
104  <td class="sq-backend-table-cell"><?php text_box($prefix.'_node_classes['.$l.']', ''); ?></td>
105  </tr>
106  <?php
107  }
108  ?></table>
109  <?php
110  return TRUE;
111 
112  }//end paintRootNodes()
113 
114 
125  function processRootNodes(&$asset, &$o, $prefix)
126  {
127  if (isset($_POST[$prefix.'_root_nodes']) || (isset($asset->_tmp['reverting_to_system_version']) && $asset->_tmp['reverting_to_system_version'])) {
128  $locations = Array();
129  foreach ($_POST[$prefix.'_root_nodes'] as $index => $loc) {
130  if ($locid = $loc['assetid']) {
131  $locations[$locid] = isset($_POST[$prefix.'_node_classes'][$index]) ? Array('class_name' => $_POST[$prefix.'_node_classes'][$index]) : Array('class_name' => '');
132  }
133  }
134  return $asset->setAttrValue('root_nodes', $locations);
135  } else {
136  return FALSE;
137  }
138 
139  }//end processRootNodes()
140 
141 
152  function paintViewsChooser(&$asset, &$o, $prefix)
153  {
154  $write_access = $asset->writeAccess('attributes');
155  $current_views = $asset->attr('enabled_views');
156  $listing_entry_options = Array(
157  'title' => translate('cal_page_show_title_only'),
158  'bodycopy' => translate('cal_page_use_type_format_bodycopy'),
159  );
160 
161  $current_list_entry_types = $asset->attr('list_entry_types');
162  ?>
163  <table class="sq-backend-table">
164  <?php
165  $view_options = $asset->getViewOptions();
166  foreach ($view_options as $category => $options) {
167  ?>
168  <tr>
169  <td>
170  <b><label for="<?php echo $prefix.'_enabled_views['.$category.']'; ?>"><?php echo translate('cal_page_view_'.$category); ?></label></b>
171  </td>
172  <td>
173  <?php
174  if ($write_access) {
175  combo_box($prefix.'_enabled_views['.$category.']', $options, 0, $current_views[$category], 0, 'style="width: 46ex;"');
176  } else {
177  echo $view_options[$category][$current_views[$category]];
178  }
179  ?>
180  </td>
181  <td><?php
182  if ($write_access && (strpos($current_views[$category], 'list') !== FALSE)) {
183  ob_start();
184  combo_box($prefix.'_list_entry_types['.$category.']', $listing_entry_options, 0, $current_list_entry_types[$category], 0);
185  $list_entry_cb = ob_get_contents();
186  ob_end_clean();
187  echo translate('cal_page_list_entry_cb', $list_entry_cb);
188 
189  } else if (strpos($current_views[$category], 'list') !== FALSE) {
190  echo translate('cal_page_list_entry_unlocked', strtolower($listing_entry_options[$current_list_entry_types[$category]]));
191  } else {
192  echo '&nbsp;';
193  }
194  ?>
195  </td>
196  </tr><?php
197  }//end foreach
198  ?>
199  </table>
200  <?php
201  return TRUE;
202 
203  }//end paintViewsChooser()
204 
205 
216  function processViewsChooser(&$asset, &$o, $prefix)
217  {
218  $list_entry_types = $asset->attr('list_entry_types');
219  $unwanted_elts = array_diff(array_keys($_POST[$prefix.'_enabled_views']), array_keys($asset->getViewOptions()));
220  if (empty($unwanted_elts)) {
221  $asset->setAttrValue('enabled_views', $_POST[$prefix.'_enabled_views']);
222  $initial_view = $asset->attr('initial_view');
223  if (!($_POST[$prefix.'_enabled_views'][$initial_view])) {
224  foreach ($_POST[$prefix.'_enabled_views'] as $category => $view) {
225  if ($view) {
226  $asset->setAttrValue('initial_view', $category);
227  break;
228  }
229  }
230  }
231  foreach ($list_entry_types as $key => $value) {
232  if (isset($_POST[$prefix.'_list_entry_types'][$key]) && in_array($_POST[$prefix.'_list_entry_types'][$key], Array('title', 'bodycopy'))) {
233  $list_entry_types[$key] = $_POST[$prefix.'_list_entry_types'][$key];
234  }
235  }
236  $asset->setAttrValue('list_entry_types', $list_entry_types);
237 
238  return TRUE;
239  }
240  return FALSE;
241 
242  }//end processViewsChooser()
243 
244 
255  function paintInitialView(&$asset, &$o, $prefix)
256  {
257  $selected_view = $asset->attr('initial_view');
258  if ($asset->writeAccess('attributes')) {
259  $view_options = $asset->getViewOptions();
260  $enabled_views = $asset->attr('enabled_views');
261  foreach ($enabled_views as $name => $status) {
262  if (empty($status)) unset($view_options[$name]);
263  }
264  foreach ($view_options as $key => $val) {
265  $view_options[$key] = ucfirst($key).' View';
266  }
267  if (!in_array($selected_view, array_keys($view_options))) {
268  $selected_view = current($view_options);
269  }
270  combo_box($prefix.'_initial_view', $view_options, 0, $selected_view, 0);
271  } else {
272  echo $selected_view;
273  }
274  return TRUE;
275 
276  }//end paintInitialView()
277 
278 
289  function processInitialView(&$asset, &$o, $prefix)
290  {
291  $enabled_views = $asset->attr('enabled_views');
292  if (isset($_POST[$prefix.'_initial_view']) && !empty($enabled_views[$_POST[$prefix.'_initial_view']])) {
293  $asset->setAttrValue('initial_view', $_POST[$prefix.'_initial_view']);
294  } else {
295  $x = current($enabled_views);
296  while (empty($x) && ($x !== FALSE)) {
297  $x = next($enabled_views);
298  }
299  $asset->setAttrValue('initial_view', key($enabled_views));
300  }
301 
302  }//end processInitialView()
303 
304 
316  function _paint5MinTimeField($prefix, $default_hour=9, $default_min=0, $default_is_pm=FALSE)
317  {
318  $hour_options = Array(12=>12, 1=>1, 2=>2, 3=>3, 4=>4, 5=>5, 6=>6, 7=>7, 8=>8, 9=>9, 10=>10, 11=>11, 12=>12);
319  $min_options = Array();
320  for ($i=0; $i < 60; $i += 5) {
321  $min_options[sprintf('%02d', $i)] = sprintf('%02d', $i);
322  }
323  $is_pm_options = Array(0=>'am', 1=>'pm');
324  combo_box($prefix.'[hours]', $hour_options, FALSE, $default_hour, 0);
325  echo ' : ';
326  combo_box($prefix.'[minutes]', $min_options, FALSE, sprintf('%02d', $default_min), 0);
327  echo '&nbsp;';
328  combo_box($prefix.'[is_pm]', $is_pm_options, FALSE, (int)$default_is_pm, 0);
329 
330  }//end _paint5MinTimeField()
331 
332 
342  function _process5MinTimeField($prefix)
343  {
344  if (!isset($_POST[$prefix])) return FALSE;
345  if ($_POST[$prefix]['hours'] != (int)$_POST[$prefix]['hours']) {
346  return FALSE;
347  }
348  if ($_POST[$prefix]['minutes'] != (int)$_POST[$prefix]['minutes']) {
349  return FALSE;
350  }
351  if ($_POST[$prefix]['is_pm'] && ($_POST[$prefix]['hours'] != 12)) {
352  $_POST[$prefix]['hours'] += 12;
353  }
354  if (!$_POST[$prefix]['is_pm'] && ($_POST[$prefix]['hours'] == 12)) {
355  $_POST[$prefix]['hours'] = 0;
356  }
357  return sprintf('%02d', $_POST[$prefix]['hours']).':'.$_POST[$prefix]['minutes'];
358 
359  }//end _process5MinTimeField()
360 
361 
372  function paintDayStart(&$asset, &$o, $prefix)
373  {
374  if ($asset->writeAccess('attributes')) {
375  list($hour,$minute) = sscanf($asset->attr('day_starts_at'),'%02d:%02d');
376  $is_pm = FALSE;
377  if ($hour >= 12) {
378  $is_pm = TRUE;
379  $hour -= 12;
380  }
381  if ($hour == 0) $hour = 12;
382 
383  $this->_paint5MinTimeField($prefix.'_day_start_time', $hour, $minute, $is_pm);
384  } else {
385  echo $asset->attr('day_starts_at');
386  }
387  return TRUE;
388 
389  }//end paintDayStart()
390 
391 
402  function processDayStart(&$asset, &$o, $prefix)
403  {
404  if ($value = $this->_process5MinTimeField($prefix.'_day_start_time')) {
405  $asset->setAttrValue('day_starts_at', $value);
406  return TRUE;
407  } else {
408  return FALSE;
409  }
410 
411  }//end processDayStart()
412 
413 
424  function paintDayEnd(&$asset, &$o, $prefix)
425  {
426  if ($asset->writeAccess('attributes')) {
427  list($hour,$minute) = sscanf($asset->attr('day_ends_at'),'%02d:%02d');
428  $is_pm = FALSE;
429  if ($hour >= 12) {
430  $is_pm = TRUE;
431  $hour -= 12;
432  }
433  if ($hour == 0) $hour = 12;
434 
435  $this->_paint5MinTimeField($prefix.'_day_end_time', $hour, $minute, $is_pm);
436  } else {
437  echo $asset->attr('day_ends_at');
438  }
439 
440  }//end paintDayEnd()
441 
442 
453  function processDayEnd(&$asset, &$o, $prefix)
454  {
455  if ($value = $this->_process5MinTimeField($prefix.'_day_end_time')) {
456  if ($value == '00:00') $value = '24:00';
457  $asset->setAttrValue('day_ends_at', $value);
458  return TRUE;
459  } else {
460  return FALSE;
461  }
462 
463  }//end processDayEnd()
464 
465 
476  function paintWeekDays(&$asset, &$o, $prefix)
477  {
478  $write_access = $asset->writeAccess('attributes');
479  $days_to_show = $asset->attr('week_view_show_days');
480  foreach ($asset->day_names as $day_number => $day_name) {
481  echo '<br />';
482  if ($write_access) {
483  check_box($prefix.'_show_days['.$day_number.']', 1, $days_to_show[$day_number]);
484  } else {
485  ?>
486  <img src="<?php echo sq_web_path('lib'); ?>/web/images/<?php echo $days_to_show[$day_number] ? 'tick' : 'cross'; ?>.gif" width="15" height="15" />
487  <?php
488  }
489  echo $day_name;
490  }
491  return TRUE;
492 
493  }//end paintWeekDays()
494 
495 
506  function processWeekDays(&$asset, &$o, $prefix)
507  {
508  if (isset($_POST[$prefix.'_show_days']) && is_array($_POST[$prefix.'_show_days'])) {
509  foreach (range(0, 6) as $day_number) {
510  if (!isset($_POST[$prefix.'_show_days'][$day_number])) {
511  $_POST[$prefix.'_show_days'][$day_number] = 0;
512  }
513  }
514  $asset->setAttrValue('week_view_show_days', $_POST[$prefix.'_show_days']);
515  return TRUE;
516  } else {
517  return FALSE;
518  }
519 
520  }//end processWeekDays()
521 
522 
533  function paintLookAndFeel(&$asset, &$o, $prefix)
534  {
535  ?>
536  <p style="width: 80%; margin-left: 15ex"><?php echo translate('cal_page_look_and_feel_1'); ?></p>
537 
538  <p style="width: 80%; margin-left: 15ex"><?php echo translate('cal_page_look_and_feel_2', sq_web_path('data').'/asset_types/page_calendar/css/calendar_default.css'); ?></p>
539 
540  <p style="width: 80%; margin-left: 15ex"><?php echo translate('cal_page_look_and_feel_3'); ?></p>
541  <?php
542 
543  }//end paintLookAndFeel()
544 
545 
556  function processLookAndFeel(&$asset, &$o, $prefix)
557  {
558  return TRUE;
559 
560  }//end processLookAndFeel()
561 
562 
573  function paintDayTitleFormat(&$asset, &$o, $prefix)
574  {
575  return $this->_paintTitleFormat('day', $asset, $o, $prefix);
576 
577  }//end paintDayTitleFormat()
578 
579 
590  function processDayTitleFormat(&$asset, &$o, $prefix)
591  {
592  return $this->_processTitleFormat('day', $asset, $o, $prefix);
593 
594  }//end processDayTitleFormat()
595 
596 
607  function paintWeekTitleFormat(&$asset, &$o, $prefix)
608  {
609  return $this->_paintTitleFormat('week', $asset, $o, $prefix);
610 
611  }//end paintWeekTitleFormat()
612 
613 
624  function processWeekTitleFormat(&$asset, &$o, $prefix)
625  {
626  return $this->_processTitleFormat('week', $asset, $o, $prefix);
627 
628  }//end processWeekTitleFormat()
629 
630 
641  function paintMonthTitleFormat(&$asset, &$o, $prefix)
642  {
643  return $this->_paintTitleFormat('month', $asset, $o, $prefix);
644 
645  }//end paintMonthTitleFormat()
646 
647 
658  function processMonthTitleFormat(&$asset, &$o, $prefix)
659  {
660  return $this->_processTitleFormat('month', $asset, $o, $prefix);
661 
662  }//end processMonthTitleFormat()
663 
664 
675  function paintMonthDayHeadingFormat(&$asset, &$o, $prefix)
676  {
677  return $this->_paintHeadingFormat('month', 'day', $asset, $o, $prefix);
678 
679  }//end paintMonthDayHeadingFormat()
680 
681 
692  function processMonthDayHeadingFormat(&$asset, &$o, $prefix)
693  {
694  return $this->_processHeadingFormat('month', 'day', $asset, $o, $prefix);
695 
696  }//end processMonthDayHeadingFormat()
697 
698 
709  function paintWeekDayHeadingFormat(&$asset, &$o, $prefix)
710  {
711  return $this->_paintHeadingFormat('week', 'day', $asset, $o, $prefix);
712 
713  }//end paintWeekDayHeadingFormat()
714 
715 
726  function processWeekDayHeadingFormat(&$asset, &$o, $prefix)
727  {
728  return $this->_processHeadingFormat('week', 'day', $asset, $o, $prefix);
729 
730  }//end processWeekDayHeadingFormat()
731 
732 
743  function paintYearTitleFormat(&$asset, &$o, $prefix)
744  {
745  return $this->_paintTitleFormat('year', $asset, $o, $prefix);
746 
747  }//end paintYearTitleFormat()
748 
749 
760  function processYearTitleFormat(&$asset, &$o, $prefix)
761  {
762  return $this->_processTitleFormat('year', $asset, $o, $prefix);
763 
764  }//end processYearTitleFormat()
765 
766 
778  function _paintTitleFormat($view, &$asset, &$o, $prefix)
779  {
780  $title_formats = $asset->attr('view_title_formats');
781  if ($asset->writeAccess('attributes')) {
782  text_box($prefix.'_title_format_'.$view, $title_formats[$view]);
783  ?><div class="sq-backend-smallprint"><?php echo translate('cal_page_paint_title_format', 'http://au.php.net/manual/en/function.date.php'); ?></div><?php
784  } else {
785  echo $title_formats[$view].' ("'.date($title_formats[$view], ((($view == 'week') && (date('D') != 'Mon')) ? strtotime('last Monday') : time())).'")';
786  }
787  return TRUE;
788 
789  }//end _paintTitleFormat()
790 
791 
803  function _processTitleFormat($view, &$asset, &$o, $prefix)
804  {
805  if (isset($_POST[$prefix.'_title_format_'.$view])) {
806  $title_formats = $asset->attr('view_title_formats');
807  $title_formats[$view] = $_POST[$prefix.'_title_format_'.$view];
808  $asset->setAttrValue('view_title_formats', $title_formats);
809  return TRUE;
810  } else {
811  return FALSE;
812  }
813 
814  }//end _processTitleFormat()
815 
816 
829  function _paintHeadingFormat($view, $time_period, &$asset, &$o, $prefix)
830  {
831  $heading_index = $view.'_'.$time_period;
832  $heading_formats = $asset->attr('view_heading_formats');
833  if ($asset->writeAccess('attributes')) {
834  text_box($prefix.'_heading_format_'.$heading_index, $heading_formats[$heading_index]);
835  ?><div class="sq-backend-smallprint"><?php echo translate('cal_page_paint_heading_format', 'http://au.php.net/manual/en/function.date.php'); ?><?php
836  } else {
837  echo $heading_formats[$heading_index].' ("'.date($heading_formats[$heading_index], ((($view == 'week') && (date('D') != 'Mon')) ? strtotime('last Monday') : time())).'")';
838  }
839  return TRUE;
840 
841  }//end _paintHeadingFormat()
842 
843 
856  function _processHeadingFormat($view, $time_period, &$asset, &$o, $prefix)
857  {
858  $heading_index = $view.'_'.$time_period;
859  if (isset($_POST[$prefix.'_heading_format_'.$heading_index])) {
860  $heading_formats = $asset->attr('view_heading_formats');
861  $heading_formats[$heading_index] = $_POST[$prefix.'_heading_format_'.$heading_index];
862  $asset->setAttrValue('view_heading_formats', $heading_formats);
863  return TRUE;
864  } else {
865  return FALSE;
866  }
867 
868  }//end _processHeadingFormat()
869 
870 
882  function _paintNavigationLimit($view, &$asset, &$o, $prefix)
883  {
884  $navi_limit = $asset->attr($view.'_navi_limit');
885  if ($asset->writeAccess('attributes')) {
886  text_box($prefix.$view.'_limit_backward', $navi_limit['backward'],2,2);
887  label('&nbsp;'.translate('cal_page_navi_limit_'.$view).' backward&nbsp;',$prefix.$view.'_limit_backward');
888  text_box($prefix.$view.'_limit_forward', $navi_limit['forward'],2,2);
889  label('&nbsp;'.translate('cal_page_navi_limit_'.$view).' forward&nbsp;',$prefix.$view.'_limit_forward');
890  } else {
891  echo $navi_limit['forward'].' '.translate('cal_page_navi_limit_'.$view).' forward&nbsp;, '.$navi_limit['backward'].' '.translate('cal_page_navi_limit_'.$view).' backward';
892  }
893  return TRUE;
894 
895  }//end _paintNavigationLimit()
896 
897 
909  function _processNavigationLimit($view, &$asset, &$o, $prefix)
910  {
911  $navi_limit = $asset->attr($view.'_navi_limit');
912  if (($_POST[$prefix.$view.'_limit_forward'] == $navi_limit['forward']) && ($_POST[$prefix.$view.'_limit_backward'] == $navi_limit['backward'])) {
913  return FALSE;
914  } else {
915  if (isset($_POST[$prefix.$view.'_limit_forward'])) {
916  $navi_limit['forward'] = $_POST[$prefix.$view.'_limit_forward'];
917  }
918  if (isset($_POST[$prefix.$view.'_limit_backward'])) {
919  $navi_limit['backward'] = $_POST[$prefix.$view.'_limit_backward'];
920  }
921  $asset->setAttrValue($view.'_navi_limit', $navi_limit);
922  return TRUE;
923  }
924 
925  }//end _processNavigationLimit()
926 
927 
938  function paintColumnNodes(&$asset, &$o, $prefix)
939  {
940  $write_access = $asset->writeAccess('attributes');
941  $all_root_nodes = $asset->attr('root_nodes');
942  $current_column_nodes = $asset->attr('columnise_day_view_by_root_node');
943  $location_info = $GLOBALS['SQ_SYSTEM']->am->getAssetInfo(array_keys($all_root_nodes));
944  ?>
945  <table class="sq-backend-table">
946  <tr>
947  <td class="sq-backend-table-header"><?php echo translate('cal_page_event_source'); ?></td>
948  <td class="sq-backend-table-header"><?php echo translate('cal_page_show_in_own_column_question'); ?></td>
949  </tr>
950  <?php
951  foreach ($all_root_nodes as $id => $details) {
952  ?>
953  <tr>
954  <td class="sq-backend-table-cell"><?php echo get_asset_tag_line($id); ?></td>
955  <td class="sq-backend-table-cell">
956  <?php
957  if ($write_access) {
958  check_box($prefix.'_root_nodes_columnised['.$id.']', '1', in_array($id, $current_column_nodes));
959  } else {
960  echo '<img src="'.sq_web_path('lib').'/web/images/'.(in_array($id, $current_column_nodes) ? 'tick' : 'cross').'.gif" width="15" height="15" />';
961  }
962  ?>
963  </td>
964  </tr>
965  <?php
966  }
967  ?>
968  <tr>
969  <td class="sq-backend-table-cell">'Other'</td>
970  <td class="sq-backend-table-cell">
971  <?php
972  if ($write_access) {
973  check_box($prefix.'_root_nodes_columnised[other]', '1', in_array('*', $current_column_nodes));
974  } else {
975  echo '<img src="'.sq_web_path('lib').'/web/images/'.(in_array('*', $current_column_nodes) ? 'tick' : 'cross').'.gif" width="15" height="15" />';
976  }
977  ?>
978  </td>
979  </tr>
980  </table>
981  <?php
982 
983  }//end paintColumnNodes()
984 
985 
996  function processColumnNodes(&$asset, &$o, $prefix)
997  {
998  $val = Array();
999  if (isset($_REQUEST[$prefix.'_root_nodes_columnised']) && is_array($_REQUEST[$prefix.'_root_nodes_columnised'])) {
1000  if ((isset($_REQUEST[$prefix.'_root_nodes_columnised']['other']) && $_REQUEST[$prefix.'_root_nodes_columnised']['other'])) {
1001  $val = Array('*');
1002  unset($_REQUEST[$prefix.'_root_nodes_columnised']['other']);
1003  }
1004  foreach ($_REQUEST[$prefix.'_root_nodes_columnised'] as $id => $status) {
1005  if ($status) $val[] = $id;
1006  }
1007  }
1008  if (empty($val)) $val = Array('*');
1009 
1010  return $asset->setAttrValue('columnise_day_view_by_root_node', $val);
1011 
1012  }//end processColumnNodes()
1013 
1014 
1025  function paintYearNaviLimit(&$asset, &$o, $prefix)
1026  {
1027  return $this->_paintNavigationLimit('year', $asset, $o, $prefix);
1028 
1029  }//end paintYearNaviLimit()
1030 
1031 
1042  function processYearNaviLimit(&$asset, &$o, $prefix)
1043  {
1044  return $this->_processNavigationLimit('year', $asset, $o, $prefix);
1045 
1046  }//end processYearNaviLimit()
1047 
1048 
1059  function paintMonthNaviLimit(&$asset, &$o, $prefix)
1060  {
1061  return $this->_paintNavigationLimit('month', $asset, $o, $prefix);
1062 
1063  }//end paintMonthNaviLimit()
1064 
1065 
1076  function processMonthNaviLimit(&$asset, &$o, $prefix)
1077  {
1078  return $this->_processNavigationLimit('month', $asset, $o, $prefix);
1079 
1080  }//end processMonthNaviLimit()
1081 
1082 
1093  function paintWeekNaviLimit(&$asset, &$o, $prefix)
1094  {
1095  return $this->_paintNavigationLimit('week', $asset, $o, $prefix);
1096 
1097  }//end paintWeekNaviLimit()
1098 
1099 
1110  function processWeekNaviLimit(&$asset, &$o, $prefix)
1111  {
1112  return $this->_processNavigationLimit('week', $asset, $o, $prefix);
1113 
1114  }//end processWeekNaviLimit()
1115 
1116 
1127  function paintDayNaviLimit(&$asset, &$o, $prefix)
1128  {
1129  return $this->_paintNavigationLimit('day', $asset, $o, $prefix);
1130 
1131  }//end paintDayNaviLimit()
1132 
1133 
1144  function processDayNaviLimit(&$asset, &$o, $prefix)
1145  {
1146  return $this->_processNavigationLimit('day', $asset, $o, $prefix);
1147 
1148  }//end processDayNaviLimit()
1149 
1150 
1163  function paintUseNoResultBodycopy(&$asset, &$o, $prefix)
1164  {
1165  $write_access = $asset->writeAccess('links');
1166  $current_value = $asset->attr('use_no_results_body_copy');
1167  $options = Array(1 => 'Yes', 0 => 'No');
1168 
1169  if ($write_access) {
1170  combo_box($prefix.'_use_no_results_body_copy', $options, FALSE, $current_value);
1171  } else {
1172  echo $options[$current_value];
1173  }
1174 
1175  return $write_access;
1176 
1177  }//end paintUseBodycopy()
1178 
1179 
1190  function processUseNoResultBodycopy(&$asset, &$o, $prefix)
1191  {
1192  if (isset($_POST[$prefix.'_use_no_results_body_copy'])) {
1193  if ($asset->createNoResultsBodycopy()) {
1194  $asset->setAttrValue('use_no_results_body_copy',$_POST[$prefix.'_use_no_results_body_copy']);
1195  $asset->saveAttributes();
1196  }
1197  }
1198 
1199  return TRUE;
1200 
1201  }//end processUseBodycopy()
1202 
1203 }//end class
1204 ?>