summaryrefslogtreecommitdiff
path: root/modules/gallery/helpers/gallery_task.php
diff options
context:
space:
mode:
Diffstat (limited to 'modules/gallery/helpers/gallery_task.php')
-rw-r--r--modules/gallery/helpers/gallery_task.php41
1 files changed, 23 insertions, 18 deletions
diff --git a/modules/gallery/helpers/gallery_task.php b/modules/gallery/helpers/gallery_task.php
index 9ce2c4a0..1b56ab97 100644
--- a/modules/gallery/helpers/gallery_task.php
+++ b/modules/gallery/helpers/gallery_task.php
@@ -45,7 +45,7 @@ class gallery_task_Core {
* @param Task_Model the task
*/
static function rebuild_dirty_images($task) {
- $message = array();
+ $errors = array();
try {
$result = graphics::find_dirty_images_query();
$completed = $task->get("completed", 0);
@@ -60,14 +60,15 @@ class gallery_task_Core {
$item = ORM::factory("item", $row->id);
if ($item->loaded) {
- $success = graphics::generate($item);
- if (!$success) {
+ try {
+ graphics::generate($item);
$ignored[$item->id] = 1;
- $message[] = t("Unable to rebuild images for '%title'",
- array("title" => p::purify($item->title)));
- } else {
- $message[] = t("Successfully rebuilt images for '%title'",
- array("title" => p::purify($item->title)));
+ $errors[] = t("Successfully rebuilt images for '%title'",
+ array("title" => html::purify($item->title)));
+ } catch (Exception $e) {
+ $errors[] = t("Unable to rebuild images for '%title'",
+ array("title" => html::purify($item->title)));
+ $errors[] = $e->__toString();
}
}
@@ -101,13 +102,15 @@ class gallery_task_Core {
$task->done = true;
$task->state = "error";
$task->status = $e->getMessage();
- $message[] = $e->__toString();
+ $errors[] = $e->__toString();
+ }
+ if ($errors) {
+ $task->log($errors);
}
- $task->log($message);
}
static function update_l10n(&$task) {
- $message = array();
+ $errors = array();
try {
$start = microtime(true);
$dirs = $task->get("dirs");
@@ -139,8 +142,8 @@ class gallery_task_Core {
}
}
- $message[] = $task->status = t2("Finding files: found 1 file",
- "Finding files: found %count files", count($files));
+ $task->status = t2("Finding files: found 1 file",
+ "Finding files: found %count files", count($files));
if (!$dirs) {
$task->set("mode", "scan_files");
@@ -165,8 +168,8 @@ class gallery_task_Core {
}
$total_files = $task->get("total_files");
- $message[] = $task->status = t2("Scanning files: scanned 1 file",
- "Scanning files: scanned %count files", $total_files - count($files));
+ $task->status = t2("Scanning files: scanned 1 file",
+ "Scanning files: scanned %count files", $total_files - count($files));
$task->percent_complete = 10 + 80 * ($total_files - count($files)) / $total_files;
if (empty($files)) {
@@ -177,7 +180,7 @@ class gallery_task_Core {
break;
case "fetch_updates": // 90% - 100%
- $message = array_merge($message, l10n_client::fetch_updates());
+ l10n_client::fetch_updates();
$task->done = true;
$task->state = "success";
$task->status = t("Translations installed/updated");
@@ -191,8 +194,10 @@ class gallery_task_Core {
$task->done = true;
$task->state = "error";
$task->status = $e->getMessage();
- $message[] = $e->__toString();
+ $errors[] = $e->__toString();
+ }
+ if ($errors) {
+ $task->log($errors);
}
- $task->log($message);
}
} \ No newline at end of file