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