KumbiaPHP beta2-dev
Framework PHP en español
|
00001 <?php 00022 class Html 00023 { 00030 protected static $_trClassAlternate = TRUE; 00031 00037 protected static $_metatags = array(); 00038 00044 protected static $_headLinks = array(); 00045 00058 public static function link ($action, $text, $attrs = NULL) 00059 { 00060 if (is_array($attrs)) { 00061 $attrs = Tag::getAttrs($attrs); 00062 } 00063 return '<a href="' . PUBLIC_PATH . "$action\" $attrs >$text</a>"; 00064 } 00076 public static function linkAction ($action, $text, $attrs = NULL) 00077 { 00078 if (is_array($attrs)) { 00079 $attrs = Tag::getAttrs($attrs); 00080 } 00081 00082 return '<a href="' . PUBLIC_PATH . Router::get('controller_path') . "/$action\" $attrs >$text</a>"; 00083 } 00092 public static function img ($src, $alt=NULL, $attrs = NULL) 00093 { 00094 if (is_array($attrs)) { 00095 $attrs = Tag::getAttrs($attrs); 00096 } 00097 return '<img src="' . PUBLIC_PATH . "img/$src\" alt=\"$alt\" $attrs />"; 00098 } 00099 00109 public static function trClass ($class, $attrs = NULL) 00110 { 00111 if (is_array($attrs)) { 00112 $attrs = Tag::getAttrs($attrs); 00113 } 00114 if(self::$_trClassAlternate){ 00115 self::$_trClassAlternate = FALSE; 00116 return "<tr class='$class' $attrs >"; 00117 } else { 00118 self::$_trClassAlternate = TRUE; 00119 return "<tr $attrs >"; 00120 } 00121 } 00122 00128 public static function trClassStart () 00129 { 00130 self::$_trClassAlternate = TRUE; 00131 } 00132 00139 public static function meta($content, $attrs = NULL) 00140 { 00141 if(is_array($attrs)) { 00142 $attrs = Tag::getAttrs($attrs); 00143 } 00144 00145 self::$_metatags[] = array('content' => $content, 'attrs' => $attrs); 00146 } 00147 00153 public static function includeMetatags() 00154 { 00155 return implode(array_unique(self::$_metatags), PHP_EOL); 00156 } 00157 00166 public static function lists($array, $type = 'ul', $attrs = NULL) 00167 { 00168 if(is_array($attrs)) { 00169 $attrs = self::getAttrs($attrs); 00170 } 00171 00172 $list = "<$type $attrs>".PHP_EOL; 00173 foreach($array as $item){ 00174 $list .= "<li>$item</li>".PHP_EOL; 00175 } 00176 $list .= "</$type>".PHP_EOL; 00177 00178 return $list; 00179 } 00180 00186 public static function includeCss() 00187 { 00188 $code = ''; 00189 foreach(Tag::getCss() as $css) { 00190 $code .= '<link href="' . PUBLIC_PATH . "css/{$css['src']}.css\" rel=\"stylesheet\" type=\"text/css\" media=\"{$css['media']}\" />" . PHP_EOL; 00191 } 00192 return $code; 00193 } 00194 00201 public static function headLink($href, $attrs = NULL) 00202 { 00203 if(is_array($attrs)) { 00204 $attrs = self::getAttrs($attrs); 00205 } 00206 00207 self::$_headLinks[] = array('href' => $href, 'attrs' => $attrs); 00208 } 00209 00216 public static function headLinkAction($action, $attrs = NULL) 00217 { 00218 self::headLink(PUBLIC_PATH . $action, $attrs); 00219 } 00220 00227 public static function headLinkResource($resource, $attrs = NULL) 00228 { 00229 self::headLink(PUBLIC_PATH . $resource, $attrs); 00230 } 00231 00237 public static function includeHeadLinks() 00238 { 00239 $code = ''; 00240 foreach(self::$_headLinks as $link) { 00241 $code .= "<link href=\"{$link['href']}\" {$link['attrs']} />" . PHP_EOL; 00242 } 00243 return $code; 00244 } 00259 public static function gravatar($email, $alt='gravatar', $size=40, $default='mm') { 00260 $grav_url = "http://www.gravatar.com/avatar/" . md5( strtolower(trim($email))) . '?d=' . urlencode($default) . '&s=' . $size; 00261 return '<img src="'. $grav_url . '" alt="'. $alt .'" class="avatar" width="'.$size.'" height="'.$size.'" />'; 00262 } 00263 }