Compare commits
9 commits
master
...
myAutoBlog
Author | SHA1 | Date | |
---|---|---|---|
af79fc3d18 | |||
897f3db53c | |||
3e3861ee87 | |||
08f163f609 | |||
cd936fdf9c | |||
d9b23add41 | |||
8ac6108585 | |||
253a7690ef | |||
101922a5c3 |
5 changed files with 510 additions and 457 deletions
|
@ -51,4 +51,7 @@ $friends_autoblog_farm = array(
|
|||
// 'http://autoblog.suumitsu.eu/?export',
|
||||
// 'http://streisand.hoa.ro/?export',
|
||||
);
|
||||
|
||||
$myOptions['enableThumbShot'] = true;
|
||||
$myOptions['externalThumbSdhot'] = 'http://soshot.knah-tsaeb.org/?key=apikey&s=m&url=';
|
||||
?>
|
||||
|
|
|
@ -96,7 +96,24 @@ function escape($str) {
|
|||
return htmlspecialchars($str, ENT_COMPAT, 'UTF-8', false);
|
||||
}
|
||||
|
||||
function createAutoblog($type, $sitename, $siteurl, $rssurl) {
|
||||
function getSiteDesc($url){
|
||||
$allMeta = get_meta_tags($url);
|
||||
if(!empty($allMeta['description'])){
|
||||
return $allMeta['description'];
|
||||
} else {
|
||||
return 'Pas de description trouvé';
|
||||
}
|
||||
}
|
||||
|
||||
function shortSiteDesc($desc, $length = 145){
|
||||
$charset = 'UTF-8';
|
||||
if(mb_strlen($desc, $charset) > $length) {
|
||||
$desc = mb_substr($desc, 0, $length, $charset) . '...';
|
||||
}
|
||||
return $desc;
|
||||
}
|
||||
|
||||
function createAutoblog($type, $sitename, $siteurl, $rssurl, $siteDesc, $error = array()) {
|
||||
if( $type == 'generic' || empty( $type )) {
|
||||
$var = updateType( $siteurl );
|
||||
$type = $var['type'];
|
||||
|
@ -114,6 +131,7 @@ function createAutoblog($type, $sitename, $siteurl, $rssurl) {
|
|||
|
||||
if ( mkdir($foldername, 0755, false) ) {
|
||||
|
||||
|
||||
$fp = fopen($foldername .'/index.php', 'w+');
|
||||
if( !fwrite($fp, "<?php require_once '../autoblog.php'; ?>") )
|
||||
throw new Exception('Impossible d\'écrire le fichier index.php');
|
||||
|
@ -124,6 +142,7 @@ function createAutoblog($type, $sitename, $siteurl, $rssurl) {
|
|||
SITE_TYPE="'. $type .'"
|
||||
SITE_TITLE="'. $sitename .'"
|
||||
SITE_DESCRIPTION="Site original : <a href=\''. $siteurl .'\'>'. $sitename .'</a>"
|
||||
SITE_META_DESCRIPTION="'.$siteDesc.'"
|
||||
SITE_URL="'. $siteurl .'"
|
||||
FEED_URL="'. $rssurl .'"
|
||||
ARTICLES_PER_PAGE="'. getArticlesPerPage( $type ) .'"
|
||||
|
@ -194,6 +213,24 @@ function debug($data)
|
|||
echo '</pre>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Améliore la sortie print
|
||||
*
|
||||
* @author Tatane http://www.tatane.info/index.php/print_rn
|
||||
* @author http://www.blog.cactuscrew.com/77-print_rn.html
|
||||
* @param $data (array) tableau à examiner
|
||||
* @param $name (string) nom a affiché
|
||||
* @return false affiche les clef valeur du tableau $data
|
||||
*/
|
||||
function n_print($data, $name = '') {
|
||||
$aBackTrace = debug_backtrace();
|
||||
echo '<h2>', $name, '</h2>';
|
||||
echo '<fieldset style="border: 1px solid orange; padding: 5px;color: #333; background-color: #fff;">';
|
||||
echo '<legend style="border:1px solid orange;padding: 1px;background-color:#eee;color:orange;">', basename($aBackTrace[0]['file']), ' ligne => ', $aBackTrace[0]['line'], '</legend>';
|
||||
echo '<pre>', htmlentities(print_r($data, 1)), '</pre>';
|
||||
echo '</fieldset><br />';
|
||||
}
|
||||
|
||||
function __($str)
|
||||
{
|
||||
switch ($str)
|
||||
|
|
61
index.php
61
index.php
|
@ -209,8 +209,8 @@ function svg_status($fill, $text, $back)
|
|||
|
||||
$oldvalue = null;
|
||||
if(file_exists($errorlog)) { $oldvalue = file_get_contents($errorlog); };
|
||||
if(file_exists($errorlog) && filemtime($errorlog) < $expire) { unlink($errorlog); } /* errorlog périmé ? Suppression. */
|
||||
if(file_exists($errorlog)) /* errorlog existe encore ? se contenter de lire sa taille pour avoir le statut */
|
||||
if(file_exists($errorlog) && filemtime($errorlog) < $expire) { unlink($errorlog); } /* errorlog périmé ? Suppression. */
|
||||
if(file_exists($errorlog)) /* errorlog existe encore ? se contenter de lire sa taille pour avoir le statut */
|
||||
{
|
||||
if(filesize($errorlog) == "0") {die($svg_ok);}
|
||||
else if(filesize($errorlog) == "1") {die($svg_mv);}
|
||||
|
@ -442,7 +442,7 @@ if( isset($_GET['updateall']) ) {
|
|||
$antibot = generate_antibot();
|
||||
$form = '<form method="POST"><input type="hidden" name="generic" value="1" />'."\n".'
|
||||
<input placeholder="Adresse du flux RSS/ATOM" type="text" name="rssurl" id="rssurl"><br>
|
||||
<input placeholder="Antibot : écrivez « '. $antibot .' » en chiffre" type="text" name="number"><br>
|
||||
<input placeholder="Antibot : écrivez « '. $antibot .' » en chiffre" type="text" name="number"><br>
|
||||
<input type="hidden" name="antibot" value="'. $antibot .'" />
|
||||
<input type="submit" value="Vérifier">
|
||||
</form>';
|
||||
|
@ -494,6 +494,7 @@ if(!empty($_GET['via_button']) && $_GET['number'] === '17' && ALLOW_NEW_AUTOBLOG
|
|||
$sitename = get_title_from_datafeed($datafeed);
|
||||
$sitetype = updateType($siteurl);
|
||||
$sitetype = $sitetype['type'];
|
||||
$siteDesc = getSiteDesc(escape($siteurl));
|
||||
|
||||
$form .= '<span style="color:blue">Merci de vérifier les informations suivantes, corrigez si nécessaire.</span><br>
|
||||
<form method="GET">
|
||||
|
@ -502,6 +503,7 @@ if(!empty($_GET['via_button']) && $_GET['number'] === '17' && ALLOW_NEW_AUTOBLOG
|
|||
<input style="width:30em;" placeholder="Adresse du site" type="text" name="siteurl" id="siteurl" value="'.$siteurl.'"><label for="siteurl">← page d\'accueil (auto)</label><br>
|
||||
<input style="width:30em;" placeholder="Adresse du flux RSS/ATOM" type="text" name="rssurl" id="rssurl" value="'.$rssurl.'"><label for="rssurl">← adresse du flux</label><br>
|
||||
<input style="width:30em;" type="text" name="sitetype" id="sitetype" value="'.$sitetype.'" disabled><label for="sitetype">← type de site</label><br>
|
||||
<textarea style="width:30em;height:8em;" type="text" name="siteDesc" id="siteDesc">'.escape($siteDesc).'</textarea><label for="siteDesc">← description de site</label><br>
|
||||
<input type="submit" value="Créer"></form>';
|
||||
}
|
||||
else {
|
||||
|
@ -577,7 +579,7 @@ if( !empty($_POST['socialinstance']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLO
|
|||
try {
|
||||
$headers = get_headers($rssurl, 1);
|
||||
if (strpos($headers[0], '200') === FALSE)
|
||||
throw new Exception('Flux inaccessible (compte inexistant ?)');
|
||||
throw new Exception('Flux inaccessible (compte inexistant ?)');
|
||||
|
||||
createAutoblog($sitetype, ucfirst($socialinstance) .' - '. $socialaccount, $siteurl, $rssurl);
|
||||
$success[] = '<iframe width="1" height="1" frameborder="0" src="'. urlToFolder( $siteurl, $rssurl ) .'/index.php"></iframe>
|
||||
|
@ -589,7 +591,7 @@ if( !empty($_POST['socialinstance']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLO
|
|||
}
|
||||
}
|
||||
else
|
||||
$error[] = 'Antibot : chiffres incorrects.';
|
||||
$error[] = 'Antibot : chiffres incorrects.';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -599,9 +601,9 @@ if( !empty($_POST['generic']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_L
|
|||
if(empty($_POST['rssurl']))
|
||||
{$error[] = "Veuillez entrer l'adresse du flux.";}
|
||||
if(empty($_POST['number']) || empty($_POST['antibot']) )
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
elseif(! check_antibot($_POST['number'], $_POST['antibot']))
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
|
||||
if(empty($error)) {
|
||||
try {
|
||||
|
@ -629,6 +631,7 @@ if( !empty($_POST['generic']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_L
|
|||
$sitetype = 'generic';
|
||||
$siteurl = get_link_from_datafeed($datafeed);
|
||||
$sitename = get_title_from_datafeed($datafeed);
|
||||
$siteDesc = getSiteDesc(escape($siteurl));
|
||||
|
||||
$form = '<span style="color:blue">Merci de vérifier les informations suivantes, corrigez si nécessaire. Tous les champs doivent être renseignés.</span><br>
|
||||
<form method="POST"><input type="hidden" name="generic" value="1" />
|
||||
|
@ -652,9 +655,9 @@ if( !empty($_POST['generic']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_L
|
|||
**/
|
||||
if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_OPML_FILE) {
|
||||
if(empty($_POST['number']) || empty($_POST['antibot']) )
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
elseif(! check_antibot($_POST['number'], $_POST['antibot']))
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
|
||||
if( empty( $error)) {
|
||||
if (is_uploaded_file($_FILES['file']['tmp_name'])) {
|
||||
|
@ -676,9 +679,9 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
**/
|
||||
if( !empty($_POST['opml_link']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY_OPML_LINK) {
|
||||
if(empty($_POST['number']) || empty($_POST['antibot']) )
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
{$error[] = "Vous êtes un bot ?";}
|
||||
elseif(! check_antibot($_POST['number'], $_POST['antibot']))
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
{$error[] = "Antibot : ce n'est pas le bon nombre.";}
|
||||
if( empty( $_POST['opml_url'] ))
|
||||
{$error[] = 'Le lien est incorrect.';}
|
||||
|
||||
|
@ -741,10 +744,10 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<h2>Mise à jour</h2>
|
||||
</header>
|
||||
|
||||
<p>Une mise à jour du Projet Autoblog est disponible !</p>
|
||||
<p>Une mise à jour du Projet Autoblog est disponible !</p>
|
||||
<ul>
|
||||
<li>→ <a href="https://github.com/mitsukarenai/Projet-Autoblog/archive/master.zip">télécharger la dernière version</a> ;</li>
|
||||
<li>→ <strong>important :</strong> <a href="https://github.com/mitsukarenai/Projet-Autoblog/wiki/Mettre-%C3%A0-jour">consulter la documentation — mise à jour</a>.</li>
|
||||
<li>→ <a href="https://github.com/mitsukarenai/Projet-Autoblog/archive/master.zip">télécharger la dernière version</a> ;</li>
|
||||
<li>→ <strong>important :</strong> <a href="https://github.com/mitsukarenai/Projet-Autoblog/wiki/Mettre-%C3%A0-jour">consulter la documentation — mise à jour</a>.</li>
|
||||
</ul>
|
||||
</section>
|
||||
<?php } ?>
|
||||
|
@ -756,7 +759,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
|
||||
<?php
|
||||
if( !empty( $error ) || !empty( $success )) {
|
||||
echo '<p>Message'. (count($error) ? 's' : '') ." :</p>\n";
|
||||
echo '<p>Message'. (count($error) ? 's' : '') ." :</p>\n";
|
||||
echo " <ul>\n";
|
||||
foreach ( $error AS $value ) {
|
||||
echo ' <li class="error">'. $value ."</li>\n";
|
||||
|
@ -769,7 +772,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
echo ' ';
|
||||
}
|
||||
|
||||
$button_list = '<p id="button_list">Ajouter un autoblog via :'."\n";
|
||||
$button_list = '<p id="button_list">Ajouter un autoblog via :'."\n";
|
||||
if(ALLOW_NEW_AUTOBLOGS_BY_LINKS)
|
||||
$button_list .= ' <a href="#add_generic" class="button" id="button_generic" onclick="show_form(\'generic\');return false;">Flux RSS</a>'."\n";
|
||||
if(ALLOW_NEW_AUTOBLOGS_BY_SOCIAL) {
|
||||
|
@ -791,7 +794,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<h3>Ajouter un site web</h3>
|
||||
</header>
|
||||
|
||||
<p>Si vous souhaitez que <em><?php echo $_SERVER['SERVER_NAME']; ?></em> héberge un autoblog d'un site, remplissez le formulaire suivant :</p>
|
||||
<p>Si vous souhaitez que <em><?php echo $_SERVER['SERVER_NAME']; ?></em> héberge un autoblog d'un site, remplissez le formulaire suivant :</p>
|
||||
|
||||
<?php echo $form; echo "\n"; ?>
|
||||
</section>
|
||||
|
@ -815,7 +818,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<input type="radio" name="socialinstance" value="statusnet" />
|
||||
<input placeholder="statusnet.personnel.com" type="text" name="statusneturl" id="statusneturl" /><br />
|
||||
<input type="radio" name="socialinstance" value="youtube" />Youtube<br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input type="hidden" name="antibot" value="<?php echo $antibot; ?>" />
|
||||
<input type="submit" value="Créer" />
|
||||
</form>
|
||||
|
@ -828,7 +831,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<form method="POST">
|
||||
<input type="hidden" name="socialinstance" value="shaarli" />
|
||||
<input placeholder="shaarli.personnel.com" type="text" name="shaarliurl" id="shaarliurl" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input type="hidden" name="antibot" value="<?php echo $antibot; ?>" />
|
||||
<input type="submit" value="Créer" />
|
||||
</form>
|
||||
|
@ -843,7 +846,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<form enctype='multipart/form-data' method='POST'>
|
||||
<input type='hidden' name='opml_file' value='1' />
|
||||
<input type='file' name='file' /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input type="hidden" name="antibot" value="<?php echo $antibot; ?>" />
|
||||
<input type='submit' value='Importer' />
|
||||
</form>
|
||||
|
@ -858,7 +861,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<form method="POST">
|
||||
<input type="hidden" name="opml_link" value="1" />
|
||||
<input placeholder="Lien vers OPML" type="text" name="opml_url" id="opml_url" class="smallinput" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input placeholder="Antibot : écrivez « <?php echo $antibot; ?> » en chiffres" type="text" name="number" class="smallinput" /><br />
|
||||
<input type="hidden" name="antibot" value="<?php echo $antibot; ?>" />
|
||||
<input type="submit" value="Envoyer" />
|
||||
</form>
|
||||
|
@ -929,7 +932,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
// et on envoie le fichier statique à la place
|
||||
} else {
|
||||
readfile($fichierCache); // affichage du contenu du fichier
|
||||
echo ' <!-- Section « documents » (présente uniquement si non vide) servie par le cache -->'."\n"; // et un petit message
|
||||
echo ' <!-- Section « documents » (présente uniquement si non vide) servie par le cache -->'."\n"; // et un petit message
|
||||
}
|
||||
?>
|
||||
<section id="autoblogs">
|
||||
|
@ -987,8 +990,18 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
|
|||
<img width="15" height="15" alt="" src="./?check='.$key.'" />
|
||||
<h3>'.escape($autoblog->site_title).'</h3>
|
||||
</a>
|
||||
</header>
|
||||
<div class="source">config <sup><a href="'.$key.'/vvb.ini">ini</a> '.$opml_link.'</sup> | '.escape($autoblog->site_type).' source : <a href="'.escape($autoblog->site_url).'">'.escape($autoblog->site_url).'</a></div>
|
||||
</header>';
|
||||
if($myOptions['enableThumbShot'] === true){
|
||||
if(file_exists(ROOT_DIR . '/' . $key . '/thumbshot.png')){
|
||||
$autoblogs_display .= '<div class="thumbshot"><img src="'.ROOT_DIR . '/' . $key . '/thumbshot.png" title="Thumbshot de '.escape($autoblog->site_title).'"/></div>
|
||||
<div class="siteDesc">'.shortSiteDesc(escape($autoblog->site_meta_description)).'</div>';
|
||||
} elseif(!empty($myOptions['externalThumbSdhot'])) {
|
||||
$autoblogs_display .= '<div class="thumbshot"><img src="'.$myOptions['externalThumbSdhot'].rawurlencode(escape($autoblog->site_url)).'" title="Thumbshot de '.escape($autoblog->site_title).'"/></div>
|
||||
<div class="siteDesc">'.shortSiteDesc(escape($autoblog->site_meta_description)).'</div>';
|
||||
}
|
||||
}
|
||||
$autoblogs_display .= '
|
||||
<div class="source">config <sup><a href="'.$key.'/vvb.ini">ini</a> '.$opml_link.'</sup> | '.escape($autoblog->site_type).' source : <a href="'.escape($autoblog->site_url).'">'.escape($autoblog->site_url).'</a></div>
|
||||
</li>';
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue