function display($tpl = null) { // @rule: Test for user access if on 1.6 and above if (EasyBlogHelper::getJoomlaVersion() >= '1.6') { if (!JFactory::getUser()->authorise('easyblog.manage.category', 'com_easyblog')) { JFactory::getApplication()->redirect('index.php', JText::_('JERROR_ALERTNOAUTHOR'), 'error'); JFactory::getApplication()->close(); } } //initialise variables $document = JFactory::getDocument(); $user = JFactory::getUser(); $mainframe = JFactory::getApplication(); $config = EasyBlogHelper::getConfig(); $acl = EasyBlogACLHelper::getRuleSet(); //Load pane behavior jimport('joomla.html.pane'); $catId = JRequest::getVar('catid', ''); $cat = EasyBlogHelper::getTable('Category', 'Table'); $cat->load($catId); $this->cat = $cat; // Set default values for new entries. if (empty($cat->created)) { $date = EasyBlogDateHelper::getDate(); $now = EasyBlogDateHelper::toFormat($date); $cat->created = $now; $cat->published = true; } $catRuleItems = EasyBlogHelper::getTable('CategoryAclItem', 'Table'); $categoryRules = $catRuleItems->getAllRuleItems(); $assignedACL = $cat->getAssignedACL(); $parentList = EasyBlogHelper::populateCategories('', '', 'select', 'parent_id', $cat->parent_id, false, false, false, array($cat->id)); $editor = JFactory::getEditor($config->get('layout_editor')); $this->assignRef('editor', $editor); $this->assignRef('cat', $cat); $this->assignRef('config', $config); $this->assignRef('acl', $acl); $this->assignRef('parentList', $parentList); $this->assignRef('categoryRules', $categoryRules); $this->assignRef('assignedACL', $assignedACL); parent::display($tpl); }
<tr> <td width="300" class="key"> <span class="editlinktip"> <?php echo JText::_('COM_EASYBLOG_INTEGRATIONS_TWITTER_MICROBLOGGING_CATEGORY'); ?> </span> </td> <td valign="top"> <div class="has-tip"> <div class="tip"><i></i><?php echo JText::_('COM_EASYBLOG_INTEGRATIONS_TWITTER_MICROBLOGGING_CATEGORY_DESC'); ?> </div> <?php echo EasyBlogHelper::populateCategories('', '', 'select', 'integrations_twitter_microblog_category', $this->config->get('integrations_twitter_microblog_category'), true); ?> </div> </td> </tr> <tr> <td width="300" class="key"> <span class="editlinktip"> <?php echo JText::_('COM_EASYBLOG_INTEGRATIONS_TWITTER_MICROBLOGGING_PUBLISH_STATE'); ?> </span> </td> <td valign="top"> <div class="has-tip"> <div class="tip"><i></i><?php
<tr> <td width="300" class="key"> <span class="editlinktip"> <?php echo JText::_('COM_EASYBLOG_SETTINGS_WORKFLOW_REMOTE_PUBLISHING_MAILBOX_CATEGORY'); ?> </span> </td> <td valign="top"> <div class="has-tip"> <div class="tip"><i></i><?php echo JText::_('COM_EASYBLOG_SETTINGS_WORKFLOW_REMOTE_PUBLISHING_MAILBOX_CATEGORY_DESC'); ?> </div> <?php echo EasyBlogHelper::populateCategories('', '', 'select', 'main_remotepublishing_mailbox_categoryid', $this->config->get('main_remotepublishing_mailbox_categoryid'), true); ?> </div> </td> </tr> <tr> <td width="300" class="key"> <span class="editlinktip"> <?php echo JText::_('COM_EASYBLOG_SETTINGS_WORKFLOW_REMOTE_PUBLISHING_MAILBOX_PUBLISH_STATE'); ?> </span> </td> <td valign="top"> <div class="has-tip"> <div class="tip"><i></i><?php
/** * Micro blogging layout * * @since 3.0.7706 * @access public * @param null * @return null */ public function microblog() { $mainframe = JFactory::getApplication(); $config = EasyBlogHelper::getConfig(); $acl = EasyBlogACLHelper::getRuleSet(); if (!EasyBlogHelper::isLoggedIn()) { EasyBlogHelper::showLogin(); return; } $my = JFactory::getuser(); $user = EasyBlogHelper::getTable('Profile', 'Table'); $user->load($my->id); // @rule: Test if microblogging is allowed if (!$config->get('main_microblog')) { EasyBlogHelper::setMessageQueue(JText::_('COM_EASYBLOG_NOT_ALLOWED'), 'error'); JFactory::getApplication()->redirect(EasyBlogRouter::_('index.php?option=com_easyblog&view=dashboard', false)); } // @rule: Test ACL if add entry is allowed if (!$acl->rules->add_entry) { $mainframe->redirect(EasyBlogRouter::_('index.php?option=com_easyblog&view=dashboard', false), JText::_('COM_EASYBLOG_NO_PERMISSION_TO_CREATE_BLOG')); $mainframe->close(); } $document = JFactory::getDocument(); $title = EasyBlogHelper::getPageTitle(JText::_('COM_EASYBLOG_DASHBOARD_SHARE_A_STORY_TITLE')); // @task: Set the page title parent::setPageTitle($title, false, $config->get('main_pagetitle_autoappend')); // Add toolbar to the output echo $this->showToolbar(__FUNCTION__, $user); // Get active tabs $activeType = JRequest::getVar('type', 'text'); // Add the breadcrumbs $breadcrumbs = array(JText::_('COM_EASYBLOG_DASHBOARD_BREADCRUMB_SHARE_STORY') => ''); // @task: Retrieve existing categories $categoryModel = $this->getModel('Categories'); $categories = EasyBlogHelper::populateCategories('', '', 'select', 'category_id', '', true, true, true); // @task: Retrieve existing tags $tagsModel = $this->getModel('Tags'); $tags = $tagsModel->getTags(); $template = new CodeThemes('dashboard'); $template->set('activeType', $activeType); $template->set('categories', $categories); $template->set('breadcrumbs', $breadcrumbs); $template->set('tags', $tags); echo $template->fetch('dashboard.microblog.php'); }
function display($tpl = null) { // @rule: Test for user access if on 1.6 and above if (EasyBlogHelper::getJoomlaVersion() >= '1.6') { if (!JFactory::getUser()->authorise('easyblog.manage.blog', 'com_easyblog')) { JFactory::getApplication()->redirect('index.php', JText::_('JERROR_ALERTNOAUTHOR'), 'error'); JFactory::getApplication()->close(); } } // Load the front end language file. $lang = JFactory::getLanguage(); $lang->load('com_easyblog', JPATH_ROOT); // Initial variables. $doc = JFactory::getDocument(); $my = JFactory::getUser(); $app = JFactory::getApplication(); $acl = EasyBlogACLHelper::getRuleSet(); $config = EasyBlogHelper::getConfig(); // Load the JEditor object $editor = JFactory::getEditor($config->get('layout_editor', 'tinymce')); // Enable datetime picker EasyBlogDateHelper::enableDateTimePicker(); // required variable initiation. $meta = null; $blogContributed = array(); $tags = null; $external = ''; $extGroupId = ''; // Event id state. $externalEventId = ''; //Load blog table $blogId = JRequest::getVar('blogid', ''); $blog = EasyBlogHelper::getTable('Blog', 'Table'); $blog->load($blogId); $tmpBlogData = EasyBlogHelper::getSession('tmpBlogData'); $loadFromSession = false; // Initialize default tags. $blog->tags = array(); if (isset($tmpBlogData)) { $loadFromSession = true; $blog->bind($tmpBlogData); // reprocess the date offset here. $tzoffset = EasyBlogDateHelper::getOffSet(); if (!empty($blog->created)) { $date = EasyBlogHelper::getDate($blog->created, $tzoffset); $blog->created = $date->toMySQL(); } if (!empty($blog->publish_up) && $blog->publish_up != '0000-00-00 00:00:00') { $date = EasyBlogHelper::getDate($blog->publish_up, $tzoffset); $blog->publish_up = $date->toMySQL(); } if (!empty($blog->publish_down) && $blog->publish_down != '0000-00-00 00:00:00') { $date = EasyBlogHelper::getDate($blog->publish_down, $tzoffset); $blog->publish_down = $date->toMySQL(); } //bind the content from previous form $blog->content = $tmpBlogData['write_content']; if (isset($tmpBlogData['tags'])) { $blog->tags = $this->bindTags($tmpBlogData['tags']); } // metas $meta = new stdClass(); $meta->id = ''; $meta->keywords = isset($tmpBlogData['keywords']) ? $tmpBlogData['keywords'] : ''; $meta->description = isset($tmpBlogData['description']) ? $tmpBlogData['description'] : ''; if (isset($tmpBlogData['blog_contribute'])) { $blogContributed = $this->bindContribute($tmpBlogData['blog_contribute']); } $contributionSource = isset($tmpBlogData['blog_contribute_source']) ? $tmpBlogData['blog_contribute_source'] : ''; if (!empty($contributionSource) && $contributionSource != 'easyblog') { $external = true; $extGroupId = $tmpBlogData['blog_contribute']; $externalEventId = $tmpBlogData['blog_contribute']; } $blog->unsaveTrackbacks = ''; if (!empty($tmpBlogData['trackback'])) { $blog->unsaveTrackbacks = $tmpBlogData['trackback']; } } $draft = EasyBlogHelper::getTable('Draft', 'Table'); $draft_id = JRequest::getVar('draft_id', ''); $isDraft = false; $pending_approval = JRequest::getVar('approval', ''); if (!empty($draft_id)) { //first check if the logged in user have the required acl or not. if (empty($acl->rules->add_entry) || empty($acl->rules->publish_entry) || empty($acl->rules->manage_pending)) { $message = JText::_('COM_EASYBLOG_BLOGS_BLOG_NO_PERMISSION_TO_CREATE_BLOG'); $app->enqueueMessage($message, 'error'); $app->redirect(JRoute::_('index.php?option=com_easyblog&view=blogs', false)); } $draft->load($draft_id); $blog->load($draft->entry_id); $blog->bind($draft); $blog->tags = $this->bindTags(explode(',', $draft->tags)); $blog->newtags = $blog->tags; $tags = $blog->tags; // metas $meta = new stdClass(); $meta->id = ''; $meta->keywords = $draft->metakey; $meta->description = $draft->metadesc; $blog->unsaveTrackbacks = ''; if (!empty($draft->trackbacks)) { $blog->unsaveTrackbacks = $draft->trackbacks; } if ($draft->blog_contribute) { $blogContributed = $this->bindContribute($draft->blog_contribute); } $blog->set('id', $draft->entry_id); $blogId = $blog->id; $isDraft = true; } // set page title if (!empty($blogId)) { $doc->setTitle(JText::_('COM_EASYBLOG_BLOGS_EDIT_POST') . ' - ' . $config->get('main_title')); $editorTitle = JText::_('COM_EASYBLOG_BLOGS_EDIT_POST'); // check if previous status is not Draft if ($blog->published != POST_ID_DRAFT) { $isEdit = true; } } else { $doc->setTitle(JText::_('COM_EASYBLOG_BLOGS_NEW_POST')); $editorTitle = JText::_('COM_EASYBLOG_BLOGS_NEW_POST'); if (!$loadFromSession && !$isDraft) { // set to 'publish' for new blog in backend. $blog->published = $config->get('main_blogpublishing', '1'); } } $author = null; if (!empty($blog->created_by)) { $creator = JFactory::getUser($blog->created_by); $author = EasyBlogHelper::getTable('Profile', 'Table'); $author->setUser($creator); unset($creator); } else { $creator = JFactory::getUser($my->id); $author = EasyBlogHelper::getTable('Profile', 'Table'); $author->setUser($creator); unset($creator); } //Get tag if (!$loadFromSession && !$isDraft) { $tagModel = EasyBlogHelper::getModel('PostTag', true); $tags = $tagModel->getBlogTags($blogId); } $tagsArray = array(); if ($tags) { foreach ($tags as $data) { $tagsArray[] = $data->title; } $tagsString = implode(",", $tagsArray); } //prepare initial blog settings. $isPrivate = $config->get('main_blogprivacy', '0'); $allowComment = $config->get('main_comment', 1); $allowSubscribe = $config->get('main_subscription', 1); $showFrontpage = $config->get('main_newblogonfrontpage', 0); $sendEmails = $config->get('main_sendemailnotifications', 0); $isSiteWide = isset($blog->issitewide) ? $blog->issitewide : '1'; $tbModel = EasyBlogHelper::getModel('TeamBlogs', true); $teamBlogJoined = $tbModel->getTeamJoined($author->id); if (!empty($blog->id)) { $isPrivate = $blog->private; $allowComment = $blog->allowcomment; $allowSubscribe = $blog->subscription; $showFrontpage = $blog->frontpage; $sendEmails = $blog->send_notification_emails; //get user teamblog $teamBlogJoined = $tbModel->getTeamJoined($blog->created_by); if (!$isDraft) { $blogContributed = $tbModel->getBlogContributed($blog->id); } } if ($loadFromSession || $isDraft) { $isPrivate = $blog->private; $allowComment = $blog->allowcomment; $allowSubscribe = $blog->subscription; $showFrontpage = $blog->frontpage; $sendEmails = $blog->send_notification_emails; } if (count($blogContributed) > 0 && $blogContributed) { for ($i = 0; $i < count($teamBlogJoined); $i++) { $joined = $teamBlogJoined[$i]; if ($joined->team_id == $blogContributed->team_id) { $joined->selected = 1; continue; } } } //get all tags ever created. $newTagsModel = EasyBlogHelper::getModel('Tags'); if (isset($blog->newtags)) { $blog->newtags = array_merge($blog->newtags, $newTagsModel->getTags()); } else { $blog->newtags = $newTagsModel->getTags(); } //get tags used in this blog post if (!$loadFromSession && !$isDraft && $blogId) { $tagsModel = EasyBlogHelper::getModel('PostTag'); $blog->tags = $tagsModel->getBlogTags($blogId); } //@task: List all trackbacks $trackbacksModel = EasyBlogHelper::getModel('TrackbackSent'); $trackbacks = $trackbacksModel->getSentTrackbacks($blogId); // get meta tags if (!$loadFromSession && !$isDraft) { $metaModel = EasyBlogHelper::getModel('Metas'); $meta = $metaModel->getPostMeta($blogId); } //perform some title string formatting $blog->title = $this->escape($blog->title); $blogger_id = !isset($blog->created_by) ? $my->id : $blog->created_by; $defaultCategory = empty($blog->category_id) ? EasyBlogHelper::getDefaultCategoryId() : $blog->category_id; $category = EasyBlogHelper::getTable('Category'); $category->load($defaultCategory); $content = $blog->intro; // Append the readmore if necessary if (!empty($blog->intro) && !empty($blog->content)) { $content .= '<hr id="system-readmore" />'; } $content .= $blog->content; //check if this is a external group contribution. $blog_contribute_source = 'easyblog'; $external = false; $extGroupId = EasyBlogHelper::getHelper('Groups')->getGroupContribution($blog->id); $externalEventId = EasyBlogHelper::getHelper('Event')->getContribution($blog->id); $extGroupName = ''; if (!empty($extGroupId)) { $external = $extGroupId; $blog_contribute_source = EasyBlogHelper::getHelper('Groups')->getGroupSourceType(); $extGroupName = EasyBlogHelper::getHelper('Groups')->getGroupContribution($blog->id, $blog_contribute_source, 'name'); } if (!empty($externalEventId)) { $external = $externalEventId; $blog_contribute_source = EasyBlogHelper::getHelper('Event')->getSourceType(); } //site wide or team contribution $teamblogModel = EasyBlogHelper::getModel('TeamBlogs'); $teams = !empty($blog->created_by) ? $teamblogModel->getTeamJoined($blog->created_by) : $teamblogModel->getTeamJoined($my->id); $this->assignRef('teams', $teams); $this->assignRef('isDraft', $isDraft); $joomlaVersion = EasyBlogHelper::getJoomlaVersion(); $my = JFactory::getUser(); $blogger_id = $my->id; $nestedCategories = ''; $categoryselecttype = $config->get('layout_dashboardcategoryselect') == 'multitier' ? 'select' : $config->get('layout_dashboardcategoryselect'); if ($categoryselecttype == 'select') { $nestedCategories = EasyBlogHelper::populateCategories('', '', 'select', 'category_id', $blog->category_id, true, true, false); } // Load media manager and get info about the files. require_once EBLOG_CLASSES . DIRECTORY_SEPARATOR . 'mediamanager.php'; $mediamanager = new EasyBlogMediaManager(); $userFolders = $mediamanager->getInfo(EasyBlogMediaManager::getAbsolutePath('', 'user'), 'folders'); $userFiles = $mediamanager->getInfo(EasyBlogMediaManager::getAbsolutePath('', 'user'), 'files'); $sharedFolders = $mediamanager->getInfo(EasyBlogMediaManager::getAbsolutePath('', 'shared'), 'folders'); $sharedFiles = $mediamanager->getInfo(EasyBlogMediaManager::getAbsolutePath('', 'shared'), 'files'); // @rule: Test if the user is already associated with Flickr $oauth = EasyBlogHelper::getTable('Oauth'); $associated = $oauth->loadByUser($my->id, EBLOG_OAUTH_FLICKR); $jConfig = EasyBlogHelper::getJConfig(); $this->set('flickrAssociated', $associated); $this->assignRef('userFolders', $userFolders); $this->assignRef('userFiles', $userFiles); $this->assignRef('sharedFolders', $sharedFolders); $this->assignRef('sharedFiles', $sharedFiles); $this->assignRef('jConfig', $jConfig); $this->assignRef('my', $my); $this->assignRef('content', $content); $this->assignRef('category', $category); $this->assignRef('blogger_id', $blogger_id); $this->assignRef('joomlaversion', $joomlaVersion); $this->assignRef('isEdit', $isEdit); $this->assignRef('editorTitle', $editorTitle); $this->assignRef('blog', $blog); $this->assignRef('meta', $meta); $this->assignRef('editor', $editor); $this->assignRef('tagsString', $tagsString); $this->assignRef('acl', $acl); $this->assignRef('isPrivate', $isPrivate); $this->assignRef('allowComment', $allowComment); $this->assignRef('subscription', $allowSubscribe); $this->assignRef('frontpage', $showFrontpage); $this->assignRef('trackbacks', $trackbacks); $this->assignRef('author', $author); $this->assignRef('nestedCategories', $nestedCategories); $this->assignRef('teamBlogJoined', $teamBlogJoined); $this->assignRef('isSiteWide', $isSiteWide); $this->assignRef('draft', $draft); $this->assignRef('config', $config); $this->assignRef('pending_approval', $pending_approval); $this->assignRef('external', $external); $this->assignRef('extGroupId', $extGroupId); $this->assignRef('externalEventId', $externalEventId); $this->assignRef('extGroupName', $extGroupName); $this->assignRef('blog_contribute_source', $blog_contribute_source); $this->assignRef('categoryselecttype', $categoryselecttype); $this->assignRef('send_notification_emails', $sendEmails); parent::display($tpl); }
echo JText::_($title); ?> <i data-html="true" data-placement="top" data-title=" <?php echo JText::_($title); ?> " data-content=" <?php echo JText::_($desc); ?> " data-eb-provide="popover" class="fa fa-question-circle pull-right"></i> </label> <div class="col-md-7"> <?php echo EasyBlogHelper::populateCategories('', '', 'select', '', $this->config->get($name), true); ?> <?php if ($instructions) { ?> <div class="alert alert-warning mt-10"> <?php echo $instructions; ?> </div> <?php } ?> </div> </div>
function editCategory($id) { $my = JFactory::getUser(); $ajax = new Ejax(); $acl = EasyBlogACLHelper::getRuleSet(); $config = EasyBlogHelper::getConfig(); if (!$acl->rules->create_category || $my->id == 0) { $ajax->alert(JText::_('COM_EASYBLOG_NO_PERMISSION_TO_EDIT_CATEGORY'), JText::_('COM_EASYBLOG_INFO'), '450', 'auto'); return $ajax->send(); } $category = EasyBlogHelper::getTable('Category', 'Table'); $category->load($id); // @rule: Make sure the category belongs to the user or if he is a super admin. if ($category->id && $category->created_by != $my->id && !EasyBlogHelper::isSiteAdmin()) { $ajax->alert(JText::_('COM_EASYBLOG_NOT_ALLOWED'), '', '450'); return $ajax->send(); } // #26 do not restrict the parent category creator. $parentList = EasyBlogHelper::populateCategories('', '', 'select', 'parent_id', $category->parent_id); $catRuleItems = EasyBlogHelper::getTable('CategoryAclItem', 'Table'); $categoryRules = $catRuleItems->getAllRuleItems(); // assigned acl $assignedACL = $category->getAssignedACL(); $tpl = new CodeThemes('dashboard'); $tpl->set('category', $category); $tpl->set('config', $config); $tpl->set('parentList', $parentList); $tpl->set('categoryRules', $categoryRules); $tpl->set('assignedACL', $assignedACL); $options = new stdClass(); $options->title = JText::_('COM_EASYBLOG_DASHBOARD_CATEGORIES_DIALOG_EDIT_CATEGORY_TITLE'); $options->content = $tpl->fetch('ajax.dialog.category.edit.php'); $ajax->dialog($options); return $ajax->send(); }