From f64e2d63b9ee66482b3461ecb6ee8f7776e23b87 Mon Sep 17 00:00:00 2001 From: Fabio Comuni Date: Mon, 10 Oct 2011 15:28:34 +0200 Subject: [PATCH] New common tab template. Update css --- boot.php | 44 +++++++++ mod/events.php | 12 +-- mod/network.php | 126 +++++++++++++------------ mod/notes.php | 14 +-- mod/photos.php | 12 +-- mod/profile.php | 15 +-- mod/settings.php | 18 +++- view/common_tabs.tpl | 5 + view/profile_tabs.tpl | 9 -- view/settings_tabs.tpl | 6 -- view/theme/clean/style.css | 2 +- view/theme/darkness/style.css | 8 +- view/theme/darkzero/style.css | 2 +- view/theme/dispy/profile_tabs.tpl | 9 -- view/theme/dispy/style.css | 10 +- view/theme/duepuntozero/style.css | 34 +++---- view/theme/easterbunny/style.css | 2 +- view/theme/goldenrod/style.css | 2 +- view/theme/greenzero/style.css | 2 +- view/theme/loozah/style.css | 31 +----- view/theme/purplezero/style.css | 2 +- view/theme/shady/style.css | 2 +- view/theme/testbubble/profile_tabs.tpl | 9 -- view/theme/testbubble/style.css | 10 +- view/theme/three-d/style.css | 2 +- 25 files changed, 173 insertions(+), 215 deletions(-) create mode 100644 view/common_tabs.tpl delete mode 100644 view/profile_tabs.tpl delete mode 100644 view/settings_tabs.tpl delete mode 100644 view/theme/dispy/profile_tabs.tpl delete mode 100644 view/theme/testbubble/profile_tabs.tpl diff --git a/boot.php b/boot.php index c8ec846810..d4e9ed0d63 100644 --- a/boot.php +++ b/boot.php @@ -1161,3 +1161,47 @@ function load_contact_links($uid) { return; }} +if(! function_exists('profile_tabs')){ +function profile_tabs($a, $is_owner=False){ + //echo "
"; var_dump($a->user); killme();
+	
+		
+	if(x($_GET,'tab'))
+		$tab = notags(trim($_GET['tab']));
+	
+	$url = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
+
+	$tabs = array(
+		array(
+			'label'=>t('Status'),
+			'url' => $url,
+			'sel' => ((!isset($tab)&&$a->argv[0]=='profile')?'active':''),
+		),
+		array(
+			'label' => t('Profile'),
+			'url' 	=> $url.'/?tab=profile',
+			'sel'	=> (($tab=='profile')?'active':''),
+		),
+		array(
+			'label' => t('Photos'),
+			'url'	=> $a->get_baseurl() . '/photos/' . $a->user['nickname'],
+			'sel'	=> ((!isset($tab)&&$a->argv[0]=='photos')?'active':''),
+		),
+	);
+	
+	if ($is_owner){
+		 $tabs[] = array(
+			'label' => t('Events'),
+			'url'	=> $a->get_baseurl() . '/events',
+			'sel' 	=>((!isset($tab)&&$a->argv[0]=='events')?'active':''),
+		);
+		$tabs[] = array(
+			'label' => t('Personal Notes'),
+			'url'	=> $a->get_baseurl() . '/notes',
+			'sel' 	=>((!isset($tab)&&$a->argv[0]=='notes')?'active':''),
+		);
+	}
+
+	$tpl = get_markup_template('common_tabs.tpl');
+	return replace_macros($tpl,array('$tabs'=>$tabs));
+}}	
diff --git a/mod/events.php b/mod/events.php
index 5bc9807ed7..fb68d53dbc 100644
--- a/mod/events.php
+++ b/mod/events.php
@@ -112,17 +112,7 @@ function events_content(&$a) {
 
 	$o ="";
 	// tabs
-	$tpl = get_markup_template('profile_tabs.tpl');
-	$o .= replace_macros($tpl,array(
-		'$url' => $a->get_baseurl() . '/profile/' . $a->user['nickname'],
-		'$phototab' => $a->get_baseurl() . '/photos/' . $a->user['nickname'],
-		'$status' => t('Status'),
-		'$profile' => t('Profile'),
-		'$photos' => t('Photos'),
-		'$events' => t('Events') ,
-		'$notes' => t('Personal Notes'),
-		'$activetab' => "events",
-	));	
+	$o .= profile_tabs($a, True);	
 
 	$o .= '

' . t('Events') . '

'; diff --git a/mod/network.php b/mod/network.php index f0e9e4441c..9b7c4e6112 100644 --- a/mod/network.php +++ b/mod/network.php @@ -42,66 +42,7 @@ function network_init(&$a) { ); } - // item filter tabs - // TODO: fix this logic, reduce duplication - $a->page['content'] .= '
'; - - $starred_active = ''; - $new_active = ''; - $bookmarked_active = ''; - $all_active = ''; - $search_active = ''; - - if(($a->argc > 1 && $a->argv[1] === 'new') - || ($a->argc > 2 && $a->argv[2] === 'new')) { - $new_active = 'active'; - } - - if(x($_GET,'search')) { - $search_active = 'active'; - } - - if(x($_GET,'star')) { - $starred_active = 'active'; - } - - if($_GET['bmark']) { - $bookmarked_active = 'active'; - } - - if (($new_active == '') - && ($starred_active == '') - && ($bookmarked_active == '') - && ($search_active == '')) { - $all_active = 'active'; - } - - // network links moved to content to match other pages - // all - // added 'button' class for easier styling - not the best place for it, should be moved into the tpl like profile_tabs.tpl - // once there is a network_tabs.tpl or something - $a->page['content'] .= '' - . t('All') . ''; - - // new - $a->page['content'] .= '' - . t('New') . ''; - - // starred - $a->page['content'] .= '' - . t('Starred') . ''; - - // bookmarks - $a->page['content'] .= '' - . t('Bookmarks') . ''; - - $a->page['content'] .= '
'; - // --- end item filter tabs + // search terms header if(x($_GET,'search')) { @@ -157,6 +98,71 @@ function network_content(&$a, $update = 0) { $o = ''; + // item filter tabs + // TODO: fix this logic, reduce duplication + $a->page['content'] .= '
'; + + $starred_active = ''; + $new_active = ''; + $bookmarked_active = ''; + $all_active = ''; + $search_active = ''; + + if(($a->argc > 1 && $a->argv[1] === 'new') + || ($a->argc > 2 && $a->argv[2] === 'new')) { + $new_active = 'active'; + } + + if(x($_GET,'search')) { + $search_active = 'active'; + } + + if(x($_GET,'star')) { + $starred_active = 'active'; + } + + if($_GET['bmark']) { + $bookmarked_active = 'active'; + } + + if (($new_active == '') + && ($starred_active == '') + && ($bookmarked_active == '') + && ($search_active == '')) { + $all_active = 'active'; + } + + // tabs + $tabs = array( + array( + 'label' => t('All'), + 'url'=>$a->get_baseurl() . '/' . str_replace('/new', '', $a->cmd) . ((x($_GET,'cid')) ? '?cid=' . $_GET['cid'] : ''), + 'sel'=>$all_active, + ), + array( + 'label' => t('New'), + 'url' => $a->get_baseurl() . '/' . str_replace('/new', '', $a->cmd) . '/new' . ((x($_GET,'cid')) ? '/?cid=' . $_GET['cid'] : ''), + 'sel' => $new_active, + ), + array( + 'label' => t('Starred'), + 'url'=>$a->get_baseurl() . '/' . str_replace('/new', '', $a->cmd) . ((x($_GET,'cid')) ? '/?cid=' . $_GET['cid'] : '') . '&star=1', + 'sel'=>$starred_active, + ), + array( + 'label' => t('Bookmarks'), + 'url'=>$a->get_baseurl() . '/' . str_replace('/new', '', $a->cmd) . ((x($_GET,'cid')) ? '/?cid=' . $_GET['cid'] : '') . '&bmark=1', + 'sel'=>$bookmarked_active, + ), + ); + $tpl = get_markup_template('common_tabs.tpl'); + $o .= replace_macros($tpl, array('$tabs'=>$tabs)); + // --- end item filter tabs + + + + + $contact_id = $a->cid; $group = 0; diff --git a/mod/notes.php b/mod/notes.php index 369f120a76..94ea10e811 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -38,19 +38,7 @@ function notes_content(&$a,$update = false) { $is_owner = true; $o =""; - // tabs - $tpl = get_markup_template('profile_tabs.tpl'); - $o .= replace_macros($tpl,array( - '$url' => $a->get_baseurl() . '/profile/' . $a->user['nickname'], - '$phototab' => $a->get_baseurl() . '/photos/' . $a->user['nickname'], - '$status' => t('Status'), - '$profile' => t('Profile'), - '$photos' => t('Photos'), - '$events' => t('Events') , - '$notes' => t('Personal Notes'), - '$activetab' => "notes", - )); - + $o .= profile_tabs($a,True); if(! $update) { $o .= '

' . t('Personal Notes') . '

'; diff --git a/mod/photos.php b/mod/photos.php index 1321af1920..623b15a93b 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -831,18 +831,8 @@ function photos_content(&$a) { $o = ""; // tabs - $tpl = get_markup_template('profile_tabs.tpl'); $_is_owner = (local_user() && (local_user() == $owner_uid)); - $o .= replace_macros($tpl,array( - '$url' => $a->get_baseurl() . '/profile/' .$a->data['user']['nickname'], - '$phototab' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - '$status' => t('Status'), - '$profile' => t('Profile'), - '$photos' => t('Photos'), - '$events' => (($_is_owner) ? t('Events') : ''), - '$notes' => (($_is_owner) ? t('Personal Notes') : ''), - '$activetab' => "photos", - )); + $o .= profile_tabs($a,$_is_owner); // // dispatch request diff --git a/mod/profile.php b/mod/profile.php index 50bbdd46e4..9da0784d37 100644 --- a/mod/profile.php +++ b/mod/profile.php @@ -110,18 +110,7 @@ function profile_content(&$a, $update = 0) { if(x($_GET,'tab')) $tab = notags(trim($_GET['tab'])); - $tpl = get_markup_template('profile_tabs.tpl'); - - $o .= replace_macros($tpl,array( - '$url' => $a->get_baseurl() . '/' . $a->cmd, - '$phototab' => $a->get_baseurl() . '/photos/' . $a->profile['nickname'], - '$status' => t('Status'), - '$profile' => t('Profile'), - '$photos' => t('Photos'), - '$events' => (($is_owner) ? t('Events') : ''), - '$notes' => (($is_owner) ? t('Personal Notes') : ''), - '$activetab' => $tab, - )); + $o.=profile_tabs($a, $is_owner); if($tab === 'profile') { @@ -131,6 +120,8 @@ function profile_content(&$a, $update = 0) { return $o; } + + if(x($_SESSION,'new_member') && $_SESSION['new_member'] && $is_owner) $o .= '' . t('Tips for New Members') . '' . EOL; diff --git a/mod/settings.php b/mod/settings.php index 44ebdd77b1..7112db8878 100644 --- a/mod/settings.php +++ b/mod/settings.php @@ -306,10 +306,22 @@ function settings_content(&$a) { return; } - $tabtpl = get_markup_template("settings_tabs.tpl"); + $tabs = array( + array( + 'label' => t('Account settings'), + 'url' => $a->get_baseurl().'/settings', + 'sel' => (($a->argc == 1)?'active':''), + ), + array( + 'label' => t('Plugin settings'), + 'url' => $a->get_baseurl().'/settings/addon', + 'sel' => (($a->argc > 1) && ($a->argv[1] === 'addon')?'active':''), + ) + ); + + $tabtpl = get_markup_template("common_tabs.tpl"); $tabs = replace_macros($tabtpl, array( - '$account' => array( t('Account settings'), $a->get_baseurl().'/settings'), - '$plugins' => array( t('Plugin settings'), $a->get_baseurl().'/settings/addon') + '$tabs' => $tabs, )); diff --git a/view/common_tabs.tpl b/view/common_tabs.tpl new file mode 100644 index 0000000000..146ad29fa0 --- /dev/null +++ b/view/common_tabs.tpl @@ -0,0 +1,5 @@ +
    + {{ for $tabs as $tab }} +
  • $tab.label
  • + {{ endfor }} +
diff --git a/view/profile_tabs.tpl b/view/profile_tabs.tpl deleted file mode 100644 index d57c33acfb..0000000000 --- a/view/profile_tabs.tpl +++ /dev/null @@ -1,9 +0,0 @@ - -
- $status - $profile - $photos - {{ if $events }}$events{{ endif }} - {{ if $notes }}$notes{{ endif }} -
-
diff --git a/view/settings_tabs.tpl b/view/settings_tabs.tpl deleted file mode 100644 index 5003ed8ce6..0000000000 --- a/view/settings_tabs.tpl +++ /dev/null @@ -1,6 +0,0 @@ - - diff --git a/view/theme/clean/style.css b/view/theme/clean/style.css index 4730b5c2fd..86bca371cc 100644 --- a/view/theme/clean/style.css +++ b/view/theme/clean/style.css @@ -59,7 +59,7 @@ body { border: 2px solid #CCCCCC; } -.profile-tabs { +.tab { color: #444444; background: #EEE; diff --git a/view/theme/darkness/style.css b/view/theme/darkness/style.css index 828fdd1040..3bc4c6aeab 100644 --- a/view/theme/darkness/style.css +++ b/view/theme/darkness/style.css @@ -26,7 +26,7 @@ input, select { background-color: #000000; color: #FF0000; } -.nav-link:hover, .nav-commlink:hover, .profile-tabs:hover { +.nav-link:hover, .nav-commlink:hover, .tab:hover { background: #DDDDDD; color: #FF0000; } @@ -49,7 +49,7 @@ input, select { background: #444444; } -.profile-tabs { +.tab { color: #FF0000; background: #444444; @@ -65,7 +65,3 @@ a:hover, .fakelink:hover { text-decoration: underline; } -.profile-tabs { - color: #FF0000; - background: #444444; -} diff --git a/view/theme/darkzero/style.css b/view/theme/darkzero/style.css index b85a9aadaf..454c578b07 100644 --- a/view/theme/darkzero/style.css +++ b/view/theme/darkzero/style.css @@ -17,7 +17,7 @@ aside{ background-image: url(border.jpg); padding-bottom: 0px; } section { background-color: #333333; background-image: url(border.jpg); } -#profile-tabs-wrapper { background-image: url(head.jpg); } +.tabs { background-image: url(head.jpg); } div.wall-item-content-wrapper.shiny { background-image: url('shiny.png'); } nav #banner #logo-text a { color: #ffffff; } diff --git a/view/theme/dispy/profile_tabs.tpl b/view/theme/dispy/profile_tabs.tpl deleted file mode 100644 index c236490b28..0000000000 --- a/view/theme/dispy/profile_tabs.tpl +++ /dev/null @@ -1,9 +0,0 @@ - -
- $status - $profile - $photos - {{ if $events }}$events{{ endif }} - {{ if $notes }}$notes{{ endif }} -
-
diff --git a/view/theme/dispy/style.css b/view/theme/dispy/style.css index 8dc017c9cf..3c92a877b5 100644 --- a/view/theme/dispy/style.css +++ b/view/theme/dispy/style.css @@ -349,11 +349,11 @@ aside #viewcontacts { text-align: right;} section { margin: 10px 11% 0px 11%; font-size: 0.8em; padding-right: 230px;} /** tabs **/ -.tabs-wrapper {list-style: none; padding: 0px; margin: 0px; border-bottom: 1px solid #729fcf; } -.tabs-wrapper li { display: inline;} -.tabs { padding: 0px 5px; margin-right: 10px; } -.tabs:hover { background-color: #729fcf; color: #eeeeec; border: 0px; } -.tabs.active { background-color: #729fcf; color: #eeeeec; border: 0px; } +.tabs {list-style: none; padding: 0px; margin: 0px; border-bottom: 1px solid #729fcf; } +.tabs li { display: inline;} +.tab { padding: 0px 5px; margin-right: 10px; } +.tab:hover { background-color: #729fcf; color: #eeeeec; border: 0px; } +.tab.active { background-color: #729fcf; color: #eeeeec; border: 0px; } /** diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 7dc344f5de..b46a03c386 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -204,34 +204,24 @@ section { min-height: 112px; } - -#profile-tabs-wrapper { - height: 27px; - background-image: url(head.jpg); - background-repeat: repeat-x; - background-position: 0px -20px; - border-bottom: 1px solid #babdb6; -} -.profile-tabs { - display:block; - float:left; - padding: 0.4em; - margin-right: 1em; -} - -#tabs-wrapper { - height: 27px; - background-image: url(head.jpg); - background-repeat: repeat-x; - background-position: 0px -20px; - border-bottom: 1px solid #babdb6; -} .tabs { + height: 27px; + background-image: url(head.jpg); + background-repeat: repeat-x; + background-position: 0px -20px; + border-bottom: 1px solid #babdb6; + padding:0px; +} +.tabs li { margin: 0px; list-style: none; } +.tab { display:block; float:left; padding: 0.4em; margin-right: 1em; } +.tab.active { + font-weight: bold; +} /* footer */ diff --git a/view/theme/easterbunny/style.css b/view/theme/easterbunny/style.css index bbe4394e96..ab2e07053f 100644 --- a/view/theme/easterbunny/style.css +++ b/view/theme/easterbunny/style.css @@ -29,7 +29,7 @@ a:hover {text-decoration: underline; } aside( background-image: url('border.jpg'); } -#profile-tabs-wrapper { background-image: url('head.jpg'); } +.tabs { background-image: url('head.jpg'); } div.wall-item-content-wrapper.shiny { background-image: url('shiny.png'); } diff --git a/view/theme/goldenrod/style.css b/view/theme/goldenrod/style.css index 2a098e9551..47985aaa8e 100644 --- a/view/theme/goldenrod/style.css +++ b/view/theme/goldenrod/style.css @@ -67,7 +67,7 @@ body { background: #FFDDAA !important; } -.profile-tabs { +.tab { color: #444444; background: #FFCC55; diff --git a/view/theme/greenzero/style.css b/view/theme/greenzero/style.css index ab309930ce..204b2677ee 100644 --- a/view/theme/greenzero/style.css +++ b/view/theme/greenzero/style.css @@ -22,7 +22,7 @@ a:hover {text-decoration: underline; } body { background-image: url(head.jpg); } aside( background-image: url(border.jpg); } section { background-image: url(border.jpg); } -#profile-tabs-wrapper { background-image: url(head.jpg); } +.tabs { background-image: url(head.jpg); } div.wall-item-content-wrapper.shiny { background-image: url('shiny.png'); } .fakelink, .fakelink:visited { diff --git a/view/theme/loozah/style.css b/view/theme/loozah/style.css index 962d08fc07..c6250c51c1 100644 --- a/view/theme/loozah/style.css +++ b/view/theme/loozah/style.css @@ -1570,7 +1570,7 @@ padding: 5px 10px 0px; width: 600px; } -.profile-tabs { +.tab { float: left; padding: 4px; margin-top: 10px; @@ -1583,36 +1583,15 @@ padding: 5px 10px 0px; background-color: #ECECEC; border: 1px solid #858585; } -.profile-tabs:hover { +.tab.active, +.tab:hover { background-color: #0CBEFE; color: #F5F6FB; border: 1px solid #F5F6FB; /*cursor: pointer;*/ } - -#profile-tabs-end { - clear: both; -} - -.tabs { - padding: 4px; - margin-top: 10px; - margin-bottom: 10px; - margin-right: 5px; - /*border: 1px solid #CCC;*/ - /*background: #F8F8F8;*/ - font-size: 0.8em; - font-weight: bold; - background-color: #ECECEC; - border: 1px solid #858585; -} -.tabs:hover { - background-color: #0CBEFE; - color: #F5F6FB; - border: 1px solid #F5F6FB; - /*cursor: pointer;*/ -} - +.tabs { padding:0px; margin: 0px; overflow: auto; height: auto;} +.tabs li { margin: 0px; list-style: none; } .comment-edit-text-empty { color: gray; diff --git a/view/theme/purplezero/style.css b/view/theme/purplezero/style.css index 16c9dc6503..f624fadac3 100644 --- a/view/theme/purplezero/style.css +++ b/view/theme/purplezero/style.css @@ -7,7 +7,7 @@ a:hover {text-decoration: underline; } body { background-image: url(head.jpg); } aside( background-image: url(border.jpg); } section { background-image: url(border.jpg); } -#profile-tabs-wrapper { background-image: url(head.jpg); } +.tabs { background-image: url(head.jpg); } div.wall-item-content-wrapper.shiny { background-image: url('shiny.png'); } diff --git a/view/theme/shady/style.css b/view/theme/shady/style.css index 1e3e6ec401..1324af0194 100644 --- a/view/theme/shady/style.css +++ b/view/theme/shady/style.css @@ -18,7 +18,7 @@ body { background: #F4F4F4; } -.profile-tabs { +.tab { color: #444444; background: #F4F4F4; diff --git a/view/theme/testbubble/profile_tabs.tpl b/view/theme/testbubble/profile_tabs.tpl deleted file mode 100644 index ae7c65e1ca..0000000000 --- a/view/theme/testbubble/profile_tabs.tpl +++ /dev/null @@ -1,9 +0,0 @@ - -
- $status - $profile - $photos - {{ if $events }}$events{{ endif }} - {{ if $notes }}$notes{{ endif }} -
-
diff --git a/view/theme/testbubble/style.css b/view/theme/testbubble/style.css index 5621a972b9..341314c1d0 100644 --- a/view/theme/testbubble/style.css +++ b/view/theme/testbubble/style.css @@ -822,22 +822,22 @@ profile-jot-banner-wrapper { /* = Tabs = */ /* ======== */ -.tabs-wrapper { +.tabs { width: 450px; list-style: none; padding: 10px; margin: 0px 0px 10px 0px; border-bottom: 1px solid #efefef; } -.tabs-wrapper li { display: inline;} +.tabs li { display: inline;} -.tabs { +.tab { padding: 5px 10px 5px 10px; margin-right: 5px; font-style: bold; } -.tabs:hover { +.tab:hover { padding: 5px 10px 5px 10px; } @@ -3085,4 +3085,4 @@ ul.menu-popup { #jGrowl { z-index: 20000; -} \ No newline at end of file +} diff --git a/view/theme/three-d/style.css b/view/theme/three-d/style.css index 56d36914ee..ca3f6786dd 100644 --- a/view/theme/three-d/style.css +++ b/view/theme/three-d/style.css @@ -26,7 +26,7 @@ } -.profile-tabs { +.tab { -moz-box-shadow: 5px 5px 5px #888888; -webkit-box-shadow: 5px 5px 5px #888888; box-shadow: 5px 5px 5px #888888;