public function getTranslateSlide($user_id = false, $slide_revision_id = false, $start, $end, $keywords = '') { if ($user_id != false || $slide_revision_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 translated_from_revision IS NOT 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 translated_from_revision IS NOT NULL AND timestamp >= "' . $start . '" AND timestamp < "' . $end . '"', array('user_id' => $user_id)); } if (count($result)) { foreach ($result as $row) { $based_on = new Slide(); $based_on->id = $row['translated_from_revision']; $based_on->slide_id = $based_on->getBasicId(); $based_on->language = $based_on->getLanguage(); $slide = new Slide(); $slide->createFromIDLite($row['id']); if ($slide->title == "") { $slide->title = "Untitled"; } $slide->language = $slide->getLanguage(); $activity = new Activity($row['timestamp'], $user, 'translated_slide', $slide, $based_on); $activities[] = $activity; } } } } else { $slide = new Slide(); $slide->createFromIDLite($slide_revision_id); $slide->title = $slide->getTitle(); if ($slide->title == "") { $slide->title = "Untitled"; } $result = $this->dbQuery('SELECT * FROM slide_revision WHERE translated_from_revision=:slide_revision_id AND timestamp >= "' . $start . '" AND timestamp < "' . $end . '"', array('slide_revision_id' => $slide_revision_id)); if (count($result)) { foreach ($result as $row) { $translation = new Slide(); $translation->id = $row['id']; $translation->slide_id = $translation->getBasicID(); if ($translation->slide_id != $slide->slide_id) { $user = new User(); $user->id = $row['user_id']; $user->getUsername(); $translation->createFromIDLite($translation->id); $translation->title = $translation->getTitle(); if ($translation->title == '') { $translation->title = 'Untitled'; } $translation->language = $translation->getLanguage(); $activity = new Activity($translation->revisionTime, $user, 'translated_slide', $slide, $translation); $activities[] = $activity; } } } } if (count($activities)) { foreach ($activities as $activity) { $this->activities[] = $activity; } } }