* @subpackage com_autotweet - A powerful social content platform to manage multiple social networks. * * @author Prieco S.A. <*****@*****.**> * @copyright Copyright (C) 2007 - 2015 Prieco, S.A. All rights reserved. * @license http://www.gnu.org/licenses/gpl-3.0.html GNU/GPL * @link http://www.extly.com http://support.extly.com */ // No direct access defined('_JEXEC') or die('Restricted access'); $this->loadHelper('select'); JHtml::_('behavior.formvalidation'); $preview = null; if ($this->item->id) { $url = $this->item->xtform->get('url'); if (filter_var($url, FILTER_VALIDATE_URL) !== false) { $feedLoaderHelper = FeedLoaderHelper::getInstance(); $previewResult = $feedLoaderHelper->getPreview($this->item); if (isset($previewResult->preview) && count($previewResult->preview)) { $preview = $previewResult->preview[0]; } else { ELog::showMessage('COM_AUTOTWEET_VIEW_FEEDS_PREVIEW_UNAVAILABLE', JLog::ERROR); } } else { ELog::showMessage('COM_AUTOTWEET_FEED_INVALID_URL', JLog::ERROR); } } ?> <div class="extly"> <div class="extly-body">
/** * getImportStatus * * @return void */ public function getImportStatus() { // CSRF prevention if ($this->csrfProtection) { $this->_csrfProtection(); } $message = array('status' => false, 'error_message' => JText::_('COM_AUTOTWEET_VIEW_FEEDS_IMPORT_FAILED_ERR')); try { $logger = AutotweetLogger::getInstance(); $logger->log(JLog::INFO, "getImportStatus"); $feed_id = $this->input->get('feedId', null, 'int'); $continue = $this->input->get('isContinue', 0, 'int'); $cid = array($feed_id); $helper = FeedLoaderHelper::getInstance(); $result = $helper->importFeeds($cid); $message = array('status' => true, 'completed' => true); $message['total'] = number_format($result); } catch (Exception $e) { $message['status'] = false; $message['error_message'] .= ' Status ' . $e->getMessage(); } $message = json_encode($message); echo EJSON_START . $message . EJSON_END; flush(); JFactory::getApplication()->close(); }
/** * Checks for new events in the database (no triggers). * * @return void */ private function _onAfterRender() { $app = JFactory::getApplication(); if ($app->isAdmin()) { return; } $option = $app->input->get('option'); $task = $app->input->get('task'); if ($option == 'com_autotweet' && $task == 'route') { return; } $this->cron_enabled = EParameter::getComponentParam(CAUTOTWEETNG, 'cron_enabled', false); if ($this->cron_enabled) { return; } $automators = F0FModel::getTmpInstance('Automators', 'AutoTweetModel'); if (!$automators->lastRunCheck('automator', $this->interval)) { return; } $logger = AutotweetLogger::getInstance(); // Bot/crawler detection $http_user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : null; $remote_addr = isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : null; if (0 < $this->detect_bots && ($this->detectCrawlerByAgent($http_user_agent) || $this->detectCrawlerByIP($remote_addr))) { $logger->log(JLog::WARNING, 'AutoTweet NG Automator-Plugin - crawler detected. IP: ' . $remote_addr . ', Agent: ' . $http_user_agent); return; } $logger->log(JLog::INFO, 'AutoTweet NG Automator-Plugin - executed - IP: ' . $remote_addr . ', Agent: ' . $http_user_agent); define('AUTOTWEET_AUTOMATOR_RUNNING', true); $helper = AutotweetPostHelper::getInstance(); $helper->postQueuedMessages($this->max_posts); $feeds_enabled = EParameter::getComponentParam(CAUTOTWEETNG, 'feeds_enabled', false); if ($feeds_enabled) { $helper = FeedLoaderHelper::getInstance(); $helper->importFeeds(); } }