diff --git a/3.0/modules/social_share/controllers/admin_social_share.php b/3.0/modules/social_share/controllers/admin_social_share.php index 7c2aac32..cf330fcc 100644 --- a/3.0/modules/social_share/controllers/admin_social_share.php +++ b/3.0/modules/social_share/controllers/admin_social_share.php @@ -42,6 +42,8 @@ class Admin_Social_Share_Controller extends Admin_Controller { module::set_var("social_share", "google_enabled", $form->google_settings->google_enabled->value); module::set_var("social_share", "google_size", $form->google_settings->google_size->value); module::set_var("social_share", "google_annotation", $form->google_settings->google_annotation->value); + module::set_var("social_share", "pinterest_enabled", $form->pinterest_settings->pinterest_enabled->value); + module::set_var("social_share", "pinterest_count_location", $form->pinterest_settings->pinterest_count_location->value); module::set_var("social_share", "twitter_enabled", $form->twitter_settings->twitter_enabled->value); module::set_var("social_share", "twitter_count_location", $form->twitter_settings->twitter_count_location->value); module::set_var("social_share", "twitter_size", $form->twitter_settings->twitter_size->value); @@ -62,6 +64,12 @@ class Admin_Social_Share_Controller extends Admin_Controller { private function _get_form() { $form = new Forge("admin/social_share/handler", "", "post", array("id" => "g-admin-form")); +/// General Settings + $group_general = $form->group("general_settings")->label(t("General Settings")); + $group_general->checkbox("general_impage_only")->label(t("Display the enabled buttons on image and movie pages only")) + ->checked(module::get_var("social_share", "general_impage_only", true) == 1); + +/// Facebook settings $group_facebook_share = $form->group("facebook_share_settings")->label(t("Facebook Share Button Settings")); $group_facebook_share->checkbox("facebook_share_enabled")->label(t("Display the button")) ->checked(module::get_var("social_share", "facebook_share_enabled", false) == 1); @@ -107,7 +115,8 @@ class Admin_Social_Share_Controller extends Admin_Controller { "button_count" => t("Button count"), "box_count" => t("Box count"))) ->selected(module::get_var("social_share", "facebook_like_layout")); - + +/// Google settings $group_google = $form->group("google_settings")->label(t("Google+ +1 Button Settings")); $group_google->checkbox("google_enabled")->label(t("Display the button")) ->checked(module::get_var("social_share", "google_enabled", false) == 1); @@ -125,6 +134,18 @@ class Admin_Social_Share_Controller extends Admin_Controller { "none" => t("None"))) ->selected(module::get_var("social_share", "google_annotation")); +/// Pinterest settings + $group_pinterest = $form->group("pinterest_settings")->label(t("Pinterest Pinit Settings")); + $group_pinterest->checkbox("pinterest_enabled")->label(t("Display the button")) + ->checked(module::get_var("social_share", "pinterest_enabled", false) == 1); + $group_pinterest->dropdown("pinterest_count_location") + ->label(t("Tweet count location")) + ->options(array("horizontal" => t("Horizontal"), + "vertical" => t("Vertical"), + "none" => t("None"))) + ->selected(module::get_var("social_share", "pinterest_count_location")); + +/// Twitter settings $group_twitter = $form->group("twitter_settings")->label(t("Twitter Tweet Settings")); $group_twitter->checkbox("twitter_enabled")->label(t("Display the button")) ->checked(module::get_var("social_share", "twitter_enabled", false) == 1); diff --git a/3.0/modules/social_share/helpers/social_share_block.php b/3.0/modules/social_share/helpers/social_share_block.php index 6f592da3..4f4829d0 100644 --- a/3.0/modules/social_share/helpers/social_share_block.php +++ b/3.0/modules/social_share/helpers/social_share_block.php @@ -18,30 +18,37 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class social_share_block_Core { - static function get_site_list() { - return array( - "social_share" => t("Social Share")); - } + static function get_site_list() { + return array("social_share" => t("Social Share")); + } - static function get($block_id, $theme) { - - $block = new Block(); - $block->css_id = "g-social-share"; - $block->title = 'Share With Friends'; - $block->content = ''; - if(module::get_var("social_share", "facebook_share_enabled")){ - $block->content .= new View("facebook_share.html"); - } - if(module::get_var("social_share", "facebook_like_enabled")){ - $block->content .= new View("facebook_like.html"); - } - if(module::get_var("social_share", "google_enabled")){ - $block->content .= new View("google.html"); - } - if(module::get_var("social_share", "twitter_enabled")){ - $block->content .= new View("twitter.html"); - } - - return $block; - } + static function get($block_id, $theme) { + /// Check if the user wants to show the block on all pages or just the image and movie page types. + $impageonly = module::get_var("social_share", "general_impage_only"); + $showblock = !$impageonly || ($impageonly && ($theme->page_subtype == "photo") || ($theme->page_subtype == "movie")); + + if ($showblock){ + $block = new Block(); + $block->css_id = "g-social-share"; + $block->title = 'Share With Friends'; + $block->content = ''; + if(module::get_var("social_share", "facebook_share_enabled")){ + $block->content .= new View("facebook_share.html"); + } + if(module::get_var("social_share", "facebook_like_enabled")){ + $block->content .= new View("facebook_like.html"); + } + if(module::get_var("social_share", "google_enabled")){ + $block->content .= new View("google.html"); + } + if(module::get_var("social_share", "pinterest_enabled")){ + $block->content .= new View("pinterest.html"); + } + if(module::get_var("social_share", "twitter_enabled")){ + $block->content .= new View("twitter.html"); + } + + return $block; + } + } } \ No newline at end of file diff --git a/3.0/modules/social_share/helpers/social_share_installer.php b/3.0/modules/social_share/helpers/social_share_installer.php index 153589c1..8fe06371 100644 --- a/3.0/modules/social_share/helpers/social_share_installer.php +++ b/3.0/modules/social_share/helpers/social_share_installer.php @@ -18,39 +18,46 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class social_share_installer { - static function deactivate() { - module::clear_var("social_share", "facebook_share_enabled"); - module::clear_var("social_share", "facebook_share_layout"); - module::clear_var("social_share", "facebook_share_link_text"); - module::clear_var("social_share", "facebook_like_enabled"); - module::clear_var("social_share", "facebook_like_appId"); - module::clear_var("social_share", "facebook_like_adminId"); - module::clear_var("social_share", "facebook_like_site_name"); - module::clear_var("social_share", "facebook_like_code_type"); - module::clear_var("social_share", "facebook_like_show_faces"); - module::clear_var("social_share", "facebook_like_send"); - module::clear_var("social_share", "facebook_like_action"); - module::clear_var("social_share", "facebook_like_layout"); - module::clear_var("social_share", "google_enabled"); - module::clear_var("social_share", "google_size"); - module::clear_var("social_share", "google_annotation"); - module::clear_var("social_share", "twitter_enabled"); - module::clear_var("social_share", "twitter_count_location"); - module::clear_var("social_share", "twitter_size"); - } - static function upgrade($version) { - if ($version < 1) { - module::set_version("social_share", $version = 1); + static function deactivate() { + module::clear_var("social_share", "general_impage_only"); + module::clear_var("social_share", "facebook_share_enabled"); + module::clear_var("social_share", "facebook_share_layout"); + module::clear_var("social_share", "facebook_share_link_text"); + module::clear_var("social_share", "facebook_like_enabled"); + module::clear_var("social_share", "facebook_like_appId"); + module::clear_var("social_share", "facebook_like_adminId"); + module::clear_var("social_share", "facebook_like_site_name"); + module::clear_var("social_share", "facebook_like_code_type"); + module::clear_var("social_share", "facebook_like_show_faces"); + module::clear_var("social_share", "facebook_like_send"); + module::clear_var("social_share", "facebook_like_action"); + module::clear_var("social_share", "facebook_like_layout"); + module::clear_var("social_share", "google_enabled"); + module::clear_var("social_share", "google_size"); + module::clear_var("social_share", "google_annotation"); + module::clear_var("social_share", "pinterest_enabled"); + module::clear_var("social_share", "pinterest_count_location"); + module::clear_var("social_share", "twitter_enabled"); + module::clear_var("social_share", "twitter_count_location"); + module::clear_var("social_share", "twitter_size"); } + static function upgrade($version) { + if ($version < 1) { + module::set_version("social_share", $version = 1); + } - if ($version < 2) { - module::set_var("social_share", "facebook_share_enabled", module::get_var("social_share", "facebook")); - module::clear_var("social_share", "facebook"); - module::set_var("social_share", "google_enabled", module::get_var("social_share", "google")); - module::clear_var("social_share", "google"); - module::set_var("social_share", "twitter_enabled", module::get_var("social_share", "twitter")); - module::clear_var("social_share", "twitter"); - module::set_version("social_share", $version = 2); + if ($version < 2) { + module::set_var("social_share", "facebook_share_enabled", module::get_var("social_share", "facebook")); + module::clear_var("social_share", "facebook"); + module::set_var("social_share", "google_enabled", module::get_var("social_share", "google")); + module::clear_var("social_share", "google"); + module::set_var("social_share", "twitter_enabled", module::get_var("social_share", "twitter")); + module::clear_var("social_share", "twitter"); + module::set_version("social_share", $version = 2); + } + + if ($version < 3) { + module::set_version("social_share", $version = 3); + } } - } } \ No newline at end of file diff --git a/3.0/modules/social_share/helpers/social_share_theme.php b/3.0/modules/social_share/helpers/social_share_theme.php index 02a2542c..9a8ec958 100644 --- a/3.0/modules/social_share/helpers/social_share_theme.php +++ b/3.0/modules/social_share/helpers/social_share_theme.php @@ -18,21 +18,24 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class social_share_theme_Core { - static function head($theme) { - if ($theme->item()) { - $item = $theme->item(); - $url = $item->thumb_url(true); - $appId = module::get_var("social_share", "facebook_like_appId"); - $adminId = module::get_var("social_share", "facebook_like_adminId"); - $site_name = module::get_var("social_share", "facebook_like_site_name"); - $selfURL = url::abs_current(true); - return "\t - title\"/> - - - - - "; - } - } + static function head($theme) { + $impageonly = module::get_var("social_share", "general_impage_only"); + $showblock = !$impageonly || ($impageonly && ($theme->page_subtype == "photo") || ($theme->page_subtype == "movie")); + + if ($showblock && $theme->item()) { + $item = $theme->item(); + $url = $item->thumb_url(true); + $appId = module::get_var("social_share", "facebook_like_appId"); + $adminId = module::get_var("social_share", "facebook_like_adminId"); + $site_name = module::get_var("social_share", "facebook_like_site_name"); + $selfURL = url::abs_current(true); + return "\t + title\"/> + + + + + "; + } + } } \ No newline at end of file diff --git a/3.0/modules/social_share/module.info b/3.0/modules/social_share/module.info index 288bdf7d..fd1f963a 100644 --- a/3.0/modules/social_share/module.info +++ b/3.0/modules/social_share/module.info @@ -1,6 +1,6 @@ name = "Social Share" description = "Adds links to share the page to social media sites in the sidebar." -version = 2 +version = 3 author_name = "jasonhardin" author_url = "http://codex.gallery2.org/User:psychoph" info_url = "http://codex.gallery2.org/Gallery3:Modules:social_share" diff --git a/3.0/modules/social_share/views/facebook_like.html.php b/3.0/modules/social_share/views/facebook_like.html.php index a831607e..5758472f 100644 --- a/3.0/modules/social_share/views/facebook_like.html.php +++ b/3.0/modules/social_share/views/facebook_like.html.php @@ -46,7 +46,6 @@ if (module::get_var("social_share", "facebook_like_send")) { - diff --git a/3.0/modules/social_share/views/pinterest.html.php b/3.0/modules/social_share/views/pinterest.html.php new file mode 100644 index 00000000..59d3d66f --- /dev/null +++ b/3.0/modules/social_share/views/pinterest.html.php @@ -0,0 +1,13 @@ +item()) { + $item = $theme->item(); + $media = $item->thumb_url(true); +?> + +"> + + + \ No newline at end of file