Changeset 770

Show
Ignore:
Timestamp:
09/18/08 20:19:40 (2 months ago)
Author:
aarkerio
Message:

Update wiki

Location:
trunk/app
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • trunk/app/config/sql/postgresql/wikis.sql

    r596 r770  
    88  user_id int NOT NULL REFERENCES users(id), 
    99  subject_id smallint NOT NULL REFERENCES subjects(id), 
     10  vclassroom_id int NOT NULL REFERENCES vclassrooms(id), 
    1011  ip varchar(15) NOT NULL, 
    1112  revision smallint NOT NULL, 
  • trunk/app/controllers/wikis_controller.php

    r766 r770  
    6161 
    6262   $this->set('subjects', Set::combine($this->Wiki->Subject->find('all', array('order' => 'title')), "{n}.Subject.id","{n}.Subject.title")); 
    63        
     63   $this->set('vclassrooms', Set::combine($this->Wiki->Vclassroom->find('all', array('order'=>'name', 'conditions'=>array('Vclassroom.user_id'=>$this->Auth->user('id'), 'Vclassroom.status'=>1))), "{n}.Vclassroom.id","{n}.Vclassroom.name")); 
     64 
    6465   if ( !empty($this->data['Wiki']) ): 
    6566   
     
    100101     
    101102  $this->set('subjects', Set::combine($this->Wiki->Subject->find('all', array('order' => 'title')), "{n}.Subject.id","{n}.Subject.title")); 
    102  
    103   //$this->set('subjects', Set::combine($this->Wiki->Subject->find('all', array('order' => 'title')), "{n}.Subject.id","{n}.Subject.title")); 
     103   $this->set('vclassrooms', Set::combine($this->Wiki->Vclassroom->find('all', array('order'=>'name', 'conditions'=>array('Vclassroom.user_id'=>$this->Auth->user('id'), 'Vclassroom.status'=>1))), "{n}.Vclassroom.id","{n}.Vclassroom.name")); 
    104104      
    105105  if (empty($this->data['Wiki'])): 
  • trunk/app/models/wiki.php

    r597 r770  
    1111  public $name = 'Wiki'; 
    1212   
    13       public $belongsTo = array('User' => 
     13  public $belongsTo = array('User' => 
    1414                           array('className'  => 'User', 
    1515                                 'conditions' => '', 
     
    2222                                 'order'      => null, 
    2323                                 'foreignKey' => 'subject_id' 
     24                 ), 
     25                           'Vclassroom' => 
     26                               array('className'  => 'Vclassroom', 
     27                                     'conditions' => '', 
     28                                     'order'      => null, 
     29                                     'foreignKey' => 'vclassroom_id' 
    2430                           ) 
    25                      ); 
    26  
    27        /* public $validate = array( 
    28         'login' => array('alphanumeric' => array( 
    29                                                  'rule' => 'alphaNumeric', 
    30                                              'required' => true, 
    31                                                          'message' => 'Alphabets and numbers only' 
    32                                    ), 
    33                                 'between' => array( 
    34                                            'rule' => array('between', 5, 15), 
    35                                                                                'message' => 'Between 5 to 15 characters' 
    36                                            ) 
    37                                 ), 
    38                        'password' => array( 
    39                                    'rule' => array('minLength', '8'), 
    40                                                                'message' => 'Mimimum 8 characters long' 
    41                                    ), 
    42                        'email' => 'email', 
    43                        'born' => array( 
    44                                'rule' => 'date', 
    45                                'message' => 'Enter a valid date', 
    46                                                            'allowEmpty' => true 
    47                                ) 
    48                        ); */ 
     31                  ); 
    4932} 
    5033?> 
  • trunk/app/plugins/wiki/controllers/wikis_controller.php

    r769 r770  
    3232class WikisController extends WikiAppController { 
    3333 
    34     var $name = 'Wikis'; 
    35     var $helpers = array('Html', 'Form' ); 
     34 public $name = 'Wikis'; 
     35 public $helpers = array('Html', 'Form' ); 
    3636 
    37     function _setActiveCourse() { 
    38         if (!isset($this->params['named']['course_id']) && isset($this->params['named']['wiki_id'])) { 
    39             $this->activeCourse = $this->Wiki->field('course_id', array('id' => $this->params['named']['wiki_id'])); 
    40         } else 
    41             parent::_setActiveCourse(); 
    42     } 
     37 public function index()  
     38 { 
     39    $this->Wiki->recursive = 0; 
     40    $this->set('wikis', $this->paginate()); 
     41 } 
    4342 
    44     function index() { 
    45         $this->Wiki->recursive = 0; 
    46         $this->set('wikis', $this->paginate()); 
    47     } 
    48  
    49     function view($id = null) { 
    50         if (!$id && !isset($this->params['named']['course_id'])) { 
    51             $this->Session->setFlash(__('Invalid Wiki',true), 'default', array('class' => 'error')); 
    52             $this->redirect(array('action'=>'index'), null, true); 
    53         } 
    54         $wiki = null; 
    55         $course_id = $this->params['named']['course_id']; 
    56         $this->Wiki->contain('Entry(id,title,slug,revision,updated)'); 
     43 public function view($id = null)  
     44 { 
     45        $this->Wiki->contain('Entry(id,title,slug,revision,updated)'); 
    5746        if (!$id){ 
    5847            $wiki = $this->Wiki->findByCourseId($course_id); 
     
    7968        $main = $this->Wiki->mainPage($wiki['Wiki']['id']); 
    8069        $this->set(array('data' => $wiki, 'main' => $main['Entry'])); 
    81     } 
     70  } 
    8271 
    83     function add() {  
    84         if (!empty($this->data)) { 
    85             $this->Wiki->create(); 
    86             if ($this->Wiki->save($this->data)) { 
    87                 $this->Session->setFlash(__('The Wiki has been saved', true), 'default', array('class' => 'success')); 
    88                 $this->redirect(array('action'=>'index'), null, true); 
    89             } else { 
    90                 $this->Session->setFlash(__('The Wiki could not be saved. Please, try again',true), 'default', array('class' => 'error')); 
    91             } 
    92         } 
    93         $courses = @$this->Wiki->Course->generateList(); 
    94         $this->set(compact('courses')); 
    95     } 
     72  public function add()  
     73  {  
     74    if (!empty($this->data)):   
     75        if ($this->Wiki->save($this->data)): 
     76          $this->Session->setFlash(__('The Wiki has been saved', true), 'default', array('class' => 'success')); 
     77          $this->redirect(array('action'=>'index'), null, true); 
     78        else: 
     79          $this->Session->setFlash(__('The Wiki could not be saved. Please, try again',true), 'default', array('class' => 'error')); 
     80    endif; 
     81    endif; 
     82 } 
    9683 
    97     function edit($id = null) { 
    98         if (isset($this->params['named']['wiki_id'])) { 
    99             $id = $this->params['named']['wiki_id']; 
    100         } 
    101         if (!$id && empty($this->data)) { 
    102             $this->Session->setFlash(__('Invalid Wiki',true), 'default', array('class' => 'error')); 
    103             $this->redirect(array('action'=>'index'), null, true); 
    104         } 
    105         if (!empty($this->data)) { 
    106             if ($this->Wiki->save($this->data)) { 
    107                 $this->Session->setFlash(__('The Wiki has been saved',true), 'default', array('class' => 'success')); 
    108                 $this->redirect(array('action'=>'view', 'course_id' => $this->Wiki->field('course_id')), null, true); 
    109             } else { 
    110                 $this->Session->setFlash(__('The Wiki could not be saved. Please, try again',true), 'default', array('class' => 'error')); 
    111             } 
    112         } 
    113         if (empty($this->data)) { 
    114             $this->data = $this->Wiki->read(null, $id); 
    115         } 
    116         $this->set(compact('courses')); 
    117     } 
     84 public function edit($id = null)  
     85 { 
     86   if (!empty($this->data)): 
     87     if ($this->Wiki->save($this->data)): 
     88      $this->Session->setFlash(__('The Wiki has been saved',true), 'default', array('class' => 'success')); 
     89          $this->redirect(array('action'=>'view', 'course_id' => $this->Wiki->field('course_id')), null, true); 
     90     else: 
     91          $this->Session->setFlash(__('The Wiki could not be saved. Please, try again',true), 'default', array('class' => 'error')); 
     92     endif; 
     93   else: 
     94       $this->data = $this->Wiki->read(null, $id); 
     95   endif; 
     96  } 
    11897 
    119     function delete($id = null) { 
    120         if (!$id) { 
    121             $this->Session->setFlash(__('Invalid id for Wiki',true), 'default', array('class' => 'error')); 
    122             $this->redirect(array('action'=>'index'), null, true); 
    123         } 
    124         if ($this->Wiki->del($id)) { 
    125             $this->Session->setFlash(__('Wiki deleted',true), 'default', array('class' => 'error')); 
    126             $this->redirect(array('action'=>'index'), null, true); 
    127         } 
    128     } 
    129  
     98 public function delete($wiki_id = null)  
     99 { 
     100   if ($this->Wiki->del($wiki_id)): 
     101    $this->Session->setFlash(__('Wiki deleted',true), 'default', array('class' => 'error')); 
     102    $this->redirect(array('action'=>'index'), null, true); 
     103   endif; 
     104 } 
    130105} 
    131106?> 
  • trunk/app/views/wikis/admin_add.ctp

    r764 r770  
    33       <legend><?php __('Add Wiki');?></legend> 
    44<?php   
    5 echo $html->div('optional',$form->input('Wiki.title', array('size'=>60, 'maxlength'=>80))); 
    6 echo $html->div('optional',$form->label('Wiki.subject_id', __('Subject', true)).$form->select('Wiki.subject_id', $subjects, null, null, false)); 
    7 echo $html->div('optional',$form->label('Wiki.content', 'Content').$form->textarea('Wiki.content', array('cols' => 90, 'rows' => 20))); 
    8 echo $html->div('optional',$form->label('Wiki.status', __('Published', true)).$form->checkbox('Wiki.status', array('value'=>1))); 
     5echo $form->input('Wiki.title', array('size'=>60, 'maxlength'=>80)); 
     6echo $form->label('Wiki.subject_id', __('Subject', true)).$form->select('Wiki.subject_id', $subjects, null, null, false); 
     7echo $form->label('Wiki.vclassroom_id', __('vGroup', true)).$form->select('Wiki.vclassroom_id', $vclassrooms, null, null, false); 
     8echo $form->label('Wiki.content', 'Content').$form->textarea('Wiki.content', array('cols' => 90, 'rows' => 20)); 
     9echo $form->label('Wiki.status', __('Published', true)).$form->checkbox('Wiki.status', array('value'=>1)); 
    910 
    1011echo $html->div('submit', $form->end(__('Save', true))); 
  • trunk/app/views/wikis/admin_edit.ctp

    r767 r770  
    99<?php   
    1010echo $form->input('Wiki.title', array('size' => 60, 'maxlength'=>80)); 
     11 
    1112echo $form->label('Wiki.subject_id', __('Subject', true)); 
    1213echo $form->select('Wiki.subject_id', $subjects, null, null, false); 
     14 
     15echo $form->label('Wiki.vclassroom_id', __('vGroup', true)); 
     16echo $form->select('Wiki.vclassroom_id', $vclassrooms, null, null, false); 
     17 
    1318echo $this->element('wikibar'); 
    1419echo $form->textarea('Wiki.content', array('cols'=>100,'rows' =>20, 'class'=>'wikitext'));