| Current Path : /var/www/html/components/com_jvld/models/ |
| Current File : /var/www/html/components/com_jvld/models/reportbrokenlink.php |
<?php
/**
* @version $Id$
* @package JV-LinkDirectory
* @subpackage com_jvld
* @copyright Copyright 2008-2013 JV-Extensions. All rights reserved
* @license GNU General Public License version 3 or later
* @author JV-Extensions
* @link http://www.jv-extensions.com
*/
// No direct access
defined('_JEXEC') or die('Restricted access');
class JvldModelReportbrokenlink extends JvldFendModel
{
public function getForm($data = array(), $loadData = false)
{
$form = $this->loadForm('com_jvld.reportbrokenlink', 'reportbrokenlink', array('control' => 'jform', 'load_data' => $loadData), true);
if (empty($form))
return false;
return $form;
}
public function process()
{
try
{
parent::preProcess();
if (!$this->lid)
throw new Exception(JText::_("COM_JVLD_ERR_INSUFFINFO"));
$linkobj = new JvldLinkinfo($this->lid);
if ($this->cfg->get('brokenlink_handled'))
{
$this->informBrokenLinkToAdmin($linkobj);
JvldMsg::display(JText::_("COM_JVLD_BROKENLINK_DONE"), _JVLD_NEXT_PAGE_CLOSE_WINDOW, '', 1);
}
else
{
// Get the status of the link
$blchecker = new JvldBrokenLinkChecker($linkobj->getInfo('id'), $linkobj->getInfo('partner_url'));
$http_resp_code = $blchecker->getHttpCode();
JvldLog::log('ReportBrokenLink :: HTTP Return Code: '.$http_resp_code);
if (JvldBrokenLinkChecker::isBrokenLink($http_resp_code))
{
$this->informBrokenLinkToAdmin($linkobj);
JvldMsg::display(JText::_("COM_JVLD_BROKENLINK_DONE"), _JVLD_NEXT_PAGE_CLOSE_WINDOW, '', 1);
}
else
{
JvldMsg::display(JText::_("COM_JVLD_BROKENLINK_NOT_BROKEN"), _JVLD_NEXT_PAGE_CLOSE_WINDOW, '', 1);
}
}
return;
}
catch (Exception $ex)
{
JvldMsg::display($ex->getMessage(), _JVLD_NEXT_PAGE_GO_BACK, '', 1);
return;
}
}
private function informBrokenLinkToAdmin($link)
{
JvldInit::triggerPlugins('OnReportBrokenLink', array($link->getInfo('id')));
$catobj = new JvldCategoryinfo(JvldUtil::getLinkCategories($link->getInfo('id'), 'P'));
$catname = $catobj->getInfo('title');
$em = new JvldEmail('FNA_REPORT_BROKEN_LINK');
$em->setTag('{PARTNER-URL}', JvldPostinit::getLinkUrlorTitleForDisplay($link->getInfo('partner_url'), $link->getInfo('partner_title')));
$em->setTag('{PRIMARY-CATEGORY}', $catname);
$em->send($this->cfg->get('site_email'));
}
}