/**
     * Construct a Zend_Search_Lucene_Document object out of a document db row.
     * 
     * @global string $urlServer
     * @param  object  $docu
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($docu) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'doc_' . $docu->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $docu->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'doc', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $docu->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('title', Indexer::phonetics($docu->title), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('content', Indexer::phonetics($docu->description), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('filename', Indexer::phonetics($docu->filename), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('comment', Indexer::phonetics($docu->comment), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('creator', Indexer::phonetics($docu->creator), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('subject', Indexer::phonetics($docu->subject), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('author', Indexer::phonetics($docu->author), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('visible', $docu->visible, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('public', $docu->public, $encoding));

        $urlAction = ($docu->format == '.dir') ? 'openDir' : 'download';
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer
                        . 'modules/document/index.php?course=' . course_id_to_code($docu->course_id)
                        . '&' . $urlAction . '=' . $docu->path, $encoding));

        return $doc;
    }
示例#2
0
function getSidebarNotifications() {
    global $modules, $admin_modules, $theme_settings, $urlAppend;

    $notifications_html = array();
    if (isset($_GET['courseIDs']) and count($_GET['courseIDs'])) {
        $t = new Template();
        $t->set_var('sideBarCourseNotifyBlock', $_SESSION['template']['sideBarCourseNotifyBlock']);
        foreach ($_GET['courseIDs'] as $id) {
            $t->set_var('sideBarCourseNotify', '');
            $notifications = get_course_notifications($id);
            $course_code = course_id_to_code($id);
            foreach ($notifications as $n) {
                $modules_array = (isset($modules[$n->module_id]))? $modules: $admin_modules;
                if (isset($modules_array[$n->module_id]) &&
                    isset($modules_array[$n->module_id]['image']) &&
                    isset($theme_settings['icon_map'][$modules_array[$n->module_id]['image']])) {
                    $t->set_var('sideBarCourseNotifyIcon', $theme_settings['icon_map'][$modules_array[$n->module_id]['image']]);
                    $t->set_var('sideBarCourseNotifyCount', $n->notcount);
                    $t->set_var('sideBarCourseNotifyTitle', q($modules_array[$n->module_id]['title']));
                    $t->set_var('sideBarCourseNotifyURL', $urlAppend . 'modules/' . $modules_array[$n->module_id]['link'] .
                                                    '/?course=' . $course_code);
                    $t->parse('sideBarCourseNotify', 'sideBarCourseNotifyBlock', true);
                }
            }
            $notifications_html[$id] = $t->get_var('sideBarCourseNotify');
        }
    }
    return $notifications_html;
}
示例#3
0
    /**
     * Construct a Zend_Search_Lucene_Document object out of a video db row.
     * 
     * @global string $urlServer
     * @param  object  $video
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($video) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'video_' . $video->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $video->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'video', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $video->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('title', Indexer::phonetics($video->title), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('content', Indexer::phonetics($video->description), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer . 'modules/video/file.php?course=' . course_id_to_code($video->course_id) . '&id=' . $video->id, $encoding));

        return $doc;
    }
    /**
     * Construct a Zend_Search_Lucene_Document object out of an announcement db row.
     * 
     * @global string $urlServer
     * @param  object  $announce
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($announce) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'announce_' . $announce->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $announce->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'announce', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $announce->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('title', Indexer::phonetics($announce->title), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('content', Indexer::phonetics(strip_tags($announce->content)), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('visible', $announce->visible, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer . 'modules/announcements/index.php?course=' . course_id_to_code($announce->course_id) . '&an_id=' . $announce->id, $encoding));

        return $doc;
    }
    /**
     * Construct a Zend_Search_Lucene_Document object out of an exercise db row.
     * 
     * @global string $urlServer
     * @param  object  $exercise
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($exercise) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'exercise_' . $exercise->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $exercise->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'exercise', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $exercise->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('title', Indexer::phonetics($exercise->title), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('content', Indexer::phonetics(strip_tags($exercise->description)), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('visible', $exercise->active, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer . 'modules/exercise/exercise_submit.php?course=' . course_id_to_code($exercise->course_id) . '&exerciseId=' . $exercise->id, $encoding));

        return $doc;
    }
    /**
     * Construct a Zend_Search_Lucene_Document object out of a forum topic db row.
     * 
     * @global string $urlServer
     * @param  object  $ftopic
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($ftopic) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'ftopic_' . $ftopic->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $ftopic->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'ftopic', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $ftopic->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('forumid', $ftopic->forum_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('title', Indexer::phonetics($ftopic->title), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer . 'modules/forum/viewforum.php?course=' . course_id_to_code($ftopic->course_id)
                        . '&forum=' . intval($ftopic->forum_id), $encoding));

        return $doc;
    }
    /**
     * Construct a Zend_Search_Lucene_Document object out of a forum post row.
     * 
     * @global string $urlServer
     * @param  object  $fpost
     * @return Zend_Search_Lucene_Document
     */
    protected function makeDoc($fpost) {
        global $urlServer;
        $encoding = 'utf-8';

        $doc = new Zend_Search_Lucene_Document();
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pk', 'fpost_' . $fpost->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('pkid', $fpost->id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('doctype', 'fpost', $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('courseid', $fpost->course_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Keyword('topicid', $fpost->topic_id, $encoding));
        $doc->addField(Zend_Search_Lucene_Field::Text('content', Indexer::phonetics(strip_tags($fpost->post_text)), $encoding));
        $doc->addField(Zend_Search_Lucene_Field::UnIndexed('url', $urlServer . 'modules/forum/viewtopic.php?course=' . course_id_to_code($fpost->course_id)
                        . '&topic=' . intval($fpost->topic_id)
                        . '&forum=' . intval($fpost->forum_id), $encoding));

        return $doc;
    }
示例#8
0
 /**
  * Refresh the hierarchy nodes (departments) that a course belongs to. All previous belonging
  * nodes get deleted and then refreshed with the ones given as array arguments.
  *
  * @param int   $id          - Id for a given course
  * @param array $departments - Array containing the node ids that the given course should belong to
  */
 public function refresh($id, $departments)
 {
     if ($departments != null) {
         Database::get()->query("DELETE FROM {$this->departmenttable} WHERE course = ?d", $id);
         foreach (array_unique($departments) as $key => $department) {
             Database::get()->query("INSERT INTO {$this->departmenttable} (course, department) VALUES (?d,?d)", $id, $department);
         }
     }
     // refresh index
     global $webDir;
     // required for indexer
     require_once 'modules/search/indexer.class.php';
     Indexer::queueAsync(Indexer::REQUEST_STORE, Indexer::RESOURCE_COURSE, $id);
     // refresh course metadata
     require_once 'modules/course_metadata/CourseXML.php';
     CourseXMLElement::refreshCourse($id, course_id_to_code($id));
 }
示例#9
0
         $tool_content .= "</table>";
         $found = true;
     }
 }
 // search in links
 if ($links) {
     $linkHits = $idx->searchRaw(LinkIndexer::buildQuery($_POST));
     if (count($linkHits) > 0) {
         $tool_content .= "<script type='text/javascript' src='../auth/sorttable.js'></script>\n                <table width='100%' class='sortable' id='t7' align='left'>\n        <tr>\n                  <th colspan='2' class='left'>{$langLinks}:</th>\n                </tr>";
         $numLine = 0;
         foreach ($linkHits as $linkHit) {
             $link = Database::get()->querySingle("SELECT title, description FROM link WHERE id = ?d", $linkHit->pkid);
             $class = $numLine % 2 ? 'odd' : 'even';
             $tool_content .= "<tr class='{$class}'>\n                    <td width='1' valign='top'><img style='padding-top:3px;' src='{$themeimg}/arrow.png' title='bullet' /></td>\n                    <td>";
             $desc_text = empty($link->description) ? "" : "<span class='smaller'>" . $link->description . "</span>";
             $tool_content .= "<a href='" . $urlServer . "modules/link/go.php?course=" . course_id_to_code($linkHit->courseid) . "&amp;id={$linkHit->pkid}&amp;url=" . urlencode($linkHit->url) . "' target=_blank> " . q($link->title) . "</a> {$desc_text} </td></tr>";
             $numLine++;
         }
         $tool_content .= "</table>";
         $found = true;
     }
 }
 // search in video and videolinks
 if ($video) {
     $videoHits = $idx->searchRaw(VideoIndexer::buildQuery($_POST));
     $vlinkHits = $idx->searchRaw(VideolinkIndexer::buildQuery($_POST));
     if (count($videoHits) > 0) {
         $tool_content .= "<script type='text/javascript' src='../auth/sorttable.js'></script>\n                <table width='99%' class='sortable'  id='t8' align='left'>\n        <tr>\n                  <th colspan='2' class='left'>{$langVideo}:</th>\n                </tr>";
         $numLine = 0;
         foreach ($videoHits as $videoHit) {
             $video = Database::get()->querySingle("SELECT title, description FROM video WHERE id = ?d", $videoHit->pkid);
示例#10
0
/**
 * @global type $webDir
 * @param type $cid
 * @brief Delete course with id = $cid
 */
function delete_course($cid)
{
    global $webDir;
    $course_code = course_id_to_code($cid);
    Database::get()->query("DELETE FROM announcement WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM document WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM ebook_subsection WHERE section_id IN\n                         (SELECT ebook_section.id FROM ebook_section, ebook\n                                 WHERE ebook_section.ebook_id = ebook.id AND\n                                       ebook.course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM ebook_section WHERE id IN\n                         (SELECT id FROM ebook WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM ebook WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE `rating` FROM `rating` INNER JOIN `forum_post` ON `rating`.`rid` = `forum_post`.`id` INNER JOIN `forum_topic`\n                            ON `forum_post`.`topic_id` = `forum_topic`.`id` INNER JOIN `forum` ON `forum`.`id` = `forum_topic`.`forum_id`\n                            WHERE `rating`.`rtype` = ?s AND `forum`.`course_id` = ?d", 'forum_post', $cid);
    Database::get()->query("DELETE `rating_cache` FROM `rating_cache` INNER JOIN `forum_post` ON `rating_cache`.`rid` = `forum_post`.`id` INNER JOIN `forum_topic`\n                            ON `forum_post`.`topic_id` = `forum_topic`.`id` INNER JOIN `forum` ON `forum`.`id` = `forum_topic`.`forum_id`\n                            WHERE `rating_cache`.`rtype` = ?s AND `forum`.`course_id` = ?d", 'forum_post', $cid);
    Database::get()->query("DELETE FROM forum_notify WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE forum_post FROM forum_post INNER JOIN forum_topic ON forum_post.topic_id = forum_topic.id\n                            INNER JOIN forum ON forum_topic.forum_id = forum.id\n                            WHERE forum.course_id = ?d", $cid);
    Database::get()->query("DELETE forum_topic FROM forum_topic INNER JOIN forum ON forum_topic.forum_id = forum.id\n                            WHERE forum.course_id = ?d", $cid);
    Database::get()->query("DELETE FROM forum_category WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM forum WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM forum_user_stats WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM glossary WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM group_members WHERE group_id IN\n                         (SELECT id FROM `group` WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM group_properties WHERE group_id IN\n                         (SELECT id FROM `group` WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM `group` WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM `group_category` WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE `rating` FROM `rating` INNER JOIN `link` ON `rating`.`rid` = `link`.`id`\n                            WHERE `rating`.`rtype` = ?s AND `link`.`course_id` = ?d", 'link', $cid);
    Database::get()->query("DELETE `rating_cache` FROM `rating_cache` INNER JOIN `link` ON `rating_cache`.`rid` = `link`.`id`\n                            WHERE `rating_cache`.`rtype` = ?s AND `link`.`course_id` = ?d", 'link', $cid);
    Database::get()->query("DELETE FROM link WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM link_category WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM agenda WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_review WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM unit_resources WHERE unit_id IN\n                         (SELECT id FROM course_units WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM course_units WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM abuse_report WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_weekly_view_activities WHERE course_weekly_view_id IN\n                                (SELECT id FROM course_weekly_view WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM course_weekly_view WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE `comments` FROM `comments` INNER JOIN `blog_post` ON `comments`.`rid` = `blog_post`.`id`\n                            WHERE `comments`.`rtype` = ?s AND `blog_post`.`course_id` = ?d", 'blogpost', $cid);
    Database::get()->query("DELETE `rating` FROM `rating` INNER JOIN `blog_post` ON `rating`.`rid` = `blog_post`.`id`\n                            WHERE `rating`.`rtype` = ?s AND `blog_post`.`course_id` = ?d", 'blogpost', $cid);
    Database::get()->query("DELETE `rating_cache` FROM `rating_cache` INNER JOIN `blog_post` ON `rating_cache`.`rid` = `blog_post`.`id`\n                            WHERE `rating_cache`.`rtype` = ?s AND `blog_post`.`course_id` = ?d", 'blogpost', $cid);
    Database::get()->query("DELETE FROM `rating` WHERE `rtype` = ?s AND `rid` = ?d", 'course', $cid);
    Database::get()->query("DELETE FROM `rating_cache` WHERE `rtype` = ?s AND `rid` = ?d", 'course', $cid);
    Database::get()->query("DELETE FROM `blog_post` WHERE `course_id` = ?d", $cid);
    // check if we have guest account. If yes delete it.
    $guest_user = Database::get()->querySingle("SELECT user_id FROM course_user WHERE course_id = ?d AND status = ?d", $cid, USER_GUEST);
    if ($guest_user) {
        deleteUser($guest_user->user_id, true);
    }
    Database::get()->query("DELETE FROM course_user WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_department WHERE course = ?d", $cid);
    Database::get()->query("DELETE FROM course WHERE id = ?d", $cid);
    Database::get()->query("DELETE FROM video WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM videolink WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM dropbox_attachment WHERE msg_id IN (SELECT id FROM dropbox_msg WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM dropbox_index WHERE msg_id IN (SELECT id FROM dropbox_msg WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM dropbox_msg WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM lp_asset WHERE module_id IN (SELECT module_id FROM lp_module WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_rel_learnPath_module WHERE learnPath_id IN (SELECT learnPath_id FROM lp_learnPath WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_user_module_progress WHERE learnPath_id IN (SELECT learnPath_id FROM lp_learnPath WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_module WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM lp_learnPath WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM wiki_pages_content WHERE pid IN (SELECT id FROM wiki_pages WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM wiki_pages WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM wiki_acls WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM wiki_properties WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM poll_question_answer WHERE pqid IN (SELECT pqid FROM poll_question WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM poll_answer_record WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM poll_question WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM poll WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM assignment_submit WHERE assignment_id IN (SELECT id FROM assignment WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM assignment_to_specific WHERE assignment_id IN (SELECT id FROM assignment WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM assignment WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_with_questions WHERE question_id IN (SELECT id FROM exercise_question WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_with_questions WHERE exercise_id IN (SELECT id FROM exercise WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_answer WHERE question_id IN (SELECT id FROM exercise_question WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_answer_record WHERE question_id IN (SELECT id FROM exercise_question WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_question WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_question_cats WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_user_record WHERE eid IN (SELECT id FROM exercise WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_module WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_settings WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM tag WHERE id NOT IN(SELECT DISTINCT tag_id FROM tag_element_module WHERE course_id != ?d)", $cid);
    Database::get()->query("DELETE FROM tag_element_module WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM gradebook_book WHERE gradebook_activity_id IN \n                                    (SELECT id FROM gradebook_activities WHERE gradebook_id IN (SELECT id FROM gradebook WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM gradebook_activities WHERE gradebook_id IN (SELECT id FROM gradebook WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM gradebook_users WHERE gradebook_id IN (SELECT id FROM gradebook WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM gradebook WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM attendance_book WHERE attendance_activity_id IN \n                                    (SELECT id FROM attendance_activities WHERE attendance_id IN (SELECT id FROM attendance WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM attendance_activities WHERE attendance_id IN (SELECT id FROM attendance WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM attendance_users WHERE attendance_id IN (SELECT id FROM attendance WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM attendance WHERE course_id = ?d", $cid);
    removeDir("{$webDir}/courses/{$course_code}");
    removeDir("{$webDir}/video/{$course_code}");
    // refresh index
    require_once 'modules/search/indexer.class.php';
    Indexer::queueAsync(Indexer::REQUEST_REMOVEALLBYCOURSE, Indexer::RESOURCE_IDX, $cid);
    Database::get()->query("UPDATE oai_record SET deleted = 1, datestamp = ?t WHERE course_id = ?d", gmdate('Y-m-d H:i:s'), $cid);
}
示例#11
0
 }
 if (isset($_POST['mailing']) and $_POST['mailing']) {
     // send mail to recipients of dropbox file
     if ($course_id != 0 || isset($_POST['course'])) {
         //message in course context
         $c = course_id_to_title($cid);
         $subject_dropbox = "{$c} (" . course_id_to_code($cid) . ") - {$langNewDropboxFile}";
         foreach ($recipients as $userid) {
             if (get_user_email_notification($userid, $cid)) {
                 $linkhere = "<a href='{$urlServer}main/profile/emailunsubscribe.php?cid={$cid}'>{$langHere}</a>.";
                 $unsubscribe = "<br />" . sprintf($langLinkUnsubscribe, $c);
                 $body_dropbox_message = "{$langSender}: " . q($_SESSION['givenname']) . " " . q($_SESSION['surname']) . " <br /><br /> {$subject} <br /><br />" . $_POST['body'] . "<br />";
                 if ($filesize > 0) {
                     $body_dropbox_message .= "<a href='{$urlServer}modules/dropbox/dropbox_download.php?course=" . course_id_to_code($cid) . "&amp;id={$msg->id}'>[{$langAttachedFile}]</a><br /><br />";
                 }
                 $body_dropbox_message .= "{$langNote}: {$langDoNotReply} <a href='{$urlServer}modules/dropbox/index.php?course=" . course_id_to_code($cid) . "'>{$langHere}</a>.<br />";
                 $body_dropbox_message .= "{$unsubscribe} {$linkhere}";
                 $plain_body_dropbox_message = html2text($body_dropbox_message);
                 $emailaddr = uid_to_email($userid);
                 send_mail_multipart('', '', '', $emailaddr, $subject_dropbox, $plain_body_dropbox_message, $body_dropbox_message, $charset);
             }
         }
     } else {
         //message in personal context
         $subject_dropbox = $langNewDropboxFile;
         foreach ($recipients as $userid) {
             if (get_user_email_notification($userid)) {
                 $linkhere = "<a href='{$urlServer}main/profile/profile.php'>{$langHere}</a>.";
                 //$unsubscribe = "<br />" . sprintf($langLinkUnsubscribe, $title);
                 $body_dropbox_message = "{$langSender}: " . q($_SESSION['givenname']) . " " . q($_SESSION['surname']) . " <br /><br /> {$subject} <br /><br />" . $_POST['body'] . "<br />";
                 $body_dropbox_message .= "{$langNote}: {$langDoNotReply} <a href='{$urlServer}modules/dropbox/index.php'>{$langHere}</a>.<br />";
示例#12
0
            <label class='col-sm-2'>$langNo:</label>
            <div class='col-sm-10'>
              <a href='{$urlAppend}main/portfolio.php' class='btn btn-default'><i class='fa fa-reply'></i> $langCancel</a>
            </div>
          </div>
        </form>
      </div>";
} else {
    if (isset($_SESSION['uid']) and $_GET['u'] == $_SESSION['uid']) {
        $q = Database::get()->query("DELETE from course_user
                                    WHERE course_id = ?d
                                    AND user_id = ?d", $cid, $_GET['u']);
        if ($q->affectedRows > 0) {
            Log::record($cid, MODULE_ID_USERS, LOG_DELETE, array('uid' => $_GET['u'],
                                                                 'right' => 0));
            $code = course_id_to_code($cid);
            // clear session access to lesson
            unset($_SESSION['dbname']);
            unset($_SESSION['cid_tmp']);
            unset($_SESSION['courses'][$code]);
            Session::Messages($langCoursDelSuccess, 'alert-success');
            redirect_to_home_page('main/portfolio.php');
        } else {
            $tool_content .= "<div class='alert alert-danger'>$langCoursError</div>";
        }
    }
    $tool_content .= "<br><br><div align=right><a href='../index.php' class=mainpage>$langBack</a></div>";
}

if (isset($_SESSION['uid'])) {
    draw($tool_content, 1);
示例#13
0
                    <div class='panel panel-default'>
                        <div class='panel-heading'>$langMessage</div>
                        <div class='panel-body'>
                            <div class='row  margin-bottom-thin'>
                                <div class='col-xs-12'>
                                    ".standard_text_escape($msg->body)."
                                </div>
                            </div>";
                if ($msg->filename != '') {
                   $out .= "<hr>
                            <div class='row  margin-top-thin'>
                                <div class='col-sm-2'>
                                    $langAttachedFile
                                </div>
                                <div class='col-sm-10'>
                                 <a href=\"dropbox_download.php?course=".course_id_to_code($msg->course_id)."&amp;id=$msg->id\" class=\"outtabs\" target=\"_blank\">$msg->real_filename
                    &nbsp<i class='fa fa-save'></i></a>&nbsp;&nbsp;(".format_file_size($msg->filesize).")
                                </div>
                            </div>";
               }       
               $out .= "</div>
                    </div>";

        $out .= '<script>
            
        $(".row.title-row").next(".row").hide();
        $("#dropboxTabs .nav.nav-tabs").hide();
        
        $(".back_index").on("click", function(){
                                $(".row.title-row").next(".row").show();
                                $("#dropboxTabs .nav.nav-tabs").show();
示例#14
0
 /**
  * Build link to referenced object by a note
  * @param integer $module_id the module id
  * @param $item_type string with values: 'course'|'course_ebook'|'course_event'|'personalevent'|'course_assignment'|'course_document'|'course_link'|'course_exercise'|'course_learningpath'|'course_video'|'course_videolink'|'user'
  * @param integer $item_id the item id in the database
  * @param integer $course_id the course id
  * @return array of modules items as object id and object description 
  */
 public static function item_link($module_id, $item_type, $item_id, $course_id)
 {
     global $urlServer;
     $itemurl = $urlServer;
     if (is_null($item_type) || empty($item_type)) {
         return false;
     }
     $objprops = self::get_module_from_objtype($item_type);
     $res = Database::get()->queryArray("SELECT {$objprops['id_field']} id, {$objprops['title_field']} title FROM {$objprops['objtable']} WHERE {$objprops['id_field']} = ?d", $item_id);
     if ($res) {
         $itemattributes = $res[0];
         if ($item_type == 'course') {
             $itemurl .= $objprops['relative_prefix_path'] . sprintf($objprops['relative_module_path'], course_id_to_code($itemattributes->id));
         } else {
             $itemurl .= $objprops['relative_prefix_path'] . $objprops['relative_module_path'] . '?';
             if (!empty($course_id)) {
                 $itemurl .= $objprops['course_parameter'] . "=" . course_id_to_code($itemattributes->id);
                 if (!empty($objprops['item_id_parameter'])) {
                     $itemurl .= '&amp;';
                 }
             }
             if (!empty($objprops['item_id_parameter'])) {
                 $itemurl .= $objprops['item_id_parameter'] . "=" . $item_id;
             }
         }
         $itemlink = '<a href="';
         $itemlink .= $itemurl;
         $itemlink .= '" target="_blank">';
         $itemlink .= $itemattributes->title;
         $itemlink .= "</a>";
         return $itemlink;
     }
     return false;
 }
示例#15
0
                    &nbsp<i class='fa fa-save'></i></a>&nbsp;&nbsp;(".format_file_size($msg->filesize).")
                                </div>
                            </div>";
               }
               $out .= "</div>
                    </div>";

        /*****Reply Form****/
        if ($msg->course_id == 0 && !$personal_msgs_allowed) {
            //do not show reply form when personal messages are not allowed
        } else {
            $out .= "<div class='form-wrapper' id='replyBox' style='display:none;'>";
            if ($course_id == 0) {
                $out .= "<form method='post' class='form-horizontal' role='form' action='dropbox_submit.php' enctype='multipart/form-data' onsubmit='return checkForm(this)'>";
                if ($msg->course_id != 0) {//thread belonging to a course viewed from the central ui
                    $out .= "<input type='hidden' name='course' value='".course_id_to_code($msg->course_id)."' />";
                }
            } else {
                $out .= "<form method='post' class='form-horizontal' role='form' action='dropbox_submit.php?course=$course_code' enctype='multipart/form-data' onsubmit='return checkForm(this)'>";
            }
            //hidden variables needed in case of a reply
            foreach ($msg->recipients as $rec) {
                if ($rec != $uid) {
                    $out .= "<input type='hidden' name='recipients[]' value='$rec' />";
                }
            }
            $out .= "
                <fieldset>
                <legend>$langReply</legend>
                    <div class='form-group'>
                        <label for='senderName' class='col-sm-2 control-label'>$langSender:</label>
示例#16
0
            $tool_content .= "<script type='text/javascript' src='../auth/sorttable.js'></script>
                <table width='100%' class='sortable' id='t7' align='left'>
        <tr>
                  <th colspan='2' class='left'>$langLinks:</th>
                </tr>";

            $numLine = 0;
            foreach ($linkHits as $linkHit) {
                $link = Database::get()->querySingle("SELECT title, description FROM link WHERE id = ?d", $linkHit->pkid);                

                $class = ($numLine % 2) ? 'odd' : 'even';
                $tool_content .= "<tr class='$class'>
                    <td width='1' valign='top'><img style='padding-top:3px;' src='$themeimg/arrow.png' title='bullet' /></td>
                    <td>";
                $desc_text = (empty($link->description)) ? "" : "<span class='smaller'>" . $link->description . "</span>";
                $tool_content .= "<a href='" . $urlServer . "modules/link/go.php?course=" . course_id_to_code($linkHit->courseid) . "&amp;id=" . getIndirectReference($linkHit->pkid) . "&amp;url=" .
                urlencode($linkHit->url) . "' target=_blank> " . q($link->title) . "</a> $desc_text </td></tr>";
                $numLine++;
            }
            $tool_content .= "</table>";
            $found = true;
        }
    }

    // search in video and videolinks
    if ($video) {
        $videoHits = $idx->searchRaw(VideoIndexer::buildQuery($_POST));
        $vlinkHits = $idx->searchRaw(VideolinkIndexer::buildQuery($_POST));
        if (count($videoHits) > 0) {
            $tool_content .= "<script type='text/javascript' src='../auth/sorttable.js'></script>
                <table width='99%' class='sortable'  id='t8' align='left'>
示例#17
0
     $out .= "<tr id='{$msg->id}'><td>{$langDelete}:</td><td class='delete'><i class='class='fa fa-times'></i></td></tr>";
     if ($msg->course_id != 0 && $course_id == 0) {
         $out .= "<tr><td>{$langCourse}:</td><td><a class=\"outtabs\" href=\"index.php?course=" . course_id_to_code($msg->course_id) . "\">" . course_id_to_title($msg->course_id) . "</a></td></tr>";
     }
     $out .= "<tr><td>{$langDate}:</td><td>" . nice_format(date('Y-m-d H:i:s', $msg->timestamp), true) . "</td></tr>";
     $out .= "<tr><td>{$langSender}:</td><td>" . display_user($msg->author_id, false, false, "outtabs") . "</td></tr>";
     $recipients = '';
     foreach ($msg->recipients as $r) {
         if ($r != $msg->author_id) {
             $recipients .= display_user($r, false, false, "outtabs") . '<br/>';
         }
     }
     $out .= "<tr><td>{$langRecipients}:</td><td>" . $recipients . "</td></tr>";
     $out .= "<tr><td>{$langMessage}:</td><td id='out_msg_body'>" . standard_text_escape($msg->body) . "</td></tr>";
     if ($msg->filename != '') {
         $out .= "<tr><td>{$langAttachedFile}</td><td><a href=\"dropbox_download.php?course=" . course_id_to_code($msg->course_id) . "&amp;id={$msg->id}\" class=\"outtabs\" target=\"_blank\">{$msg->real_filename}\r\n            <img class='outtabs' src='{$themeimg}/save.png' /></a>&nbsp;&nbsp;(" . format_file_size($msg->filesize) . ")</td></tr>";
     }
     $out .= "</table><br/>";
     $out .= '<script>
     $(function() {
     $("#out_msg_body").find("a").addClass("outtabs");          
                   
     $(".delete").click(function() {
         if (confirm("' . $langConfirmDelete . '")) {
         var rowContainer = $(this).parent().parent();
                 var id = rowContainer.attr("id");
                 var string = \'mid=\'+ id;
 
                 $.ajax({
                    type: "POST",
                    url: "ajax_handler.php",
示例#18
0
     </a><span class='smaller'>&nbsp;&nbsp;(".format_file_size($msg->filesize).")</span><br />";
 } else {
     $filename = '';
 }
 
 $i = 0;
 
 if ($mbox_type == 'inbox') {
     $td[$i++] = "<i class='fa $envelove_icon' title='".q($msg->subject)."' /></i>&nbsp;&nbsp;$bold_start<a href='inbox.php?mid=$msg->id".$urlstr."'>".q($msg->subject)."</a>".$bold_end.$filename;
 } else {
     $td[$i++] = "<i class='fa fa-envelope-o' title='".q($msg->subject)."' /></i>&nbsp;&nbsp;<a href='outbox.php?mid=$msg->id".$urlstr."'>".q($msg->subject)."</a>".$filename;
 }
 
 if ($course_id == 0) {
     if ($msg->course_id != 0) {
         $td[$i++] = "$bold_start<a class=\"outtabs\" href=\"index.php?course=".course_id_to_code($msg->course_id)."\">".course_id_to_title($msg->course_id)."</a>$bold_end";
     } else {
         $td[$i++] = "";
     }
 }
 
 if ($mbox_type == 'inbox') {
     $td[$i++] = display_user($msg->author_id, false, false, "outtabs");
 } else {
     $recipients = '';
     foreach ($msg->recipients as $r) {
         if ($r != $msg->author_id) {
             $recipients .= display_user($r, false, false, "outtabs").'<br/>';
         }
     }
     $td[$i++] = $recipients;
示例#19
0
/**
 * @brief display course user assingment
 * @global type $langNoAssignmentsExist
 * @global type $langGroupWorkSubmitted
 * @global type $langGroupWorkNotSubmitted
 * @global type $langGroupWorkDeadline_of_Submission
 * @global type $langGroupWorkSubmitted
 * @global type $urlServer
 * @param type $param
 * @param type $type
 * @return string
 */
function getUserAssignments($lesson_id)
{
    global $langNoAssignmentsExist, $langGroupWorkSubmitted, $langDays, $langDaysLeft, $langGroupWorkDeadline_of_Submission, $langGroupWorkSubmitted, $urlServer, $uid;
    $found = false;
    $assign_content = '<table width="100%">';
    foreach ($lesson_id as $lid) {
        $q = Database::get()->queryArray("SELECT DISTINCT assignment.id, assignment.title, assignment.deadline,\n                                        (TO_DAYS(assignment.deadline) - TO_DAYS(NOW())) AS days_left\n                                    FROM assignment, course, course_module\n                                        WHERE (TO_DAYS(deadline) - TO_DAYS(NOW())) >= '0'\n                                        AND assignment.active = 1\n                                        AND assignment.course_id = ?d\n                                        AND course.id = ?d\n                                        AND course_module.course_id = course.id\n                                        AND course_module.visible = 1 AND course_module.module_id = " . MODULE_ID_ASSIGN . "\n                                    ORDER BY assignment.deadline", $lid, $lid);
        if ($q) {
            $found = true;
            $assign_content .= "<tr><td class='sub_title1'>" . q(ellipsize(course_id_to_title($lid), 70)) . "</td></tr>";
            foreach ($q as $data) {
                $url = $urlServer . "modules/work/index.php?course=" . course_id_to_code($lid) . "&amp;i=" . $data->id;
                if (submitted($uid, $data->id, $lid)) {
                    $submit_status = $langGroupWorkSubmitted;
                } else {
                    $submit_status = "({$langDaysLeft} {$data->days_left} {$langDays})";
                }
                $assign_content .= "<tr><td><ul class='custom_list'><li><a href='{$url}'><b>" . q($data->title) . "</b></a><div class='smaller'>{$langGroupWorkDeadline_of_Submission}: <b>" . nice_format($data->deadline, true) . "</b><div class='grey'>" . $submit_status . "</div></div></li></ul></td></tr>";
            }
        }
    }
    $assign_content .= "</table>";
    if ($found) {
        return $assign_content;
    } else {
        return "<div class='alert alert-warning'>{$langNoAssignmentsExist}</div>";
    }
}
示例#20
0
/**
 * @global type $webDir
 * @param type $cid
 * @brief Delete course with id = $cid
 */
function delete_course($cid)
{
    global $webDir;
    $course_code = course_id_to_code($cid);
    Database::get()->query("DELETE FROM announcement WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM document WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM ebook_subsection WHERE section_id IN\n                         (SELECT ebook_section.id FROM ebook_section, ebook\n                                 WHERE ebook_section.ebook_id = ebook.id AND\n                                       ebook.course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM ebook_section WHERE id IN\n                         (SELECT id FROM ebook WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM ebook WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM forum_notify WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM glossary WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM group_members WHERE group_id IN\n                         (SELECT id FROM `group` WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM `group` WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM group_properties WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM link WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM link_category WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM agenda WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_review WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM unit_resources WHERE unit_id IN\n                         (SELECT id FROM course_units WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM course_units WHERE course_id = ?d", $cid);
    // check if we have guest account. If yes delete him.
    $guest_user = Database::get()->querySingle("SELECT user_id FROM course_user WHERE course_id = ?d AND status = ?d", $cid, USER_GUEST);
    if ($guest_user) {
        deleteUser($guest_user->user_id, true);
    }
    Database::get()->query("DELETE FROM course_user WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_department WHERE course = ?d", $cid);
    Database::get()->query("DELETE FROM course WHERE id = ?d", $cid);
    Database::get()->query("DELETE FROM video WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM videolink WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM dropbox_attachment WHERE msg_id IN (SELECT id FROM dropbox_msg WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM dropbox_index WHERE msg_id IN (SELECT id FROM dropbox_msg WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM dropbox_msg WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM lp_asset WHERE module_id IN (SELECT module_id FROM lp_module WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_rel_learnPath_module WHERE learnPath_id IN (SELECT learnPath_id FROM lp_learnPath WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_user_module_progress WHERE learnPath_id IN (SELECT learnPath_id FROM lp_learnPath WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM lp_module WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM lp_learnPath WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM wiki_pages_content WHERE pid IN (SELECT id FROM wiki_pages WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM wiki_pages WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM wiki_acls WHERE wiki_id IN (SELECT id FROM wiki_properties WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM wiki_properties WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM poll_question_answer WHERE pqid IN (SELECT pqid FROM poll_question WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d))", $cid);
    Database::get()->query("DELETE FROM poll_answer_record WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM poll_question WHERE pid IN (SELECT pid FROM poll WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM poll WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM assignment_submit WHERE assignment_id IN (SELECT id FROM assignment WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM assignment_to_specific WHERE assignment_id IN (SELECT id FROM assignment WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM assignment WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_with_questions WHERE question_id IN (SELECT id FROM exercise_question WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_with_questions WHERE exercise_id IN (SELECT id FROM exercise WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_answer WHERE question_id IN (SELECT id FROM exercise_question WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_question WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_question_cats WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM exercise_answer_record WHERE eurid IN (SELECT a.eurid FROM exercise_user_record a, exercise b WHERE a.eid = b.id AND b.course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise_user_record WHERE eid IN (SELECT id FROM exercise WHERE course_id = ?d)", $cid);
    Database::get()->query("DELETE FROM exercise WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_module WHERE course_id = ?d", $cid);
    Database::get()->query("DELETE FROM course_settings WHERE course_id = ?d", $cid);
    $garbage = "{$webDir}/courses/garbage";
    if (!is_dir($garbage)) {
        mkdir($garbage, 0775);
    }
    rename("{$webDir}/courses/{$course_code}", "{$garbage}/{$course_code}");
    removeDir("{$webDir}/video/{$course_code}");
    // refresh index
    require_once 'modules/search/indexer.class.php';
    Indexer::queueAsync(Indexer::REQUEST_REMOVEALLBYCOURSE, Indexer::RESOURCE_IDX, $cid);
    Database::get()->query("UPDATE oai_record SET deleted = 1, datestamp = ?t WHERE course_id = ?d", gmdate('Y-m-d H:i:s'), $cid);
}
示例#21
0
     $content = mathfilter($res->post_text, 12, "../../courses/mathimg/");
 } elseif ($rtype == 'comment') {
     if ($comm_rtype == 'blogpost') {
         $url = $urlServer."modules/blog/index.php?course=".course_id_to_code($cid).
             "&action=showPost&pId=".$comm_rid."#comments_title";
         
     } elseif ($comm_rtype == 'course') {
         $url = $urlServer."courses/".course_id_to_code($comm_rid);
     }
     $content_type = $langAComment;
     $content = q($rcontent);
 } elseif ($rtype == 'link') {
     $content_type = $langLink;
     $content = "<a href='" . $urlServer . "modules/link/go.php?course=".course_id_to_code($cid)."&amp;id=$rid&amp;url=" .
         urlencode($rcontent) . "'>" . q($link_title) . "</a>";
     $url = $urlServer."modules/link/?course=".course_id_to_code($cid);
 }
 
 $v = Database::get()->querySingle("SELECT visible FROM course_module
                         WHERE module_id = ?d AND
                         course_id = ?d", MODULE_ID_DROPBOX, $cid)->visible;
 
 if ($v == 1) {
     $reports_cats = array('rudeness' => $langRudeness,
                           'spam' => $langSpam,
                           'other' => $langOther);
     
     $msg_body = sprintf($langAbuseReportPMBody, $content_type, $reports_cats[$reason], q($msg), $content, $url);
     
     $pm = new Msg($uid, $cid, $langAbuseReport, $msg_body, $editors);
 }
示例#22
0
                                            <li><span><b>$langdate:</b></span> <span>$datetime</span></li>
                                        </ul>
                                </div>
                            </div>";

                        $main_dropbox_message = "
                            <!-- Body Section -->
                            <div id='mail-body'>
                                <br>
                                <div><b>$langSubject:</b> <span>$subject</span></div><br>
                                <div><b>$langMailBody:</b></div>
                                <div id='mail-body-inner'>
                                    " . $_POST['body']. "
                                </div><br/>";
                        if ($filesize > 0) {
                            $main_dropbox_message .= "<div><a href='${urlServer}modules/dropbox/dropbox_download.php?course=".course_id_to_code($cid)."&amp;id=$msg->id'>[$langAttachedFile]</a></div><br/>";
                        }
                        $main_dropbox_message .= "
                            </div>";

                        $footer_dropbox_message = "
                            <!-- Footer Section -->
                            <div id='mail-footer'>
                                <br>
                                <div id='alert'><small><b class='notice'>$langNote:</b> $langDoNotReply <a href='$msgURL'>$langHere</a>.</small></div>
                                                <br>
                                <div>
                                    <small>" . sprintf($langLinkUnsubscribe, $c) ." <a href='${urlServer}main/profile/emailunsubscribe.php?cid=$cid'>$langHere</a></small>
                                </div>
                            </div>";