function regenere_css($css_file, $css) { global $auto_css; $values = array(); $_debut = chrono(); // get content of master css file (if specified, $css_file!='') // or use the content of $css to generate the merged file if ($css_file != '') { $css = file_get_contents($auto_css['path_to_css_file'] . $css_file); } else { $css_file = $auto_css['merged_css_filename']; } // burn all non auto_css comments $css = preg_replace('#\\/\\*[^*=]+\\*/#', ' ', $css); // extract from comments preg_match_all('#\\/\\*([^*]+\\=[^*]+)\\*/#', $css, $init); $variables = implode($init[0], " \n "); // process values $nb = preg_match_all('#([^\\:\\t =;"\']+)[ +]?=[ +]?\\"(.+)(?=\\")#', $variables, $vars); if (count($vars[1]) > 0) { $values = array_combine($vars[1], $vars[2]); } // process functions $_ = '[ +]?'; $reg_nb = '([0-9]+)'; $reg_colORvar = '(\\#[a-fA-F0-9]+|[^\\: =;"\']+)'; $reg_path = '("?[a-zA-Z0-9./_-]+"?)'; $reg_var = '([^\\: =;"\'\\<\\>\\)]+)'; $reg_darkenlight = '(lighten|darken)\\(' . $reg_colORvar . $_ . ',' . $_ . $reg_nb; $reg_reverse = '(reverse)\\(' . $reg_colORvar; $reg_dimensions = '(dimensions)\\(' . $reg_path; $regex = '#' . $reg_var . $_ . '=' . $_ . '(?:(?:' . $reg_darkenlight . ')|(?:' . $reg_reverse . ')|(?:' . $reg_dimensions . '))(?=\\))#'; $nb = preg_match_all($regex, $variables, $vars); if ($nb > 0) { for ($i = 0; $i < count($vars[1]); $i++) { // every variables in css if ($vars[2][$i] != '') { // lighten/darken $function = $vars[2][$i]; $firstarg = $vars[3][$i]; $secondarg = $vars[4][$i]; if ($firstarg[0] == '#') { $values[$vars[1][$i]] = $function($firstarg, $secondarg); } else { $values[$vars[1][$i]] = $function($values[$firstarg], $secondarg); } // function with variable } if ($vars[5][$i] != '') { // reverse $function = $vars[5][$i]; $firstarg = $vars[6][$i]; if ($firstarg[0] == '#') { $values[$vars[1][$i]] = $function($firstarg); } else { $values[$vars[1][$i]] = $function($values[$firstarg]); } // function with variable } if ($vars[7][$i] != '') { // dimensions $function = $vars[7][$i]; $firstarg = $vars[8][$i]; if ($firstarg[0] == '"') { $values[$vars[1][$i]] = $function($auto_css['path_to_css_file'] . str_replace('"', '', $firstarg)); } else { $values[$vars[1][$i]] = $function($auto_css['path_to_css_file'] . $values[$firstarg]); } // width variable } } } // remove parameters comments $css = preg_replace('#\\/\\*[^*]+\\=[^*]+\\*/#', ' ', $css); // and replaces all the keys with the values $var = array_keys($values); $var = array_map('trim', $var); $rempl = array_values($values); //Here, auto_css applies your string replacement rules; if ($auto_css['use_values_as_regex_rules']) { // values are regex rules $css = preg_replace($var, $rempl, $css); } else { // values are only a simple string replacement while ($css != str_replace($var, $rempl, $css)) { $css = str_replace($var, $rempl, $css); } } // here, it applies its own replacement rules if ($auto_css['allow_auto_css_regex_replacement']) { $css = auto_parse($css); } if (!$auto_css['reset_css_added']) { // adds reset css only to first file $css = addreset() . $css; $auto_css['reset_css_added'] = true; } if ($auto_css['minifie'] == true) { $css = minify_css($css); } $t = round(chrono() - $_debut, 6); $css = '/*Generated in ' . $t . 's with auto_css v' . $auto_css['version'] . '*/' . "\n" . $css; // save computed css file_put_contents($auto_css['path_to_css_file'] . 'computed_' . $css_file, $css); // coordinate all the dates $date_css = time(); touch($auto_css['path_to_css_file'] . 'computed_' . $css_file, $date_css); touch(me(), $date_css); }
function plug_search($d, $n, $opt = '', $res = '') { list($b, $o, $t, $ph) = split('-', $opt); chrono(); $rech = good_rech($d); $_GET['search'] = $rech; list($cat, $tag) = ajxr($res); $rech = str_replace(array("’", '«', '»', " "), array("'", '"', '"', ' '), trim($rech)); if (!$n) { $n = $_SESSION['nbj']; } $_GET['dig'] = $n; $_GET['cat'] = $cat; $_GET['tag'] = $tag; $_GET['bool'] = $b; $_GET['titles'] = $t; //$_GET['pho']=$ph; $vrf = normalize($rech . $n . $b . $o . $t . $ph . $res); if ($rech == 'last') { $id = lastid('qda'); $load[$id] = 1; } elseif (isset($_SESSION['recache'][$vrf])) { $load = $_SESSION['recache'][$vrf]; $cac = $vrf; } elseif ($d && is_numeric($d) && $d < lastid('qda')) { $load[$d] = 1; } elseif (strpos($rech, ';') && strpos($rech, ':')) { list($rch, $cat, $tag, $utg) = rech_script($rech); } elseif (strpos($rech, '=')) { $load = make_list_arts($rech); } else { $load = rech($rech, $n); } if ($load && !is_array($load)) { $load = ''; } if (!$load && ($cat or $tag or $utg)) { $load = rech_catag($cat, $tag, $utg, $n); } $_SESSION['load'] = $load; $_SESSION['recache'][$vrf] = $load; $ret = rech_titles($rech, $n, $opt, $cac, $cat, $tag, $tag2); $_SESSION['page'] = 1; $_SESSION['popm'] = chrono('search'); if ($load[0]) { unset($load[0]); } if ($load[1]) { unset($load[1]); } if ($load) { $ret .= scroll($load, divd($vrf, output_pages($load, '', '')), 2, '', 400); } return $ret; }
function algrthm_build($p, $o) { chrono(''); $re = algrthm_call($p, $o); $r = json_decode($re, true); //p($r); if ($r['error']) { return $r['error']; } //echo $r['duration']; echo chrono('calgo'); //p($r['result']); $ret = make_table(algrthm_res($r['result'])); return $ret; }
echo $shared_folders . $back_link . $folderlist . $filelist; if (!empty($size_folder)) { echo '</tbody><tfoot><tr>' . $column . '<td class="table_image"></td><td class="table_filename" style="text-align:right">Total:</td><td id="folder_size">' . $size_folder . '</td><td></td></tr></tfoot>'; } echo '</table>'; echo $form_footer; } elseif ($layout == 'icon' && !isset($_GET['async'])) { # Icon layout echo '<div id="async_load">'; echo $shared_folders . $folderlist . $filelist; echo '</div>'; if (!empty($size_folder)) { echo '<div id="folder_size">' . e('Foldersize', false) . ': ' . $size_folder . '</div>'; } } else { # Ajax load more => content only echo $shared_folders . $back_link . $folderlist . $filelist; } # «Load more» button if ($remain > 0 && !isset($_GET['async'])) { if ($remain > $_SESSION['max_files_per_page']) { $remain = $_SESSION['max_files_per_page']; } $from++; echo '<a id="more_button" class="btn" href="index.php?p=admin&from=' . $from . '&token=' . TOKEN . '" onclick="loadMore(this);return false;" data-from="' . $from . '" data-url="index.php?async&token=' . TOKEN . '" data-max="' . $max_pages . '">' . e('Load', false) . ' ' . $remain . ' ' . e('more', false) . '</a>'; } } else { echo '<table>' . $shared_folders . '</table><div id="nofile">' . e('No file or folder', false) . '</div>'; } chrono('etape2 listfiles.php ');
function plug_ping($p, $o) { chrono(); $ret = ping_j($p, $o); return $ret; }