IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Blog] Améliorer la fonction de mon plugin


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut [Blog] Améliorer la fonction de mon plugin
    Bonjour a tous , j'ai construit un script qui me sert de plugin sous dotclear 2.
    Celui-ci fonctionne bien ,mais il manque quelque chose pour ajuster ce travail.
    Ceci me tiens fort a coeur étant donné que j'y passe de long moment , mais l'esprit a ses limites et de l'aide est toujours la bienvenue
    Pour commencer ,j'initialise quelque variable et d'autre petite chose anodine
    Ensuite , je m'attarde sur le chargement du dossier nommé minialbum qui bien entendu s'il n'existe pas renvoi un message pour que celui-ci soit mis en place
    jusque la rien de sorcier , par contre j'aimerai améliorer les conditions et performance de celui-ci en vérifiant si ce dossier contient bien des images, renvoyant ainsi un message si aucune image n'est disponible.
    Mais ce n'est pas tout je cherche la possibilité d'ajouter des sous dossiers ou encore de choisir le nom du dossier a la place de "minialbum".
    PS: j'ai aussi un bug avec le dernier foreach qui me fais apparaitre la description en url en dessous des images ajoutant ainsi une incrementation qui n'as rien a y faire.
    Voici le script que j'essaie d'améliorer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    public static function minialbumWidget(&$w)
    	{
    		global $core;
    		if ($w->homeonly && $core->url->type != 'default') {return;}
    		$url1 = str_replace("\r",'',$w->url1);
    		$url1 = explode("\n",$url1);
    		/* Echap les caractères Xhtml */
    		$titre= $w->Titre ? html::escapeHTML($w->Titre) : __('minialbum');
    		/* Description optionnel de l'album*/
    		$description= $w->description ? html::escapeHTML($w->description) : '';
    		$mesimg_ft = array();
    			$cpt_ft = 0;
    			# Si dossier créer 
    			if ($handle_ft = @opendir($core->blog->public_path."/minialbum")) {
    				// traverser un dossier correctement
    	 		  while (false !== ($file_ft = readdir($handle_ft))) {
    			       if ($file_ft != "." && $file_ft != "..") {
    				   	  if (substr($file_ft,0,1)!="."){
    					  	$verifimg.=','.$file_ft;
    			           	$mesimg_ft[$cpt_ft] = $file_ft;
    			           	//incremente 
    					   	$cpt_ft++;
    					  }
    			       }
    			 }
    		   	 closedir($handle_ft);
    		}#sinon j'affiche
    		$chemin = http::concatURL($core->blog->url,$core->blog->settings->public_url.'/minialbum/');		
    		$return = '<div class="aff_div" id="minialbum">';		
    		$return .= '<h2>'.$titre.'</h2>';
    		$return .= '<div style="text-align: center;">'.$description.'</div><br />';
    		if (is_dir($core->blog->public_path."/minialbum")){
    		foreach ($mesimg_ft as &$value) {
    			$value ='<a href="'.$chemin.''.$value.'" rel="lightbox[groupe]">
    			<img src="'.$chemin.''.$value.'" width="47" height="45" alt="'.$description.'"/></a>';
    			$return .= $value;
    			}
    		}else {
    			$return .= '<div style="color:red;">'. __('The administrator do not have to create yet the repertory minialbum with the root of the manager of media').'</div><br />';
    		}	
    		/*foreach ($url1 as &$value2) {
    			$value2 ='<a href="'.$value2.'" rel="lightbox[groupe]">
    			<img src="'.$value2.'" width="47" height="45" alt="'.$description.'"/></a>';
    			$return .= $value2;
    		}*/
    		$return .='</div>';
    		return $return;
    	}
    Vous remarquerez que j'ai mis le 2em foreach en commentaire le temps que je trouve ce qui se passe ....
    Au petit déjeuner, je prend du PHP et au souper du jQuery.
    AFUP 2009 : Bien optimiser son code pour le référencement
    Mon projet open source de librairie PHP 5: magix cjquery

  2. #2
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    J'aurai peut être du poster dans un autre emplacement, dans gestion des fichiers ???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # Si dossier créer 
    			if ($handle_ft = @opendir($core->blog->public_path."/minialbum")) {
    				// traverser un dossier correctement
    	 		  while (false !== ($file_ft = readdir($handle_ft))) {
    			       if ($file_ft != "." && $file_ft != "..") {
    				   	  if (substr($file_ft,0,1)!="."){
    					  	$verifimg.=','.$file_ft;
    			           	$mesimg_ft[$cpt_ft] = $file_ft;
    			           	//incremente 
    					   	$cpt_ft++;
    					  }
    			       }
    			 }
    		   	 closedir($handle_ft);
    		}#sinon j'affiche
    Cette façon de procéder viens de la doc officiel http://be.php.net/opendir mais j'aimerai ajouter une condition pour tester si le dossier minialbum contient bien des images en excluant les autres média afin de ne pas les afficher dans le plugin .
    Au petit déjeuner, je prend du PHP et au souper du jQuery.
    AFUP 2009 : Bien optimiser son code pour le référencement
    Mon projet open source de librairie PHP 5: magix cjquery

Discussions similaires

  1. [RCP]Comment changer de vue avec mon plugin ?
    Par Cpt Anderson dans le forum Eclipse Platform
    Réponses: 14
    Dernier message: 15/12/2010, 12h43
  2. Utiliser la fonction import existing project dans mon plugin?
    Par capitaine.banane dans le forum Eclipse Platform
    Réponses: 1
    Dernier message: 05/05/2010, 09h46
  3. [outil]Améliorer la fonction InputBox
    Par omen999 dans le forum VBScript
    Réponses: 1
    Dernier message: 03/01/2007, 15h09
  4. Run de mon plugin qui plante
    Par Boubou Balrog dans le forum Eclipse Platform
    Réponses: 5
    Dernier message: 05/12/2006, 11h29
  5. Améliorer ma fonction en passant en vectoriel
    Par progfou dans le forum Images
    Réponses: 1
    Dernier message: 22/10/2006, 21h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo