diff --git a/0.3/README.md b/0.3/README.md
index e7eaa76..1a0fa83 100755
--- a/0.3/README.md
+++ b/0.3/README.md
@@ -3,7 +3,7 @@ Projet Autoblog serie 0.3
- version VroumVroumBlog 0.3.0 BETA
-Auteurs: Mitsu (https://www.suumitsu.eu/) & Oros (https://www.ecirtam.net/)
+Auteurs: Mitsu (https://www.suumitsu.eu/), Oros (https://www.ecirtam.net/) et Arthur Hoaro (http://hoa.ro)
Licence: Domaine Public
diff --git a/0.3/functions.php b/0.3/functions.php
index 9a83b1c..6166b92 100755
--- a/0.3/functions.php
+++ b/0.3/functions.php
@@ -20,13 +20,15 @@ function NoProtocolSiteURL($url) {
function DetectRedirect($url)
{
if(parse_url($url, PHP_URL_HOST)==FALSE) {
- die('Not a URL');
+ //die('Not a URL');
+ return array( 'error' => 'Not a URL: '. escape ($url) );
}
$response = get_headers($url, 1);
if(!empty($response['Location'])) {
$response2 = get_headers($response['Location'], 1);
if(!empty($response2['Location'])) {
- die('too much redirection');
+ //die('too much redirection');
+ return array( 'error' => 'too much redirection: '. escape ($url) );
}
else { return $response['Location']; }
}
diff --git a/0.3/index.php b/0.3/index.php
index 7c6fe42..adf80c5 100755
--- a/0.3/index.php
+++ b/0.3/index.php
@@ -5,7 +5,7 @@
Authors:
Mitsu https://www.suumitsu.eu/
Oros https://www.ecirtam.net/
- Arthur Hoaro http://aryo.fr
+ Arthur Hoaro http://hoa.ro
License: Public Domain
Instructions:
@@ -104,15 +104,19 @@ function create_from_opml($opml) {
foreach( $opml->body->outline as $outline ) {
if ( !empty( $outline['title'] ) && !empty( $outline['text'] ) && !empty( $outline['xmlUrl']) && !empty( $outline['htmlUrl'] )) {
- $siteurl = escape($outline['htmlUrl']);
- $sitetype = escape($outline['text']); if ( $sitetype == 'generic' or $sitetype == 'microblog' or $sitetype == 'shaarli') { } else { $sitetype = 'generic'; }
$rssurl = DetectRedirect(escape( $outline['xmlUrl']));
- $sitename = escape( $outline['title'] );
+ if( isset($rssurl['error']) )
+ $error[] = $rssurl['error'];
+ else {
+ $sitename = escape( $outline['title'] );
+ $siteurl = escape($outline['htmlUrl']);
+ $sitetype = escape($outline['text']); if ( $sitetype == 'generic' or $sitetype == 'microblog' or $sitetype == 'shaarli') { } else { $sitetype = 'generic'; }
+
+ $error = array_merge( $error, createAutoblog( $sitetype, $sitename, $siteurl, $rssurl, $error ) );
- $error = array_merge( $error, createAutoblog( $sitetype, $sitename, $siteurl, $rssurl, $error ) );
-
- if( empty ( $error ))
- $success[] = 'Autoblog "'. $sitename .'" crée avec succès. → afficher l\'autoblog.';
+ if( empty ( $error ))
+ $success[] = 'Autoblog "'. $sitename .'" crée avec succès. → afficher l\'autoblog.';
+ }
}
}
}
@@ -342,43 +346,52 @@ if(!empty($_GET['via_button']) && $_GET['number'] === '17' && ALLOW_NEW_AUTOBLOG
else {
if(isset($_GET['add']) && $_GET['add'] === '1' && !empty($_GET['siteurl']) && !empty($_GET['sitename'])) {
$rssurl = DetectRedirect(escape($_GET['rssurl']));
- $siteurl = escape($_GET['siteurl']);
- $sitename = escape($_GET['sitename']);
- $sitetype = escape($_GET['type']);
-
- $error = array_merge( $error, createAutoblog($sitetype, $sitename, $siteurl, $rssurl, $error));
- if( empty($error)) {
- $form .= '';
- $form .= '
Autoblog '. $sitename .' ajouté avec succès.
';
- }
+ if( isset($rssurl['error']) )
+ $form .= '
Erreur : '. $rssurl['error'] .'
';
else {
- $form .= '
';
- foreach ( $error AS $value )
- $form .= '- '. $value .'
';
- $form .= '
';
+ $siteurl = escape($_GET['siteurl']);
+ $sitename = escape($_GET['sitename']);
+ $sitetype = updateType($siteurl); // Disabled input doesn't send POST data
+ $sitetype = $sitetype['type'];
+
+ $error = array_merge( $error, createAutoblog($sitetype, $sitename, $siteurl, $rssurl, $error));
+ if( empty($error)) {
+ $form .= '';
+ $form .= 'Autoblog '. $sitename .' ajouté avec succès.
';
+ }
+ else {
+ $form .= '
';
+ foreach ( $error AS $value )
+ $form .= '- '. $value .'
';
+ $form .= '
';
+ }
}
- $form .= 'Fermer la fenêtre.';
+ $form .= 'Fermer la fenêtre.';
}
else {
$rssurl = DetectRedirect(escape($_GET['rssurl']));
- $datafeed = file_get_contents($rssurl);
- if( $datafeed !== false ) {
- $siteurl = get_link_from_datafeed($datafeed);
- $sitename = get_title_from_datafeed($datafeed);
- $sitetype = updateType($_GET['type']);
- $sitetype = $sitetype['type'];
-
- $form .= 'Merci de vérifier les informations suivantes, corrigez si nécessaire.
- ';
- }
+ if( isset($rssurl['error']) )
+ $form .= 'Erreur : '. $rssurl['error'] .'
Fermer la fenêtre.
';
else {
- $form .= 'URL du flux RSS incorrecte.
Fermer la fenêtre.
';
+ $datafeed = file_get_contents($rssurl);
+ if( $datafeed !== false ) {
+ $siteurl = get_link_from_datafeed($datafeed);
+ $sitename = get_title_from_datafeed($datafeed);
+ $sitetype = updateType($siteurl);
+ $sitetype = $sitetype['type'];
+
+ $form .= 'Merci de vérifier les informations suivantes, corrigez si nécessaire.
+ ';
+ }
+ else {
+ $form .= 'URL du flux RSS incorrecte.
Fermer la fenêtre.
';
+ }
}
}
}
@@ -419,16 +432,19 @@ if(!empty($_POST['socialaccount']) && !empty($_POST['socialinstance']) && ALLOW_
$rssurl = $siteurl."?do=rss";
$socialaccount = get_title_from_feed($rssurl);
}
-
- $headers = get_headers($rssurl, 1);
- if (strpos($headers[0], '200') == FALSE) {
- $error[] = "Flux inaccessible (compte inexistant ?)";
- }
- if( empty($error) ) {
- $error = array_merge( $error, createAutoblog($sitetype, ucfirst($socialinstance) .' - '. $socialaccount, $siteurl, $rssurl, $error));
- if( empty($error))
- $success[] = ''.ucfirst($socialinstance) .' - '. $socialaccount.' ajouté avec succès.';
+
+ if( !isset($rssurl['error']) && !isset($siteurl['error']) ) {
+ $headers = get_headers($rssurl, 1);
+ if (strpos($headers[0], '200') == FALSE) {
+ $error[] = "Flux inaccessible (compte inexistant ?)";
+ }
+ if( empty($error) ) {
+ $error = array_merge( $error, createAutoblog($sitetype, ucfirst($socialinstance) .' - '. $socialaccount, $siteurl, $rssurl, $error));
+ if( empty($error))
+ $success[] = ''.ucfirst($socialinstance) .' - '. $socialaccount.' ajouté avec succès.';
+ }
}
+ else $error[] = (isset($rssurl['error'])) ? $rssurl['error'] : $siteurl['error'];
}
else
$error[] = 'Antibot : Chiffres incorrects.';
@@ -447,37 +463,40 @@ if( !empty($_POST['generic']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_L
if(empty($error)) {
$rssurl = DetectRedirect(escape($_POST['rssurl']));
+ if( !isset($rssurl['error']) ) {
+ if(!empty($_POST['siteurl'])) {
- if(!empty($_POST['siteurl'])) {
- $siteurl = escape($_POST['siteurl']);
- $sitename = get_title_from_feed($rssurl);
+ $siteurl = escape($_POST['siteurl']);
+ $sitename = get_title_from_feed($rssurl);
- $error = array_merge( $error, createAutoblog('generic', $sitename, $siteurl, $rssurl, $error));
+ $error = array_merge( $error, createAutoblog('generic', $sitename, $siteurl, $rssurl, $error));
- if( empty($error))
- $success[] = 'Autoblog '. $sitename .' crée avec succès. → afficher l\'autoblog';
- }
- else {
- // checking procedure
- $rssurl = DetectRedirect($rssurl);
- $datafeed = file_get_contents($rssurl);
- if( $datafeed === false ) {
- $error[] = 'URL "'. $rssurl .'" inaccessible.';
- }
- $sitetype = 'generic';
- $siteurl = get_link_from_datafeed($datafeed);
- $sitename = get_title_from_datafeed($datafeed);
+ if( empty($error))
+ $success[] = 'Autoblog '. $sitename .' crée avec succès. → afficher l\'autoblog';
+ }
+ else {
+ // checking procedure
+
+ $datafeed = file_get_contents($rssurl);
+ if( $datafeed === false ) {
+ $error[] = 'URL "'. $rssurl .'" inaccessible.';
+ }
+ $sitetype = 'generic';
+ $siteurl = get_link_from_datafeed($datafeed);
+ $sitename = get_title_from_datafeed($datafeed);
- $form = 'Merci de vérifier les informations suivantes, corrigez si nécessaire.
- ';
-
- }
+ $form = 'Merci de vérifier les informations suivantes, corrigez si nécessaire.
+ ';
+
+ }
+ }
+ else $error[] = $rssurl['error'];
}
}
@@ -770,7 +789,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
".count($autoblogs)." autoblogs hébergés"; ?>
- Propulsé par Projet Autoblog 0.3 de Mitsu, Oros et Arthur Hoaro (Domaine Public)
+ Propulsé par Projet Autoblog 0.3 de Mitsu, Oros et Arthur Hoaro (Domaine Public)
".$HTML_footer; } ?>
diff --git a/0.3/xsaf3.php b/0.3/xsaf3.php
index 2c68c7b..48de197 100755
--- a/0.3/xsaf3.php
+++ b/0.3/xsaf3.php
@@ -6,7 +6,6 @@ define('AUTOBLOG_FILE_NAME', 'autoblog.php');
define('ALLOW_REMOTE_DB_DL', false);
define('ALLOW_REMOTE_MEDIA_DL', false);
define('EXEC_TIME', 5);
-define( 'ALLOW_NEW_AUTOBLOGS_BY_XSAF', TRUE );
header("HTTP/1.0 403 Forbidden"); /* Uncivilized method to prevent bot indexing, huh :) */
header('X-Robots-Tag: noindex'); /* more civilized method, but bots may not all take into account */