Example #1
0
 static function sync_course_forums($course_id)
 {
     // Create user groups
     $course_info = JoomdleHelperContent::getCourseInfo($course_id);
     JoomdleHelperJoomlagroups::add_course_groups($course_id, $course_info['fullname']);
     JoomdleHelperJoomlagroups::sync_group_members($course_id);
     // Create parent category
     JoomdleHelperForum::add_forum($course_id, -2, $course_info['fullname']);
     $sections = JoomdleHelperContent::call_method('get_course_mods', (int) $course_id, '');
     foreach ($sections as $section) {
         foreach ($section['mods'] as $mod) {
             if ($mod['mod'] == 'forum' && $mod['type'] != 'news') {
                 JoomdleHelperForum::add_forum($course_id, $mod['id'], $mod['name']);
             }
         }
     }
 }
Example #2
0
    function removeCourseForums ($action, $params)
    {
		$course_id = $params[0];

		return JoomdleHelperForum::remove_course_forums ($course_id);
    }
Example #3
0
 static function get_direct_link($mod, $course_id, $mod_id, $type)
 {
     $link = '';
     $params = JComponentHelper::getParams('com_joomdle');
     switch ($mod) {
         case 'resource':
             if ($type == 'page') {
                 if ($params->get('use_page_view')) {
                     $itemid = JoomdleHelperContent::getMenuItem();
                     if (!$itemid) {
                         $itemid = $params->get('joomdle_itemid');
                     }
                     $link = JRoute::_("index.php?option=com_joomdle&view=page&course_id={$course_id}&page_id={$mod_id}&itemid={$itemid}");
                 }
             } else {
                 if ($type == 'folder') {
                     $link = '';
                     break;
                 } else {
                     $link = $params->get('MOODLE_URL') . '/mod/resource/view.php?redirect=1&id=' . $mod_id;
                 }
             }
             break;
         case 'url':
             $link = $params->get('MOODLE_URL') . '/mod/url/view.php?redirect=1&id=' . $mod_id;
             break;
         case 'page':
             if ($params->get('use_page_view')) {
                 $itemid = JoomdleHelperContent::getMenuItem();
                 if (!$itemid) {
                     $itemid = $params->get('joomdle_itemid');
                 }
                 $link = JRoute::_("index.php?option=com_joomdle&view=page&course_id={$course_id}&page_id={$mod_id}");
             }
             break;
         case 'forum':
             $itemid = JoomdleHelperContent::getMenuItem();
             if (!$itemid) {
                 $itemid = $params->get('joomdle_itemid');
             }
             // Deal with news forum
             if ($type == 'news') {
                 // If is news forum, link to coursenews view instead of forum
                 $link = JRoute::_("index.php?option=com_joomdle&view=coursenews&course_id={$course_id}");
                 break;
             }
             if ($params->get('use_kunena_forums')) {
                 require_once JPATH_ADMINISTRATOR . '/components/com_joomdle/helpers/forum.php';
                 $forum_id = JoomdleHelperForum::get_kunena_forum_id($course_id, $mod_id);
                 $sub_version = JoomdleHelperForum::get_sub_version();
                 if ($forum_id) {
                     if ($sub_version > 3) {
                         $link = JRoute::_("index.php?option=com_kunena&view=category&catid={$forum_id}&course_id={$course_id}&Itemid={$itemid}");
                     } else {
                         $link = JRoute::_("index.php?option=com_kunena&func=showcat&catid={$forum_id}&course_id={$course_id}&Itemid={$itemid}");
                     }
                 } else {
                     $link = '';
                 }
             }
             break;
         case 'label':
             $link = 'none';
             break;
         case 'certificate':
             $link = $params->get('MOODLE_URL') . '/mod/certificate/view.php?certificate=1&id=' . $mod_id . '&action=review';
             break;
     }
     return $link;
 }
Example #4
0
 function sync_to_kunena()
 {
     JRequest::checkToken() or jexit('Invalid Token');
     $cid = JRequest::getVar('cid', array(), 'post', 'array');
     JArrayHelper::toInteger($cid);
     if (count($cid) < 1) {
         JError::raiseError(500, JText::_('Select an item to sync'));
     }
     JoomdleHelperForum::sync_forums($cid);
     $this->setRedirect('index.php?option=com_joomdle&view=forums');
 }