Example #1
0
 function publishQuiz()
 {
     $cids = JRequest::getVar("cid", array(), "post", "array");
     if (!isset($cids) || count($cids) == 0) {
         return FALSE;
     } else {
         $db = JFActory::getDBO();
         $sql = "update #__guru_quiz set published='1' where id in (" . implode(", ", $cids) . ")";
         $db->setQuery($sql);
         if (!$db->query()) {
             return false;
         }
         return true;
     }
 }
Example #2
0
 /**
  * Returns a published state on a grid
  *
  * @param	int				$value			The state value.
  * @param	int				$i				The row index
  * @param	string|array	$prefix			An optional task prefix or an array of options
  * @param	boolean			$enabled		An optional setting for access control on the action.
  * @param	string			$checkbox		An optional prefix for checkboxes.
  * @param	string			$publish_up		An optional start publishing date.
  * @param	string			$publish_down	An optional finish publishing date.
  *
  * @return The Html code
  *
  * @see JHtmlJGrid::state
  *
  * @since	1.6
  */
 public static function published($value, $i, $prefix = '', $enabled = true, $checkbox = 'cb', $publish_up = null, $publish_down = null)
 {
     if (is_array($prefix)) {
         $options = $prefix;
         $enabled = array_key_exists('enabled', $options) ? $options['enabled'] : $enabled;
         $checkbox = array_key_exists('checkbox', $options) ? $options['checkbox'] : $checkbox;
         $prefix = array_key_exists('prefix', $options) ? $options['prefix'] : '';
     }
     $states = array(1 => array('unpublish', 'JPUBLISHED', 'JLIB_HTML_UNPUBLISH_ITEM', 'JPUBLISHED', false, 'publish', 'publish'), 0 => array('publish', 'JUNPUBLISHED', 'JLIB_HTML_PUBLISH_ITEM', 'JUNPUBLISHED', false, 'unpublish', 'unpublish'), 2 => array('unpublish', 'JARCHIVED', 'JLIB_HTML_UNPUBLISH_ITEM', 'JARCHIVED', false, 'archive', 'archive'), -2 => array('publish', 'JTRASHED', 'JLIB_HTML_PUBLISH_ITEM', 'JTRASHED', false, 'trash', 'trash'));
     // Special state for dates
     if ($publish_up || $publish_down) {
         $nullDate = JFActory::getDBO()->getNullDate();
         $nowDate = JFactory::getDate()->toUnix();
         $tz = JFactory::getApplication()->getCfg('offset');
         $publish_up = $publish_up != $nullDate ? JFactory::getDate($publish_up, $tz) : false;
         $publish_down = $publish_down != $nullDate ? JFactory::getDate($publish_down, $tz) : false;
         // Create tip text, only we have publish up or down settings
         $tips = array();
         if ($publish_up) {
             $tips[] = JText::sprintf('JLIB_HTML_PUBLISHED_START', $publish_up->toFormat());
         }
         if ($publish_down) {
             $tips[] = JText::sprintf('JLIB_HTML_PUBLISHED_FINISHED', $publish_down->toFormat());
         }
         $tip = empty($tips) ? false : implode('<br/>', $tips);
         // Add tips and special titles
         foreach ($states as $key => $state) {
             // Create special titles for published items
             if ($key == 1) {
                 $states[$key][2] = $states[$key][3] = 'JLIB_HTML_PUBLISHED_ITEM';
                 if ($publish_up && $nowDate < $publish_up->toUnix()) {
                     $states[$key][2] = $states[$key][3] = 'JLIB_HTML_PUBLISHED_PENDING_ITEM';
                     $states[$key][5] = $states[$key][6] = 'pending';
                 }
                 if ($publish_down && $nowDate > $publish_down->toUnix()) {
                     $states[$key][2] = $states[$key][3] = 'JLIB_HTML_PUBLISHED_EXPIRED_ITEM';
                     $states[$key][5] = $states[$key][6] = 'expired';
                 }
             }
             // Add tips to titles
             if ($tip) {
                 $states[$key][1] = JText::_($states[$key][1]);
                 $states[$key][2] = JText::_($states[$key][2]) . '::' . $tip;
                 $states[$key][3] = JText::_($states[$key][3]) . '::' . $tip;
                 $states[$key][4] = true;
             }
         }
         return self::state($states, $value, $i, array('prefix' => $prefix, 'translate' => !$tip), $enabled, true, $checkbox);
     }
     return self::state($states, $value, $i, $prefix, $enabled, true, $checkbox);
 }
Example #3
0
 function sendEmailForPending($course_id)
 {
     $db = JFActory::getDBO();
     $sql = "select p.*, u.name as username from #__guru_program p, #__users u where u.`id`=p.`author` and p.`id`=" . intval($course_id);
     $db->setQuery($sql);
     $db->query();
     $result = $db->loadAssocList();
     $sql = "select `template_emails`, `fromname`, `fromemail`, `admin_email` from #__guru_config";
     $db->setQuery($sql);
     $db->query();
     $confic = $db->loadAssocList();
     $template_emails = $confic["0"]["template_emails"];
     $template_emails = json_decode($template_emails, true);
     $fromname = $confic["0"]["fromname"];
     $fromemail = $confic["0"]["fromemail"];
     $sql = "select u.`email` from #__users u, #__user_usergroup_map ugm where u.`id`=ugm.`user_id` and ugm.`group_id`='8' and u.`id` IN (" . $confic["0"]["admin_email"] . ")";
     $db->setQuery($sql);
     $db->query();
     $email = $db->loadColumn();
     $app = JFactory::getApplication();
     $site_name = $app->getCfg('sitename');
     $subject = $template_emails["unapprove_subject"];
     $body = $template_emails["unapprove_body"];
     $approve_url = '<a href="' . JURI::root() . "administrator/index.php?option=com_guru&controller=guruPrograms&cid[]=" . intval($result["0"]["id"]) . "&task=approve" . '" target="_blank">' . JURI::root() . "administrator/index.php?option=com_guru&controller=guruPrograms&cid[]=" . intval($result["0"]["id"]) . "&task=approve" . '</a>';
     $subject = str_replace("[AUTHOR_NAME]", $result["0"]["username"], $subject);
     $subject = str_replace("[COURSE_NAME]", $result["0"]["name"], $subject);
     $subject = str_replace("[COURSE_APPROVE_URL]", $approve_url, $subject);
     $subject = str_replace("[SITE_NAME]", $site_name, $subject);
     $body = str_replace("[AUTHOR_NAME]", $result["0"]["username"], $body);
     $body = str_replace("[COURSE_NAME]", $result["0"]["name"], $body);
     $body = str_replace("[COURSE_APPROVE_URL]", $approve_url, $body);
     $body = str_replace("[SITE_NAME]", $site_name, $body);
     for ($i = 0; $i < count($email); $i++) {
         JFactory::getMailer()->sendMail($fromemail, $fromname, $email[$i], $subject, $body, 1);
     }
 }