Codulle - L'explorateur de code sources

Accueil>> AlBulle >> Albulle1.0rc4 >> themes >> albulle >> css

Informations fichier

Nom du fichier : util.class.php
Taille du fichier : 13 Ko (383 lignes)
Language : PHP

  1. span style="color: #808080; font-style: italic;">////////////////////////////////////////
  2. // Encodage du fichier : UTF-8
  3. // Utilisation des tabulations : Oui
  4. // 1 tabulation = 4 caractères
  5. // Fins de lignes = LF (Unix)
  6. ////////////////////////////////////////
  7.  
  8. ///////////////////////////////
  9. // LICENCE
  10. ///////////////////////////////
  11. //
  12. // © DUCARRE Cedric, Bubulles Creations, (09/05/2005)
  13. //
  14. // webmaster@jebulle.net
  15. // http://jebulle.net
  16. //
  17. // Ce fichier fait partie d'AlBulles, script de gestion d'albums photos.
  18. //
  19. // Ce logiciel est régi par la licence CeCILL soumise au droit français et
  20. // respectant les principes de diffusion des logiciels libres. Vous pouvez
  21. // utiliser, modifier et/ou redistribuer ce programme sous les conditions
  22. // de la licence CeCILL telle que diffusée par le CEA, le CNRS et l'INRIA
  23. // sur le site "http://www.cecill.info".
  24. //
  25. // En contrepartie de l'accessibilité au code source et des droits de copie,
  26. // de modification et de redistribution accordés par cette licence, il n'est
  27. // offert aux utilisateurs qu'une garantie limitée. Pour les mêmes raisons,
  28. // seule une responsabilité restreinte pèse sur l'auteur du programme, le
  29. // titulaire des droits patrimoniaux et les concédants successifs.
  30. //
  31. // A cet égard l'attention de l'utilisateur est attirée sur les risques
  32. // associés au chargement, à l'utilisation, à la modification et/ou au
  33. // développement et à la reproduction du logiciel par l'utilisateur étant
  34. // donné sa spécificité de logiciel libre, qui peut le rendre complexe à
  35. // manipuler et qui le réserve donc à des développeurs et des professionnels
  36. // avertis possédant des connaissances informatiques approfondies. Les
  37. // utilisateurs sont donc invités à charger et tester l'adéquation du
  38. // logiciel à leurs besoins dans des conditions permettant d'assurer la
  39. // sécurité de leurs systèmes et ou de leurs données et, plus généralement,
  40. // à l'utiliser et l'exploiter dans les mêmes conditions de sécurité.
  41. //
  42. // Le fait que vous puissiez accéder à cet en-tête signifie que vous avez
  43. // pris connaissance de la licence CeCILL, et que vous en avez accepté les
  44. // termes.
  45. //
  46. ///////////////////////////////
  47.  
  48.  
  49. /**
  50. * Librairie de fonctions inclassables.
  51. *
  52. * @author SamRay1024
  53. * @copyright Bubulles Creation - http://jebulle.net
  54. * @since 25/08/2005
  55. * @version 1.1
  56. *
  57. *//**
  58. * Redimensionner une image.
  59. *
  60. * @param [RESOURCE] $img_src Identifiant de l'image à redimensionner.
  61. * @param [INTEGER] $larg_mini_max Largeur max de la redimension.
  62. * @param [INTEGER] $haut_mini_max Hauteur max de la redimension.
  63. *
  64. * @return [RESOURCE] Identifiant de l'image redimensionnée.
  65. */// On recupere les dimensions de l'image que l'on souhaite redimensionner
  66. // si l'image est plus petite que les dimensions demandees, on ne redimensionne pas.
  67. // Pour cela, on force la valeur de la dimension souhaitee a la valeur de la taille de l'image
  68. // de sorte a creer un ratio de 1 pour la dimension
  69. // On calcule le ratio pour la largeur et la hauteur
  70. // Et on garde le plus petit afin de ne jamais depasser la taille maximale
  71. // Connaissant le ratio de la miniature, on peut donc obtenir ses dimensions reelles.
  72. // Ici, on utilise la fonction "round" pour avoir une valeur entiere. Cela nous donne le nombre de pixels que va faire la miniature.
  73. // Cree une image vierge de la dimension desiree. Cette fonction permet de ne pas etre limite a 256 couleurs contrairement a "ImageCreate"
  74. // On effectue une copie de l'image source vers la miniture
  75. /**
  76. * Traitement d'une image postée par formulaire pour écriture dans un dossier.
  77. *
  78. * Adaptee de http://lecyber.net
  79. *
  80. * Cette méthode permet de traiter une image envoyée par un formulaire. L'image est redimensionnée aux dimensions
  81. * souhaitées (uniquement si elle est plus grande que les dimensions demandées), écrite dans le dossier demandé
  82. * et son nom de fichier peut être préfixé.
  83. *
  84. * @param [STRING] $type Type MIME de l'image envoyée (ie : 'image/gif', 'image.jpg', ...).
  85. * @param [STRING] $srcFile Chemin d'accès complet à l'image que l'on souhaite redimensionner.
  86. * @param [STRING] $destFile Répertoire de destination de stockage de l'image redimensionnée.
  87. * @param [STRING] [$larg_mini_max] Largeur max de la miniature.
  88. * @param [STRING] [$haut_mini_max] Lauteur max de la miniature.
  89. * @param [STRING] [$prefixe] Si ce champ est indiqué, on génère une miniature préfixé de la chaîne que contient cette variable
  90. * sinon, on écrase le fichier d'entrée si le dossier de destination est le même que celui de l'image originale.
  91. *
  92. * @return [STRING] Chemin d'accès à la miniature qui vient d'être générée.
  93. */'' )
  94. {
  95. // Recuperation des infos du fichier de destination
  96. // chemin d'acces
  97. // nom du fichier
  98. // on reecrit le fichier de destination avec le prefixe et le chemin complet
  99. '/'// creation de l'image en fonction du type MIME
  100. 'image/pjpeg''image/jpeg''image/x-png''image/png''image/gif'// si les deux longeurs max sont nulles, alors on ne redimensionne pas l'image
  101. // Si un second parametre est indique a la fonction ImageJpeg, la miniature est sauvegardee mais elle ne sera pas affichee. Ex : ImageJpeg( $img_src, './miniatures/mini.jpg');
  102. 'image/pjpeg''image/jpeg':
  103. // ecriture de la miniature au format jpeg
  104. 'image/x-png''image/png':
  105. // ecriture de la miniature au format png
  106. 'image/gif':
  107. // ecriture de la miniature au format gif
  108. // destruction du tampon de l'image
  109. /**
  110. * Méthode avancée de lecture de dossiers.
  111. *
  112. * La méthode reçoit un chemin de dossier, ouvre ce dossier et en donne la liste des éléments, qui
  113. * peuvent être ou les dossiers, ou les fichiers, ou les deux.
  114. *
  115. * Les éléments lus du dossiers sont retournés dans un tableau de deux manières différentes. Pour
  116. * les cas où soit les dossiers, soit les fichiers sont demandés, le tableau retourné est un tableau
  117. * indexé classique à une dimension. En revanche pour le cas ou les deux types sont demandés, le tableau
  118. * retourné est un tableau à deux dimensions. La 1ère est associative et contient deux sous-tableaux :
  119. * l'un pour les dossiers, l'autre pour les fichiers.
  120. *
  121. * $aTableauRetour['dir'] contient les dossiers lus.
  122. * $aTableauRetour['file'] contient les fichiers lus.
  123. *
  124. * Les deux sous tableaux sont eux indexés classiquement, tout comme les tableaux de retour sur l'un
  125. * ou l'autre des types demandés (dossiers/fichiers).
  126. *
  127. * @param [STRING] $sDir Chemin du dossier à parcourir.
  128. * @param [STRING] $sMode Modes de parcours du dossier :
  129. * 'DOSSIERS_SEULEMENT' => retourne uniquement les dossiers.
  130. * 'FICHIERS_SEULEMENT' => retourne uniquement les fichiers.
  131. * 'TOUT' => retourne tous les éléments (dossiers ET fichiers).
  132. * @return [MIXED] FALSE en cas d'erreur, tableau des éléments lus sinon.
  133. */// creation du tableau qui va contenir les elements du dossier
  134. // ajout du slash a la fin du chemin s'il n'y est pas
  135. "/^.*\/$/"'/';
  136. // Ouverture du repertoire demande
  137. // si pas d'erreur d'ouverture du dossier on lance le scan
  138. // Parcours du repertoire
  139. '.' && $sItem != '..'// Fermeture du repertoire
  140. // Tri des dossiers
  141. // construction tableau retour
  142. 'DOSSIERS_SEULEMENT''FICHIERS_SEULEMENT''TOUT''dir''file'/**
  143. * Génération d'une liste de liens pour faire une pagination.
  144. *
  145. * Cette méthode est une adaptation de celle fourni dans PunBB, le
  146. * script de forums.
  147. *
  148. * ****
  149. * Copyright (C) 2002-2005 Rickard Andersson (rickard@punbb.org)
  150. *
  151. * This function is part of PunBB.
  152. *
  153. * PunBB is free software; you can redistribute it and/or modify it
  154. * under the terms of the GNU General Public License as published
  155. * by the Free Software Foundation; either version 2 of the License,
  156. * or (at your option) any later version.
  157. *
  158. * PunBB is distributed in the hope that it will be useful, but
  159. * WITHOUT ANY WARRANTY; without even the implied warranty of
  160. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  161. * GNU General Public License for more details.
  162. *
  163. * You should have received a copy of the GNU General Public License
  164. * along with this program; if not, write to the Free Software
  165. * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  166. * MA 02111-1307 USA
  167. * ****
  168. *
  169. * @param [INTEGER] $num_pages Le nombre de pages total.
  170. * @param [INTEGER] $cur_page La page courante.
  171. * @param [STRING] $link_to La destination des url qu'il faut placer dans les liens.
  172. * @return [STRING] Retourne la liste des liens au format HTML.
  173. */// If $cur_page == -1, we link to all pages (used in viewforum.php)
  174. '<span class="pageActive">1</span>''<a href="''&amp;page=1" class="page">1</a>''&hellip;';
  175. }
  176.  
  177. // Don't ask me how the following works. It just does, OK? :-)
  178. '<a href="''&amp;page=''" class="page">''</a>''<span class="pageActive">''</span>''&hellip;';
  179. $pages[] = '<a href="''&amp;page=''" class="page">''</a>'/*'&#160;'*/'', $pages);
  180. }
  181. /**
  182. * Extraire à gauche de la n-ième sous-chaîne.
  183. *
  184. * Extrait d'une chaine tout ce qui se trouve à gauche de la n-ième sous-chaine
  185. * spécifiée. Par exemple, pour extraire les chemins parents dans une chaine de
  186. * caractères qui contient un chemin :
  187. * echo SousChaineGauche( 'dossier1/dossier2/dossier3/dossier4', '/', 2 );
  188. * => Affiche : dossier1/dossier2
  189. *
  190. * @param [STRING] $sChainePrincipale La chaine dans laquelle on doit faire l'extraction.
  191. * @param [STRING] $sSousChaine La chaine à repérer.
  192. * @param [INTEGER] $iNbOccurences Le nombre d'occurences à partir duquel on garde ce qui se trouve
  193. * à gauche de la sous-chaine.
  194. * @return [STRING] Retourne $sChainePrincipale tronquée.
  195. */''

Liste des projets

Téléchargez Codulle

Publié par Codulle - v0.1.1 - © Bubulles Creations