Fix: Better error management
This commit is contained in:
parent
07553da71a
commit
e07d7ad928
@ -19,7 +19,7 @@
|
|||||||
* \file htdocs/core/class/rssparser.class.php
|
* \file htdocs/core/class/rssparser.class.php
|
||||||
* \ingroup core
|
* \ingroup core
|
||||||
* \brief File of class to parse rss feeds
|
* \brief File of class to parse rss feeds
|
||||||
* \version $Id: rssparser.class.php,v 1.1 2011/08/17 13:44:13 eldy Exp $
|
* \version $Id: rssparser.class.php,v 1.2 2011/08/26 17:59:14 eldy Exp $
|
||||||
*/
|
*/
|
||||||
class RssParser
|
class RssParser
|
||||||
{
|
{
|
||||||
@ -75,8 +75,15 @@ class RssParser
|
|||||||
{
|
{
|
||||||
include_once(DOL_DOCUMENT_ROOT.'/lib/files.lib.php');
|
include_once(DOL_DOCUMENT_ROOT.'/lib/files.lib.php');
|
||||||
|
|
||||||
|
// Check parameters
|
||||||
|
if (! dol_is_url($urlRSS))
|
||||||
|
{
|
||||||
|
$this->error="ErrorBadUrl";
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
$this->_urlRSS = $urlRSS;
|
$this->_urlRSS = $urlRSS;
|
||||||
$newpathofdestfile=$cachedir.'/'.md5($this->_urlRSS);
|
$newpathofdestfile=$cachedir.'/'.md5($this->_urlRSS);
|
||||||
$newmask=octdec('0644');
|
$newmask=octdec('0644');
|
||||||
|
|
||||||
//dol_syslog("RssPArser::parser parse url=".$urlRSS." => cache file=".$newpathofdestfile);
|
//dol_syslog("RssPArser::parser parse url=".$urlRSS." => cache file=".$newpathofdestfile);
|
||||||
@ -110,7 +117,8 @@ class RssParser
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$rss = @simplexml_load_file($this->_urlRSS);
|
$rss = @simplexml_load_file($this->_urlRSS);
|
||||||
}
|
var_dump($this->_urlRSS);
|
||||||
|
}
|
||||||
catch (Exception $e) {
|
catch (Exception $e) {
|
||||||
print 'Error retrieving URL '.$this->urlRSS.' - '.$e->getMessage();
|
print 'Error retrieving URL '.$this->urlRSS.' - '.$e->getMessage();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,7 +19,7 @@
|
|||||||
/**
|
/**
|
||||||
* \file htdocs/lib/files.lib.php
|
* \file htdocs/lib/files.lib.php
|
||||||
* \brief Library for file managing functions
|
* \brief Library for file managing functions
|
||||||
* \version $Id: files.lib.php,v 1.71 2011/07/31 23:25:43 eldy Exp $
|
* \version $Id: files.lib.php,v 1.72 2011/08/26 17:59:14 eldy Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -186,6 +186,7 @@ function dol_compare_file($a, $b)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Return mime type of a file
|
* Return mime type of a file
|
||||||
|
*
|
||||||
* @param file Filename we looking for MIME type
|
* @param file Filename we looking for MIME type
|
||||||
* @param default Default mime type if extension not found in known list
|
* @param default Default mime type if extension not found in known list
|
||||||
* @param mode 0=Return full mime, 1=otherwise short mime string, 2=image for mime type, 3=source language
|
* @param mode 0=Return full mime, 1=otherwise short mime string, 2=image for mime type, 3=source language
|
||||||
@ -295,6 +296,7 @@ function dol_mimetype($file,$default='application/octet-stream',$mode=0)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Test if filename is a directory
|
* Test if filename is a directory
|
||||||
|
*
|
||||||
* @param folder Name of folder
|
* @param folder Name of folder
|
||||||
* @return boolean True if it's a directory, False if not found
|
* @return boolean True if it's a directory, False if not found
|
||||||
*/
|
*/
|
||||||
@ -307,6 +309,7 @@ function dol_is_dir($folder)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Return if path is a file
|
* Return if path is a file
|
||||||
|
*
|
||||||
* @param $pathoffile
|
* @param $pathoffile
|
||||||
* @return boolean True or false
|
* @return boolean True or false
|
||||||
*/
|
*/
|
||||||
@ -316,8 +319,26 @@ function dol_is_file($pathoffile)
|
|||||||
return is_file($newpathoffile);
|
return is_file($newpathoffile);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return if path is an URL
|
||||||
|
*
|
||||||
|
* @param $url
|
||||||
|
* @return boolean True or false
|
||||||
|
*/
|
||||||
|
function dol_is_url($url)
|
||||||
|
{
|
||||||
|
$tmpprot=array('file','http','ftp','zlib','data','ssh2','ogg','expect');
|
||||||
|
foreach($tmpprot as $prot)
|
||||||
|
{
|
||||||
|
if (preg_match('/^'.$prot.':/i',$url)) return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Test if a folder is empty
|
* Test if a folder is empty
|
||||||
|
*
|
||||||
* @param folder Name of folder
|
* @param folder Name of folder
|
||||||
* @return boolean True if dir is empty or non-existing, False if it contains files
|
* @return boolean True if dir is empty or non-existing, False if it contains files
|
||||||
*/
|
*/
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user