mirror of
https://github.com/lrsjng/h5ai.git
synced 2025-05-28 22:16:00 -04:00
Filter accepts RegExp and primitive search sequences.
This commit is contained in:
parent
749a87eaf7
commit
84f543aca5
5 changed files with 42 additions and 22 deletions
|
@ -7,20 +7,23 @@
|
|||
*/
|
||||
|
||||
global $H5AI_CONFIG;
|
||||
$H5AI_CONFIG = array();
|
||||
|
||||
/*
|
||||
$H5AI_CONFIG = array(
|
||||
|
||||
/*
|
||||
* This configuration assumes that h5ai is installed
|
||||
* in the webroot directory of the Apache server.
|
||||
*/
|
||||
$H5AI_CONFIG["ROOT_ABS_PATH"] = safe_dirname(safe_dirname(__FILE__));
|
||||
"ROOT_ABS_PATH" => safe_dirname(safe_dirname(__FILE__)),
|
||||
|
||||
/*
|
||||
/*
|
||||
* Files/folders that should not be listed. Specified
|
||||
* by the complete filename or by a regular expression.
|
||||
* http://www.php.net/manual/en/function.preg-match.php
|
||||
*/
|
||||
$H5AI_CONFIG["IGNORE"] = array();
|
||||
$H5AI_CONFIG["IGNORE_PATTERNS"] = array("/^\\./", "/^_h5ai/");
|
||||
"IGNORE" => array(),
|
||||
"IGNORE_PATTERNS" => array("/^\\./", "/^_h5ai/")
|
||||
|
||||
);
|
||||
|
||||
?>
|
|
@ -38,6 +38,18 @@
|
|||
$filter.removeClass('current');
|
||||
}
|
||||
},
|
||||
parseFilterSequence = function (sequence) {
|
||||
|
||||
if (sequence.substr(0,3) === 're:') {
|
||||
return new RegExp(sequence.substr(3));
|
||||
}
|
||||
|
||||
sequence = $.map($.trim(sequence).split(/\s+/), function (part) {
|
||||
|
||||
return H5AI.util.reEscape(part);
|
||||
}).join('|');
|
||||
return new RegExp(sequence);
|
||||
},
|
||||
init = function () {
|
||||
|
||||
if (H5AI.core.settings.showFilter) {
|
||||
|
@ -63,7 +75,7 @@
|
|||
val = $input.val();
|
||||
|
||||
if (val) {
|
||||
filter(new RegExp(val));
|
||||
filter(parseFilterSequence(val));
|
||||
} else {
|
||||
filter();
|
||||
}
|
||||
|
|
|
@ -100,6 +100,10 @@
|
|||
return decodeURI(uri);
|
||||
} catch (err) {}
|
||||
return uri;
|
||||
},
|
||||
reEscape = function (sequence) {
|
||||
|
||||
return sequence.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&');
|
||||
};
|
||||
|
||||
return {
|
||||
|
@ -108,7 +112,8 @@
|
|||
getAbsHref: getAbsHref,
|
||||
parseSize: parseSize,
|
||||
formatSize: formatSize,
|
||||
checkedDecodeUri: checkedDecodeUri
|
||||
checkedDecodeUri: checkedDecodeUri,
|
||||
reEscape: reEscape
|
||||
};
|
||||
}());
|
||||
|
||||
|
|
|
@ -14,11 +14,6 @@ function require_h5ai($lib) {
|
|||
}
|
||||
|
||||
|
||||
require_h5ai("/php/inc/H5ai.php");
|
||||
$h5ai = new H5ai();
|
||||
$options = $h5ai->getOptions();
|
||||
|
||||
|
||||
function fail($code, $msg, $cond = true) {
|
||||
if ($cond) {
|
||||
echo "$code: $msg";
|
||||
|
@ -36,6 +31,11 @@ function checkKeys($keys) {
|
|||
}
|
||||
|
||||
|
||||
require_h5ai("/php/inc/H5ai.php");
|
||||
$h5ai = new H5ai();
|
||||
$options = $h5ai->getOptions();
|
||||
|
||||
|
||||
list($action) = checkKeys(array("action"));
|
||||
|
||||
|
||||
|
|
|
@ -256,8 +256,8 @@ class H5ai {
|
|||
|
||||
public function getHttpCode($absHref) {
|
||||
|
||||
return $this->cachedHttpCode($absHref);
|
||||
// return $this->fetchHttpCode($absHref);
|
||||
//return $this->cachedHttpCode($absHref);
|
||||
return $this->fetchHttpCode($absHref);
|
||||
// return $this->guessHttpCode($absHref);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue