summaryrefslogtreecommitdiff
path: root/modules/gallery/libraries
diff options
context:
space:
mode:
Diffstat (limited to 'modules/gallery/libraries')
-rw-r--r--modules/gallery/libraries/Form_Uploadify.php2
-rw-r--r--modules/gallery/libraries/IdentityProvider.php6
-rw-r--r--modules/gallery/libraries/MY_Kohana_Exception.php27
-rw-r--r--modules/gallery/libraries/Theme_View.php17
4 files changed, 36 insertions, 16 deletions
diff --git a/modules/gallery/libraries/Form_Uploadify.php b/modules/gallery/libraries/Form_Uploadify.php
index e5b6d819..79477763 100644
--- a/modules/gallery/libraries/Form_Uploadify.php
+++ b/modules/gallery/libraries/Form_Uploadify.php
@@ -46,6 +46,8 @@ class Form_Uploadify_Core extends Form_Input {
$v->album = $this->data["album"];
$v->script_data = $this->data["script_data"];
$v->simultaneous_upload_limit = module::get_var("gallery", "simultaneous_upload_limit");
+ $v->movies_allowed = (bool) movie::find_ffmpeg();
+ $v->suhosin_session_encrypt = (bool) ini_get("suhosin.session.encrypt");
return $v;
}
diff --git a/modules/gallery/libraries/IdentityProvider.php b/modules/gallery/libraries/IdentityProvider.php
index 5f341c90..4ef07e1a 100644
--- a/modules/gallery/libraries/IdentityProvider.php
+++ b/modules/gallery/libraries/IdentityProvider.php
@@ -61,8 +61,7 @@ class IdentityProvider_Core {
* Return a commen confirmation message
*/
static function confirmation_message() {
- return t("Are you sure you want to change your Identity Provider? " .
- "Continuing will delete all existing users.");
+ return t("Are you sure you want to change your Identity Provider? Continuing will delete all existing users.");
}
static function change_provider($new_provider) {
@@ -113,8 +112,7 @@ class IdentityProvider_Core {
}
message::error(
- t("Error attempting to enable \"%new_provider\" identity provider, " .
- "reverted to \"%old_provider\" identity provider",
+ t("Error attempting to enable \"%new_provider\" identity provider, reverted to \"%old_provider\" identity provider",
array("new_provider" => $new_provider, "old_provider" => $current_provider)));
$restore_already_running = false;
diff --git a/modules/gallery/libraries/MY_Kohana_Exception.php b/modules/gallery/libraries/MY_Kohana_Exception.php
index 72cb2ac0..82899d7e 100644
--- a/modules/gallery/libraries/MY_Kohana_Exception.php
+++ b/modules/gallery/libraries/MY_Kohana_Exception.php
@@ -22,11 +22,15 @@ class Kohana_Exception extends Kohana_Exception_Core {
* Dump out the full stack trace as part of the text representation of the exception.
*/
public static function text($e) {
- return sprintf(
- "%s [ %s ]: %s\n%s [ %s ]\n%s",
- get_class($e), $e->getCode(), strip_tags($e->getMessage()),
- $e->getFile(), $e->getLine(),
- $e->getTraceAsString());
+ if ($e instanceof Kohana_404_Exception) {
+ return "File not found: " . Router::$complete_uri;
+ } else {
+ return sprintf(
+ "%s [ %s ]: %s\n%s [ %s ]\n%s",
+ get_class($e), $e->getCode(), strip_tags($e->getMessage()),
+ $e->getFile(), $e->getLine(),
+ $e->getTraceAsString());
+ }
}
/**
@@ -41,16 +45,21 @@ class Kohana_Exception extends Kohana_Exception_Core {
* data, such as session ids and passwords / hashes.
*/
public static function safe_dump($value, $key, $length=128, $max_level=5) {
- return parent::dump(self::_sanitize_for_dump($value, $key), $length, $max_level);
+ return parent::dump(self::_sanitize_for_dump($value, $key, $max_level), $length, $max_level);
}
/**
* Elides sensitive data which shouldn't be echoed to the client,
* such as passwords, and other secrets.
*/
- /* Visible for testing*/ static function _sanitize_for_dump($value, $key=null) {
+ /* Visible for testing*/ static function _sanitize_for_dump($value, $key=null, $max_level) {
// Better elide too much than letting something through.
// Note: unanchored match is intended.
+ if (!$max_level) {
+ // Too much recursion; give up. We gave it our best shot.
+ return $value;
+ }
+
$sensitive_info_pattern =
'/(password|pass|email|hash|private_key|session_id|session|g3sid|csrf|secret)/i';
if (preg_match($sensitive_info_pattern, $key) ||
@@ -63,7 +72,7 @@ class Kohana_Exception extends Kohana_Exception_Core {
} else if ($value instanceof User_Model) {
return get_class($value) . ' object for "' . $value->name . '" - details omitted for display';
}
- return self::_sanitize_for_dump((array) $value, $key);
+ return self::_sanitize_for_dump((array) $value, $key, $max_level - 1);
} else if (is_array($value)) {
$result = array();
foreach ($value as $k => $v) {
@@ -78,7 +87,7 @@ class Kohana_Exception extends Kohana_Exception_Core {
if (is_object($v)) {
$key_for_display .= ' (type: ' . get_class($v) . ')';
}
- $result[$key_for_display] = self::_sanitize_for_dump($v, $actual_key);
+ $result[$key_for_display] = self::_sanitize_for_dump($v, $actual_key, $max_level - 1);
}
} else {
$result = $value;
diff --git a/modules/gallery/libraries/Theme_View.php b/modules/gallery/libraries/Theme_View.php
index 6246c6f1..7a6bc1da 100644
--- a/modules/gallery/libraries/Theme_View.php
+++ b/modules/gallery/libraries/Theme_View.php
@@ -46,9 +46,11 @@ class Theme_View_Core extends Gallery_View {
$this->set_global("thumb_proportion", $this->thumb_proportion());
}
- $maintenance_mode = Kohana::config("core.maintenance_mode", false, false);
- if ($maintenance_mode) {
- message::warning(t("This site is currently in maintenance mode"));
+ if (module::get_var("gallery", "maintenance_mode", 0)) {
+ if (identity::active_user()->admin) {
+ message::warning(t("This site is currently in maintenance mode. Visit the <a href=\"%maintenance_url\">maintenance page</a>", array("maintenance_url" => url::site("admin/maintenance"))));
+ } else
+ message::warning(t("This site is currently in maintenance mode."));
}
}
@@ -234,6 +236,13 @@ class Theme_View_Core extends Gallery_View {
case "thumb_bottom":
case "thumb_info":
case "thumb_top":
+ if ($function == "head") {
+ // Stash any CSS we have already; that came from the theme and we want theme CSS to
+ // override module CSs
+ $save_css = $this->css;
+ $this->css = array();
+ }
+
$blocks = array();
if (method_exists("gallery_theme", $function)) {
switch (count($args)) {
@@ -273,6 +282,8 @@ class Theme_View_Core extends Gallery_View {
}
if ($function == "head") {
+ // Merge the theme CSS/JS at the end
+ $this->css = array_merge($this->css, $save_css);
array_unshift($blocks, $this->combine_files($this->css, "css"));
array_unshift($blocks, $this->combine_files($this->scripts, "javascript"));
}