Ejemplo n.º 1
0
 /**
  * Registers settings for the general tab.
  */
 private static function registerGeneralSettings()
 {
     global $dg_options;
     include_once DG_PATH . 'inc/class-gallery.php';
     include_once DG_PATH . 'inc/class-thumber.php';
     $defaults = $dg_options['gallery'];
     $active = $dg_options['thumber']['active'];
     add_settings_section('gallery_defaults', __('Default Settings', 'document-gallery'), array(__CLASS__, 'renderDefaultSettingsSection'), DG_OPTION_NAME);
     add_settings_section('thumbnail_generation', __('Thumbnail Generation', 'document-gallery'), array(__CLASS__, 'renderThumberSection'), DG_OPTION_NAME);
     add_settings_section('css', __('Custom CSS', 'document-gallery'), array(__CLASS__, 'renderCssSection'), DG_OPTION_NAME);
     add_settings_field('gallery_defaults_attachment_pg', 'attachment_pg', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_attachment_pg', 'name' => 'gallery_defaults][attachment_pg', 'value' => esc_attr($defaults['attachment_pg']), 'option_name' => DG_OPTION_NAME, 'description' => __('Link to attachment page rather than to file', 'document-gallery')));
     add_settings_field('gallery_defaults_columns', 'columns', array(__CLASS__, 'renderTextField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_columns', 'name' => 'gallery_defaults][columns', 'value' => esc_attr($defaults['columns']), 'type' => 'number" min="1" step="1', 'option_name' => DG_OPTION_NAME, 'description' => __('The number of columns to display when not rendering descriptions.', 'document-gallery')));
     add_settings_field('gallery_defaults_descriptions', 'descriptions', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_descriptions', 'name' => 'gallery_defaults][descriptions', 'value' => esc_attr($defaults['descriptions']), 'option_name' => DG_OPTION_NAME, 'description' => __('Include document descriptions', 'document-gallery')));
     add_settings_field('gallery_defaults_fancy', 'fancy', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_fancy', 'name' => 'gallery_defaults][fancy', 'value' => esc_attr($defaults['fancy']), 'option_name' => DG_OPTION_NAME, 'description' => __('Use auto-generated document thumbnails', 'document-gallery')));
     add_settings_field('gallery_defaults_order', 'order', array(__CLASS__, 'renderSelectField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_order', 'name' => 'gallery_defaults][order', 'value' => esc_attr($defaults['order']), 'options' => DG_Gallery::getOrderOptions(), 'option_name' => DG_OPTION_NAME, 'description' => __('Ascending or descending sorting of documents', 'document-gallery')));
     add_settings_field('gallery_defaults_orderby', 'orderby', array(__CLASS__, 'renderSelectField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_orderby', 'name' => 'gallery_defaults][orderby', 'value' => esc_attr($defaults['orderby']), 'options' => DG_Gallery::getOrderbyOptions(), 'option_name' => DG_OPTION_NAME, 'description' => __('Which field to order documents by', 'document-gallery')));
     add_settings_field('gallery_defaults_relation', 'relation', array(__CLASS__, 'renderSelectField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_relation', 'name' => 'gallery_defaults][relation', 'value' => esc_attr($defaults['relation']), 'options' => DG_Gallery::getRelationOptions(), 'option_name' => DG_OPTION_NAME, 'description' => __('Whether matched documents must have all taxa_names (AND) or at least one (OR)', 'document-gallery')));
     add_settings_field('gallery_defaults_limit', 'limit', array(__CLASS__, 'renderTextField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_limit', 'name' => 'gallery_defaults][limit', 'value' => esc_attr($defaults['limit']), 'type' => 'number" min="-1" step="1', 'option_name' => DG_OPTION_NAME, 'description' => __('Limit the number of documents included. -1 means no limit.', 'document-gallery')));
     add_settings_field('gallery_defaults_mime_types', 'mime_types', array(__CLASS__, 'renderTextField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_mime_types', 'name' => 'gallery_defaults][mime_types', 'value' => esc_attr($defaults['mime_types']), 'type' => 'text', 'option_name' => DG_OPTION_NAME, 'description' => __('Comma-delimited list of <a href="http://en.wikipedia.org/wiki/Internet_media_type#List_of_common_media_types">MIME types</a>.', 'document-gallery')));
     add_settings_field('gallery_defaults_new_window', 'new_window', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_new_window', 'name' => 'gallery_defaults][new_window', 'value' => esc_attr($defaults['new_window']), 'option_name' => DG_OPTION_NAME, 'description' => __('Open thumbnail links in new window', 'document-gallery') . '.'));
     add_settings_field('gallery_defaults_post_status', 'post_status', array(__CLASS__, 'renderSelectField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_post_status', 'name' => 'gallery_defaults][post_status', 'value' => esc_attr($defaults['post_status']), 'options' => DG_Gallery::getPostStatuses(), 'option_name' => DG_OPTION_NAME, 'description' => __('Which post status to look for when querying documents.', 'document-gallery')));
     add_settings_field('gallery_defaults_post_type', 'post_type', array(__CLASS__, 'renderSelectField'), DG_OPTION_NAME, 'gallery_defaults', array('label_for' => 'label_gallery_defaults_post_type', 'name' => 'gallery_defaults][post_type', 'value' => esc_attr($defaults['post_type']), 'options' => DG_Gallery::getPostTypes(), 'option_name' => DG_OPTION_NAME, 'description' => __('Which post type to look for when querying documents.', 'document-gallery')));
     add_settings_field('thumbnail_generation_av', __('Audio/Video', 'document-gallery'), array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'thumbnail_generation', array('label_for' => 'label_thumbnail_generation_av', 'name' => 'thumbnail_generation][av', 'value' => esc_attr($active['av']), 'option_name' => DG_OPTION_NAME, 'description' => esc_html__('Locally generate thumbnails for audio & video files.', 'document-gallery')));
     add_settings_field('thumbnail_generation_gs', 'Ghostscript', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'thumbnail_generation', array('label_for' => 'label_thumbnail_generation_gs', 'name' => 'thumbnail_generation][gs', 'value' => esc_attr($active['gs']), 'option_name' => DG_OPTION_NAME, 'description' => DG_Thumber::isGhostscriptAvailable() ? __('Use <a href="http://www.ghostscript.com/" target="_blank">Ghostscript</a> for faster local PDF processing (compared to Imagick).', 'document-gallery') : __('Your server is not configured to run <a href="http://www.ghostscript.com/" target="_blank">Ghostscript</a>.', 'document-gallery'), 'disabled' => !DG_Thumber::isGhostscriptAvailable()));
     add_settings_field('thumbnail_generation_imagick', 'Imagick', array(__CLASS__, 'renderCheckboxField'), DG_OPTION_NAME, 'thumbnail_generation', array('label_for' => 'label_thumbnail_generation_imagick', 'name' => 'thumbnail_generation][imagick', 'value' => esc_attr($active['imagick']), 'option_name' => DG_OPTION_NAME, 'description' => DG_Thumber::isImagickAvailable() ? __('Use <a href="http://www.php.net/manual/en/book.imagick.php" target="_blank">Imagick</a> to handle lots of filetypes locally.', 'document-gallery') : __('Your server is not configured to run <a href="http://www.php.net/manual/en/book.imagick.php" target="_blank">Imagick</a>.', 'document-gallery'), 'disabled' => !DG_Thumber::isImagickAvailable()));
     add_settings_field('thumbnail_generation_width', __('Max Thumbnail Dimensions', 'document-gallery'), array(__CLASS__, 'renderMultiTextField'), DG_OPTION_NAME, 'thumbnail_generation', array(array('label_for' => 'label_advanced_width', 'name' => 'thumbnail_generation][width', 'value' => esc_attr($dg_options['thumber']['width']), 'type' => 'number" min="1" step="1', 'option_name' => DG_OPTION_NAME, 'description' => ' x '), array('label_for' => 'label_advanced_height', 'name' => 'thumbnail_generation][height', 'value' => esc_attr($dg_options['thumber']['height']), 'type' => 'number" min="1" step="1', 'option_name' => DG_OPTION_NAME, 'description' => __('The max width and height (in pixels) that thumbnails will be generated.', 'document-gallery'))));
 }