Example #1
0
 /**
  * @abstract Add a new page
  * @access public
  */
 public function add()
 {
     $form = new Form('pages');
     // process the form if submitted
     if ($form->isSubmitted()) {
         $form->setCurrentValue('page_sort_order', $model->quickValue('SELECT MAX(page_sort_order) FROM pages', 'MAX(page_sort_order)') + 1);
         // form field validation
         if (!$form->isFilled('page_title')) {
             $form->addError('page_title', 'You must enter a page title.');
         }
         // if we have no errors, save the record
         if (!$form->error()) {
             // set the link text field to the page title if blank
             if (!$form->isFilled('page_link_text')) {
                 $form->setCurrentValue('page_link_text', $form->cv('page_title'));
             }
             return $form->save();
         }
     }
     return false;
 }
Example #2
0
 /**
  * @abstract Edits an event recprd
  * @param integer $id
  * @access public
  */
 public function edit($id = false)
 {
     $form = new Form('courses', $id);
     // grab existing groups settings
     $model = model()->open('course_groups_link');
     $model->where('course_id', $id);
     $group_records = $model->results();
     $groups = array();
     if ($group_records) {
         foreach ($group_records as $course_record) {
             $groups[] = $course_record['group_id'];
         }
     }
     $form->addField('groups', $groups, $groups);
     // proces the form if submitted
     if ($form->isSubmitted()) {
         // validation
         if (!$form->isFilled('title')) {
             $form->addError('title', 'You must enter a course title.');
         }
         // if we have no errors, process sql
         if (!$form->error()) {
             if ($res_id = $form->save($id)) {
                 $id = $id ? $id : $res_id;
                 // update course groups
                 $model->delete('course_groups_link', $id, 'course_id');
                 $groups = $form->cv('groups');
                 foreach ($groups as $group) {
                     $sql = sprintf('INSERT INTO course_groups_link (course_id, group_id) VALUES ("%s", "%s")', $id, $group);
                     $model->query($sql);
                 }
                 // if successful insert, redirect to the list
                 sml()->say('The course has successfully been saved.');
                 router()->redirect('view');
             }
         }
     }
     $data['form'] = $form;
     template()->addView(template()->getTemplateDir() . DS . 'header.tpl.php');
     template()->addView(template()->getModuleTemplateDir() . DS . 'edit.tpl.php');
     template()->addView(template()->getTemplateDir() . DS . 'footer.tpl.php');
     template()->display($data);
 }