Changeset 112586 in spip-zone
- Timestamp:
- Dec 1, 2018, 3:50:26 PM (2 years ago)
- Location:
- _dev_/univers_spip
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
_dev_/univers_spip/base/univers.php
r112585 r112586 1 1 <?php 2 /* 2 3 /** 3 4 * Plugin Univers SPIP 4 5 * (c) 2010 Cedric 5 6 * Distribue sous licence GPL 6 *7 7 */ 8 9 8 10 9 if (!defined('_ECRIRE_INC_VERSION')) { -
_dev_/univers_spip/genie/univers_feed.php
r112585 r112586 7 7 */ 8 8 9 /** 10 * Tache periodique d'examen des flux RSS pour decouvrir et proposer des nouveaux sites SPIP. 11 * 12 * @param mixed $t Unused parameter 13 * 14 * @return integer 0 15 */ 9 16 function genie_univers_feed_dist($t) { 10 17 include_spip('inc/univers'); -
_dev_/univers_spip/inc/univers.php
r112585 r112586 11 11 include_spip('inc/meta'); 12 12 13 function univers_proposer_site($url, $desc = '') { 13 /** 14 * Proposer un site en l'enregistrant en base. 15 * 16 * @param string $url URL du site propose 17 * 18 * @return integer 0 (false) ou l'id en base du site propose 19 */ 20 function univers_proposer_site($url) { 14 21 $parts = parse_url($url); 15 22 // pas d'IP fixe ! 16 23 if (preg_match(';^[0-9]{1,3}[.][0-9]{1,3}[.][0-9]{1,3}[.][0-9]{1,3}$;', $parts['host'])) { 17 return false;24 return 0; 18 25 } 19 26 // pas de fausse url venant de feedburner ou google ! … … 21 28 // attraper le vrai nom du site 22 29 if (preg_match(',(feeds\.feedburner\.com|feedproxy\.google\.com),i', $parts['host'])) { 23 return false;30 return 0; 24 31 } 25 32 26 #if (is_utf8($parts['host']))27 # return false;28 29 #$parts['path'] = preg_replace(",(IMG|local)/cache.+spip[.]php,","spip.php",$parts['path']);30 33 $base = $parts['scheme'] . '://' . $parts['host'] . $parts['path']; 31 34 $base = univers_nettoyer_url($base); … … 41 44 } 42 45 43 $id_website = sql_insertq('spip_websites', array('url'=>$base, 'descriptif'=>$desc,'date'=>date('Y-m-d H:i:s')));46 $id_website = sql_insertq('spip_websites', array('url'=>$base, 'descriptif'=> '', 'date'=>date('Y-m-d H:i:s'))); 44 47 45 48 // relire et verifier … … 48 51 // il y a eu un caractere exotique dans l'url, on la vire 49 52 sql_delete('spip_websites', 'id_website='.intval($id_website)); 50 return false;53 return 0; 51 54 } 52 55 … … 54 57 } 55 58 56 // reparer les urls mal formees 59 /** 60 * Reparer les urls mal formees. 61 * 62 * @param string $url URL a nettoyer 63 * 64 * @return string URL nettoyee 65 */ 57 66 function univers_nettoyer_url($url) { 58 67 $url = preg_replace(',(IMG|local)/cache.+spip[.]php,', 'spip.php', $url); … … 64 73 } 65 74 75 /** 76 * Nettoyage en base des URLs enregistrees malformees. 77 */ 66 78 function univers_nettoyer_urls() { 67 79 // urls mal formees … … 147 159 } 148 160 149 function univers_twitter_extraire_feed_urls($url, $enlarge = true) { 161 /** 162 * Recuperer les URLs des sites a verifier. 163 * 164 * @param sintrg $url Adresse du flux RSS 165 * 166 * @return array Liste des sites a verifier 167 */ 168 function univers_twitter_extraire_feed_urls($url) { 150 169 $long = array(); 151 170 $urls = array(); … … 164 183 if (!isset($long[$url])) { 165 184 $long[$url] = recuperer_lapage($url, false, 'GET', 100000); 166 $long[$url] = (is_string($long[$url]) ?$long[$url]:false);185 $long[$url] = (is_string($long[$url]) ? $long[$url] : false); 167 186 } 168 187 if ($long[$url]) { … … 179 198 } 180 199 200 /** 201 * Recuperer les URLs des sites a verifier. 202 * 203 * @param strng $url Adresse du flux RSS 204 * 205 * @return array Liste des sites a verifier 206 */ 181 207 function univers_spipnet_extraire_feed_urls($url) { 182 208 $urls = array(); … … 193 219 } 194 220 195 function univers_feed_watch($echo = false) { 221 /** 222 * Vérifie un coup sur 2 les flux RSS du blog et du site officiel. 223 */ 224 function univers_feed_watch() { 196 225 $explore = array( 197 226 'twitter' => 'https://blog.spip.net/?page=backend-twitter-spip', … … 199 228 ); 200 229 230 // Alternance des flux a verifier 201 231 $feed = 0; 202 232 if (isset($GLOBALS['meta']['univers_feedwatch'])) { … … 204 234 } 205 235 206 207 236 $i = 0; 208 237 while ($i++<$feed) { … … 210 239 } 211 240 241 //Verification d'un flux 212 242 list($type, $url) = each($explore); 213 243 if (function_exists($f = "univers_$type".'_extraire_feed_urls')) { 214 244 spip_log($s = "Analyse Feed $url", 'univers'); 215 if ($echo) {216 echo "$s<br />";217 }218 245 $liste = $f($url); 219 246 220 247 foreach ($liste as $url) { 221 248 spip_log($s = "$url", 'univers'); 222 if ($echo) {223 echo "$s<br />";224 }225 249 univers_proposer_site($url); 226 250 } 227 251 } 228 252 253 // Alternance des flux a verifier 229 254 $feed++; 230 255 if ($feed>=count($explore)) { … … 232 257 } 233 258 ecrire_meta('univers_feedwatch', $feed); 259 234 260 // un coup de netoyage sur les urls mal formees 235 261 univers_nettoyer_urls();
Note: See TracChangeset
for help on using the changeset viewer.