HomeHelpTrac

Changeset 15674 for trunk/inc


Ignore:
Timestamp:
11/14/11 20:25:08 (6 months ago)
Author:
Alexander Trofimov
Message:

Grid

Location:
trunk/inc
Files:
3 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/inc/utils.inc.php

    r15656 r15674  
    12901290} 
    12911291 
     1292/** 
     1293 * Convert array to attributes string 
     1294 * 
     1295 * Example: 
     1296 * @code 
     1297 * $a = array('name' => 'test', 'value' => 5); 
     1298 * $s = bx_convert_array2attrs($a); 
     1299 * echo $s; // outputs: name="test" value="5" 
     1300 * @endcode 
     1301 * 
     1302 * @param $a - array of attributes 
     1303 * @param $sClasses - classes to merge with 'class' attribute 
     1304 * @param $sStyles - styles to merge with 'style' attribute 
     1305 * @return string 
     1306 */ 
     1307function bx_convert_array2attrs ($a, $sClasses = false, $sStyles = false) { 
     1308    $sRet = ''; 
     1309 
     1310    if (is_array($a)) { 
     1311 
     1312        if ($sClasses) { 
     1313            $sClasses = trim($sClasses); 
     1314            $a['class'] = $sClasses . (!empty($a['class']) ? ' ' . $a['class'] : ''); 
     1315        } 
     1316 
     1317        if ($sStyles) { 
     1318            $sStyles = trim($sStyles); 
     1319            if (';' != $sStyles[strlen($sStyles)-1]) 
     1320                $sStyles .= ';'; 
     1321            $a['style'] = $sStyles . (!empty($a['style']) ? ' ' . $a['style'] : ''); 
     1322        } 
     1323 
     1324        foreach ($a as $sKey => $sValue) { 
     1325 
     1326            if (empty($sValue) || is_null($sValue)) // pass NULL values 
     1327                continue; 
     1328 
     1329            $sValueC = bx_html_attribute($sValue); 
     1330 
     1331            $sRet .= " $sKey=\"$sValueC\""; 
     1332        } 
     1333    } 
     1334 
     1335    return $sRet; 
     1336} 
     1337 
     1338function bx_unicode_urldecode($s) { 
     1339 
     1340    preg_match_all('/%u([[:alnum:]]{4})/', $s, $a); 
     1341 
     1342    foreach ($a[1] as $uniord) 
     1343    { 
     1344        $dec = hexdec($uniord); 
     1345        $utf = ''; 
     1346 
     1347        if ($dec < 128) 
     1348        { 
     1349            $utf = chr($dec); 
     1350        } 
     1351        else if ($dec < 2048) 
     1352        { 
     1353            $utf = chr(192 + (($dec - ($dec % 64)) / 64)); 
     1354            $utf .= chr(128 + ($dec % 64)); 
     1355        } 
     1356        else 
     1357        { 
     1358            $utf = chr(224 + (($dec - ($dec % 4096)) / 4096)); 
     1359            $utf .= chr(128 + ((($dec % 4096) - ($dec % 64)) / 64)); 
     1360            $utf .= chr(128 + ($dec % 64)); 
     1361        } 
     1362 
     1363        $s = str_replace('%u'.$uniord, $utf, $s); 
     1364    } 
     1365 
     1366    return urldecode($s); 
     1367} 
     1368 
    12921369function getSitesArray ($sLink) { 
    12931370 
Note: See TracChangeset for help on using the changeset viewer.