diff --git a/classes/views/ComicPressSidebarStandard.php b/classes/views/ComicPressSidebarStandard.php
new file mode 100644
index 0000000..02db007
--- /dev/null
+++ b/classes/views/ComicPressSidebarStandard.php
@@ -0,0 +1,63 @@
+all_comic_dates_ok = true;
+ $this->all_comic_dates = array();
+
+ foreach ($comicpress_manager->comic_files as $comic_file) {
+ if (($result = $comicpress_manager->breakdown_comic_filename(pathinfo($comic_file, PATHINFO_BASENAME))) !== false) {
+ if (isset($this->all_comic_dates[$result['date']])) { $this->all_comic_dates_ok = false; break; }
+ $this->all_comic_dates[$result['date']] = true;
+ }
+ }
+
+ $this->too_many_comics_message = "";
+ if ($this->all_comic_dates_ok) {
+ $this->too_many_comics_message = ", " . __("multiple files on the same date!", 'comicpress-manager') . "";
+ }
+
+ $this->subdir_path = '';
+ if (($subdir = $comicpress_manager->get_subcomic_directory()) !== false) {
+ $this->subdir_path .= '/' . $subdir;
+ }
+ }
+
+ function render() {
+ global $comicpress_manager;
+
+ import($this->_partial_path("sidebar"));
+ }
+
+ function _get_thumbnail_generation_info() {
+ global $comicpress_manager;
+
+ $this->thumbnail_generation = array();
+
+ foreach (array('archive', 'rss') as $type) {
+ if (
+ ($comicpress_manager->scale_method !== false) &&
+ ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 1) &&
+ ($comicpress_manager->separate_thumbs_folder_defined[$type]) &&
+ ($comicpress_manager->thumbs_folder_writable[$type])
+ ) {
+ $this->thumbnail_generation[$type] = true;
+ } else {
+ $reasons = array();
+
+ if ($comicpress_manager->scale_method == false) { $reasons[] = __("No scaling software", 'comicpress-manager'); }
+ if ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 0) {
+ $reasons[] = __("Generation disabled", 'comicpress-manager');
+ } else {
+ if (!$comicpress_manager->separate_thumbs_folder_defined[$type]) { $reasons[] = __("Same as comics folder", 'comicpress-manager'); }
+ if (!$comicpress_manager->thumbs_folder_writable[$type]) { $reasons[] = __("Not writable", 'comicpress-manager'); }
+ }
+ $this->thumbnail_generation = $reasons;
+ }
+ }
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/classes/views/ComicPressSidebarStandard/sidebar.inc b/classes/views/ComicPressSidebarStandard/sidebar.inc
new file mode 100644
index 0000000..4c61630
--- /dev/null
+++ b/classes/views/ComicPressSidebarStandard/sidebar.inc
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+ -
+
+
+
+
-
+
+ properties['comic_folder'] . $subdir_path;
+
+ printf(
+ __ngettext(
+ ' (%d comic in folder%s)',
+ ' (%d comics in folder%s)',
+ count($comicpress_manager->comic_files),
+ 'comicpress-manager'
+ ),
+ count($comicpress_manager->comic_files),
+ $this->too_many_comics_message
+ );
+ ?>
+
+
+ __('Archive folder:', 'comicpress-manager'),
+ 'rss' => __('RSS feed folder:', 'comicpress-manager'))
+ as $type => $title) { ?>
+ - properties["${type}_comic_folder"] . $subdir_path; ?>
+ scale_method !== false) &&
+ ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 1) &&
+ ($comicpress_manager->separate_thumbs_folder_defined[$type]) &&
+ ($comicpress_manager->thumbs_folder_writable[$type])
+ ) { ?>
+ ()
+ scale_method == false) { $reasons[] = __("No scaling software", 'comicpress-manager'); }
+ if ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 0) {
+ $reasons[] = __("Generation disabled", 'comicpress-manager');
+ } else {
+ if (!$comicpress_manager->separate_thumbs_folder_defined[$type]) { $reasons[] = __("Same as comics folder", 'comicpress-manager'); }
+ if (!$comicpress_manager->thumbs_folder_writable[$type]) { $reasons[] = __("Not writable", 'comicpress-manager'); }
+ }
+ ?>
+ (">not generating)
+
+
+
+
+ -
+ properties['comiccat']) && count($comicpress_manager->properties['comiccat']) != 1) {
+ _e("Comic categories:", 'comicpress-manager');
+ } else {
+ _e("Comic category:", 'comicpress-manager');
+ }
+ ?>
+ properties['comiccat'])) { ?>
+
+ properties['comiccat'] as $cat_id) { ?>
+ -
+
+
+
+
+ category_info['comiccat']['name'] ?>
+ properties['comiccat']) ?>
+
+
+ -
+ category_info['blogcat']['name'] ?> properties['blogcat']) ?>
+
+
+ -
+
+ ()
+
+
+ -
+
+ Something's misconfigured with your theme...", 'comicpress-manager');
+ } ?>
+
+ detailed_warnings) != 0) { ?>
+ -
+
+
+ detailed_warnings as $warning) { ?>
+
+
+
+
+
+ -
+ ()
+
+
+
+
+
\ No newline at end of file
diff --git a/comicpress_manager_admin.php b/comicpress_manager_admin.php
index f1e9688..8ec24f6 100644
--- a/comicpress_manager_admin.php
+++ b/comicpress_manager_admin.php
@@ -361,146 +361,6 @@ function cpm_available_backup_files_sort($a, $b) {
return ($a[1] > $b[1]) ? -1 : 1;
}
-/**
- * Show the details of the current setup in the Sidebar.
- */
-function cpm_show_comicpress_details() {
- global $comicpress_manager;
-
- $all_comic_dates_ok = true;
- $all_comic_dates = array();
- foreach ($comicpress_manager->comic_files as $comic_file) {
- if (($result = $comicpress_manager->breakdown_comic_filename(pathinfo($comic_file, PATHINFO_BASENAME))) !== false) {
- if (isset($all_comic_dates[$result['date']])) { $all_comic_dates_ok = false; break; }
- $all_comic_dates[$result['date']] = true;
- }
- }
-
- $subdir_path = '';
- if (($subdir = $comicpress_manager->get_subcomic_directory()) !== false) {
- $subdir_path .= '/' . $subdir;
- }
-
- ?>
-
-
-
-
- -
- config_method == "comicpress-config.php") { ?>
- config_method ?>
- can_write_config) { ?>
-
-
-
-
-
- config_method ?>
-
-
-
- -
-
-
-
-
- properties['comic_folder'] . $subdir_path;
- ?>
-
- ,
-
-
- comic_files), 'comicpress-manager'), count($comicpress_manager->comic_files), $too_many_comics_message) ?>
-
-
- __('Archive folder:', 'comicpress-manager'),
- 'rss' => __('RSS feed folder:', 'comicpress-manager'))
- as $type => $title) { ?>
- - properties["${type}_comic_folder"] . $subdir_path; ?>
- scale_method !== false) &&
- ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 1) &&
- ($comicpress_manager->separate_thumbs_folder_defined[$type]) &&
- ($comicpress_manager->thumbs_folder_writable[$type])
- ) { ?>
- ()
- scale_method == false) { $reasons[] = __("No scaling software", 'comicpress-manager'); }
- if ($comicpress_manager->get_cpm_option("cpm-${type}-generate-thumbnails") == 0) {
- $reasons[] = __("Generation disabled", 'comicpress-manager');
- } else {
- if (!$comicpress_manager->separate_thumbs_folder_defined[$type]) { $reasons[] = __("Same as comics folder", 'comicpress-manager'); }
- if (!$comicpress_manager->thumbs_folder_writable[$type]) { $reasons[] = __("Not writable", 'comicpress-manager'); }
- }
- ?>
- (">not generating)
-
-
-
-
- -
- properties['comiccat']) && count($comicpress_manager->properties['comiccat']) != 1) {
- _e("Comic categories:", 'comicpress-manager');
- } else {
- _e("Comic category:", 'comicpress-manager');
- }
- ?>
- properties['comiccat'])) { ?>
-
- properties['comiccat'] as $cat_id) { ?>
- -
-
-
-
-
- category_info['comiccat']['name'] ?>
- properties['comiccat']) ?>
-
-
- -
- category_info['blogcat']['name'] ?> properties['blogcat']) ?>
-
-
- -
-
- ()
-
-
- -
-
- Something's misconfigured with your theme...", 'comicpress-manager');
- } ?>
-
- detailed_warnings) != 0) { ?>
- -
-
-
- detailed_warnings as $warning) { ?>
-
-
-
-
-
- -
- ()
-
-
-
-
-
- 1, 'option-rss' => 1,
+ 'scale_method' => true,
+ 'separate_thumbs_folder_defined' => array('rss' => true, 'archive' => true),
+ 'thumbs_folder_writable' => array('rss' => true, 'archive' => true),
+ 'result' => array('rss' => true, 'archive' => true)
+ ),
+ array(
+ 'option-archive' => 1, 'option-rss' => 1,
+ 'scale_method' => false,
+ 'separate_thumbs_folder_defined' => array('rss' => true, 'archive' => true),
+ 'thumbs_folder_writable' => array('rss' => true, 'archive' => true),
+ 'result' => array('rss' => array("No scaling software"), 'archive' => array("No scaling software"))
+ ),
+ array(
+ 'option-archive' => 0, 'option-rss' => 1,
+ 'scale_method' => true,
+ 'separate_thumbs_folder_defined' => array('rss' => true, 'archive' => true),
+ 'thumbs_folder_writable' => array('rss' => true, 'archive' => true),
+ 'result' => array('rss' => true, 'archive' => array("Generation disabled"))
+ ),
+ array(
+ 'option-archive' => 1, 'option-rss' => 1,
+ 'scale_method' => true,
+ 'separate_thumbs_folder_defined' => array('rss' => false, 'archive' => true),
+ 'thumbs_folder_writable' => array('rss' => true, 'archive' => true),
+ 'result' => array('rss' => array("Same as comics folder"), 'archive' => true)
+ ),
+ array(
+ 'option-archive' => 1, 'option-rss' => 1,
+ 'scale_method' => true,
+ 'separate_thumbs_folder_defined' => array('rss' => true, 'archive' => true),
+ 'thumbs_folder_writable' => array('rss' => true, 'archive' => false),
+ 'result' => array('rss' => true, 'archive' => array("Not writable"))
+ ),
+ );
+ }
+
+ /**
+ * @dataProvider providerTestThumbnailGenerationInfo
+ */
+ function testThumbnailGenerationInfo($info) {
+ global $comicpress_manager;
+
+ $comicpress_manager = $this->getMock('ComicPressManager', array('breakdown_comic_filename', 'get_subcomic_directory', 'get_cpm_option'));
+
+ $comicpress_manager->expects($this->at(2))
+ ->method('get_cpm_option')
+ ->with('cpm-archive-generate-thumbnails')
+ ->will($this->returnValue($info['option-archive']));
+ $comicpress_manager->expects($this->at(3))
+ ->method('get_cpm_option')
+ ->with('cpm-rss-generate-thumbnails')
+ ->will($this->returnValue($info['option-archive']));
+ foreach (array('scale_method', 'separate_thumbs_folder_defined', 'thumbs_folder_writable') as $field) {
+ $comicpress_manager->{$field} = $info['field'];
+ }
+ $comicpress_manager->comic_files = array();
+
+ $s = new ComicPressSidebarStandard();
+ $this->assertEquals($info['result'], $s->_get_thumbnail_generation_info());
+ }
+}
+
+?>
\ No newline at end of file