Esempio n. 1
0
 public function getCreateSlide($user_id = false, $slide_id = false, $start, $end, $keywords = '')
 {
     if ($user_id != false || $slide_id != false) {
         $this->initConnection();
         $activities = array();
         $result = array();
         if ($user_id) {
             $user = new User();
             $user->id = $user_id;
             $user->getUsername();
             if (strlen($keywords)) {
                 $result = $this->dbQuery('SELECT * FROM slide_revision WHERE user_id=:user_id AND based_on IS NULL AND translated_from_revision IS NULL AND MATCH (slide_revision.content) AGAINST (\'' . $keywords . '*\' IN BOOLEAN MODE)', array('user_id' => $user_id));
             } else {
                 $result = $this->dbQuery('SELECT * FROM slide_revision WHERE user_id=:user_id AND based_on IS NULL AND translated_from_revision IS NULL AND timestamp >= "' . $start . '" AND timestamp < "' . $end . '"', array('user_id' => $user_id));
             }
             if (count($result)) {
                 foreach ($result as $row) {
                     $slide = new Slide();
                     $slide->id = $row['id'];
                     $slide->slide_id = $slide->getBasicId();
                     $slide->id = $slide->getLastRevisionID();
                     $slide->createFromIDLite($slide->id);
                     $slide->title = $slide->getTitle();
                     if ($slide->title == "") {
                         $slide->title = "Untitled";
                     }
                     $activity = new Activity($row['timestamp'], $user, 'created_slide', $slide);
                     $activities[] = $activity;
                 }
             }
         } else {
             $result = $this->dbQuery('SELECT * FROM slide_revision WHERE slide=:slide_id AND timestamp >= "' . $start . '" AND timestamp < "' . $end . '"', array('slide_id' => $slide_id));
             if (count($result)) {
                 foreach ($result as $row) {
                     $slide = new Slide();
                     $slide->createFromIDLite($row['id']);
                     $slide->title = $slide->getTitle();
                     if ($slide->title == "") {
                         $slide->title = "Untitled";
                     }
                     $user = new User();
                     $user->id = $row['user_id'];
                     $user->getUsername();
                     if ($row['translated_from_revision']) {
                         $based_on = new Slide();
                         $based_on->id = $row['translated_from_revision'];
                         $based_on->slide_id = $based_on->getBasicId();
                         $based_on->language = $based_on->getLanguage();
                         $activity = new Activity($row['timestamp'], $user, 'translated_slide_from', $slide, $based_on);
                     } else {
                         if (!$row['based_on']) {
                             $activity = new Activity($row['timestamp'], $user, 'created_slide', $slide);
                         } else {
                             $based_on = new Slide();
                             $based_on->id = $row['based_on'];
                             $based_on->slide_id = $based_on->getBasicId();
                             $based_on->translator_id = $based_on->getTranslatorId();
                             if ($based_on->translator_id == $row['translator_id']) {
                                 $activity = new Activity($row['timestamp'], $user, 'created_slide_revision', $slide);
                             } else {
                                 $activity = new Activity($row['timestamp'], $user, 'translated_slide_revision', $slide);
                             }
                         }
                     }
                     $activities[] = $activity;
                 }
             }
         }
         if (count($activities)) {
             foreach ($activities as $activity) {
                 $this->activities[] = $activity;
             }
         }
     }
 }
Esempio n. 2
0
 public function reAssign($new_slide_id)
 {
     $slide = new Slide();
     $slide->id = $new_slide_id;
     $new_basic_id = $slide->getBasicId();
     $this->dbQuery('UPDATE questions SET item_id = ' . $new_basic_id . ' WHERE id=' . $this->id);
 }