diff options
-rw-r--r-- | boot.php | 64 | ||||
-rw-r--r-- | mod/dfrn_poll.php | 6 | ||||
-rw-r--r-- | mod/message.php | 4 | ||||
-rw-r--r-- | mod/network.php | 8 | ||||
-rw-r--r-- | mod/profile.php | 2 | ||||
-rw-r--r-- | mod/search.php | 1 | ||||
-rw-r--r-- | view/search_item.tpl | 10 | ||||
-rw-r--r-- | view/theme/duepuntozero/photo-menu.jpg | bin | 0 -> 459 bytes | |||
-rw-r--r-- | view/theme/duepuntozero/style.css | 32 | ||||
-rw-r--r-- | view/theme/loozah/photo-menu.jpg | bin | 0 -> 464 bytes | |||
-rw-r--r-- | view/theme/loozah/style.css | 30 | ||||
-rw-r--r-- | view/wall_item.tpl | 13 |
12 files changed, 163 insertions, 7 deletions
@@ -2668,6 +2668,70 @@ function extract_item_authors($arr,$uid) { return array(); }} +if(! function_exists('item_photo_menu')){ +function item_photo_menu($item){ + $a = get_app(); + + if (!isset($a->authors)){ + $rr = q("SELECT id, network, url FROM contact WHERE uid=%d AND self!=1", intval(local_user())); + $authors = array(); + foreach($rr as $r) $authors[$r['url']]= $r; + $a->authors = $authors; + } + + $contact_url=""; + $pm_url=""; + + $status_link=""; + $photo_link=""; + $profile_link = ((strlen($item['author-link'])) ? $item['author-link'] : $item['url']); + $redirect_url = $a->get_baseurl() . '/redir/' . $item['cid'] ; + + + + if(strlen($item['author-link'])) { + if(link_compare($item['author-link'],$item['url']) && ($item['network'] === 'dfrn') && (! $item['self'])) { + $status_link = $redirect_url."?url=status"; + $profile_link = $redirect_url."?url=profile"; + $photos_link = $redirect_url."?url=photos"; + $pm_url = $a->get_baseurl() . '/message/new/' . $item['cid'] ; + $contact_url = $item['self']?"":$a->get_baseurl() . '/contacts/' . $item['cid'] ; + } + elseif(isset($a->authors[$item['author-link']])) { + $redirect_url = $a->get_baseurl() . '/redir/' . $a->authors[$item['author-link']]['id']; + $status_link = $redirect_url."?url=status"; + $profile_link = $redirect_url."?url=profile"; + $photos_link = $redirect_url."?url=photos"; + + if ($a->authors[$item['author-link']]['network']==='dfrn'){ + $pm_url = $a->get_baseurl() . '/message/new/' . $a->authors[$item['author-link']]['id']; + } + $contact_url = $item['self']?"":$a->get_baseurl() . '/contacts/' . $a->authors[$item['author-link']]['id'] ; + + } + } + + + $menu = Array( + t("View status") => $status_link, + t("View profile") => $profile_link, + t("View photos") => $photos_link, + t("Edit contact") => $contact_url, + t("Send PM") => $pm_url, + ); + + + $args = array($item, &$menu); + + call_hooks('item_photo_menu', $args); + + $o = ""; + foreach($menu as $k=>$v){ + if ($v!="") $o .= "<li><a href='$v'>$k</a></li>\n"; + } + return $o; +}} + if(! function_exists('lang_selector')) { function lang_selector() { global $lang; diff --git a/mod/dfrn_poll.php b/mod/dfrn_poll.php index 4b25efe41..77beabf90 100644 --- a/mod/dfrn_poll.php +++ b/mod/dfrn_poll.php @@ -445,7 +445,7 @@ function dfrn_poll_content(&$a) { 'sec' => $sec )); } - + $profile = $r[0]['nickname']; switch($destination_url) { @@ -489,6 +489,10 @@ function dfrn_poll_content(&$a) { dbesc($session_id) ); } +<<<<<<< HEAD +======= + +>>>>>>> 890753e5b545ca5777c6c9084e99cacf42a3b485 goaway($dest); } diff --git a/mod/message.php b/mod/message.php index 7978ecaf2..7f17a362b 100644 --- a/mod/message.php +++ b/mod/message.php @@ -172,7 +172,9 @@ function message_content(&$a) { '$linkurl' => t('Please enter a link URL:') )); - $select = contact_select('messageto','message-to-select', false, 4, true); + $preselect = (isset($a->argv[2])?array($a->argv[2]):false); + + $select = contact_select('messageto','message-to-select', $preselect, 4, true); $tpl = load_view_file('view/prv_message.tpl'); $o .= replace_macros($tpl,array( '$header' => t('Send Private Message'), diff --git a/mod/network.php b/mod/network.php index a304c211f..42c6c0c29 100644 --- a/mod/network.php +++ b/mod/network.php @@ -217,6 +217,7 @@ function network_content(&$a, $update = 0) { intval($a->pager['start']), intval($a->pager['itemspage']) ); + } else { @@ -323,11 +324,12 @@ function network_content(&$a, $update = 0) { $drop = replace_macros($droptpl,array('$id' => $item['id'])); $lock = '<div class="wall-item-lock"></div>'; - + $o .= replace_macros($tpl,array( '$id' => $item['item_id'], '$linktitle' => t('View $name\'s profile'), '$profile_url' => $profile_link, + '$item_photo_menu' => item_photo_menu($item), '$name' => $profile_name, '$sparkle' => $sparkle, '$lock' => $lock, @@ -551,6 +553,7 @@ function network_content(&$a, $update = 0) { $indent .= ' shiny'; + // Build the HTML $tmp_item = replace_macros($template,array( @@ -561,6 +564,7 @@ function network_content(&$a, $update = 0) { '$wall' => t('Wall-to-Wall'), '$vwall' => t('via Wall-To-Wall:'), '$profile_url' => $profile_link, + '$item_photo_menu' => item_photo_menu($item), '$name' => $profile_name, '$thumb' => $profile_avatar, '$osparkle' => $osparkle, @@ -604,4 +608,4 @@ function network_content(&$a, $update = 0) { } return $o; -}
\ No newline at end of file +} diff --git a/mod/profile.php b/mod/profile.php index 17f6a2d45..ab1e8f738 100644 --- a/mod/profile.php +++ b/mod/profile.php @@ -454,10 +454,12 @@ function profile_content(&$a, $update = 0) { if(strcmp(datetime_convert('UTC','UTC',$item['created']),datetime_convert('UTC','UTC','now - 12 hours')) > 0) $indent .= ' shiny'; + $tmp_item = replace_macros($template,array( '$id' => $item['item_id'], '$linktitle' => t('View $name\'s profile'), '$profile_url' => $profile_link, + '$item_photo_menu' => item_photo_menu($item), '$name' => $profile_name, '$thumb' => $profile_avatar, '$sparkle' => $sparkle, diff --git a/mod/search.php b/mod/search.php index db7279fb5..64281dfcf 100644 --- a/mod/search.php +++ b/mod/search.php @@ -115,6 +115,7 @@ function search_content(&$a) { '$id' => $item['item_id'], '$linktitle' => t('View $name\'s profile'), '$profile_url' => $profile_link, + '$item_photo_menu' => item_photo_menu($item), '$name' => $profile_name, '$sparkle' => $sparkle, '$lock' => $lock, diff --git a/view/search_item.tpl b/view/search_item.tpl index f890bdee5..02c31fe14 100644 --- a/view/search_item.tpl +++ b/view/search_item.tpl @@ -1,9 +1,17 @@ <div class="wall-item-outside-wrapper$indent" id="wall-item-outside-wrapper-$id" > <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" > <span class="wall-item-info" id="wall-item-info-$id"> - <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" > + <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" + onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" + onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)"> <a href="$profile_url" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id"> <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" height="80" width="80" alt="$name" /></a> + <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span> + <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id"> + <ul> + $item_photo_menu + </ul> + </div> </div> <div class="wall-item-photo-end"></div> <div class="wall-item-wrapper" id="wall-item-wrapper-$id" > diff --git a/view/theme/duepuntozero/photo-menu.jpg b/view/theme/duepuntozero/photo-menu.jpg Binary files differnew file mode 100644 index 000000000..fde5eb535 --- /dev/null +++ b/view/theme/duepuntozero/photo-menu.jpg diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 0d59b6590..bfa004a65 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -866,6 +866,37 @@ input#dfrn-url { margin-bottom: 10px; width: 100px; } +.wall-item-photo-menu-button { + display: block; + position: absolute; + background-image: url("photo-menu.jpg"); + background-position: top left; + background-repeat: no-repeat; + margin: 0px; padding: 0px; + width: 16px; + height: 16px; + top: 74px; left:10px; + overflow: hidden; + text-indent: 40px; + display: none; + +} +.wall-item-photo-menu { + width: auto; + border: 2px solid #444444; + background: #FFFFFF; + position: absolute; + left: 10px; top: 90px; + display: none; + z-index: 10000; +} +.wall-item-photo-menu ul { margin:0px; padding: 0px; list-style: none } +.wall-item-photo-menu li a { display: block; padding: 2px; } +.wall-item-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; } + + +.comment .wall-item-photo-menu-button { top: 44px;} +.comment .wall-item-photo-menu { top: 60px; } .wallwall .wwto { left: 50px; @@ -878,6 +909,7 @@ input#dfrn-url { width: 30px; height: 30px; } + .wallwall .wall-item-photo-end { clear: both; } diff --git a/view/theme/loozah/photo-menu.jpg b/view/theme/loozah/photo-menu.jpg Binary files differnew file mode 100644 index 000000000..bd39696a2 --- /dev/null +++ b/view/theme/loozah/photo-menu.jpg diff --git a/view/theme/loozah/style.css b/view/theme/loozah/style.css index 566220711..d6ddb26dd 100644 --- a/view/theme/loozah/style.css +++ b/view/theme/loozah/style.css @@ -959,6 +959,7 @@ input#dfrn-url { .wall-item-content-wrapper { margin-top: 10px; border: 1px solid #CCC; + position: relative; } .wall-item-content-wrapper.comment { @@ -973,6 +974,35 @@ input#dfrn-url { width: 100px; float: left; } + +.wall-item-photo-menu-button { + display: block; + position: absolute; + background-image: url("photo-menu.jpg"); + background-position: top left; + background-repeat: no-repeat; + margin: 0px; padding: 0px; + width: 16px; + height: 16px; + top: 74px; left:10px; + overflow: hidden; + text-indent: 40px; + display: none; +} +.wall-item-photo-menu { + width: auto; + border: 2px solid #444444; + background: #FFFFFF; + position: absolute; + left: 10px; top: 90px; + display: none; + z-index: 10000; +} +.wall-item-photo-menu ul { margin:0px; padding: 0px; list-style: none } +.wall-item-photo-menu li a { display: block; padding: 2px; } +.wall-item-photo-menu li a:hover { color: #FFFFFF; background: #3465A4; text-decoration: none; } + + .wall-item-arrowphoto-wrapper { margin-top: 40px; margin-right: 20px; diff --git a/view/wall_item.tpl b/view/wall_item.tpl index 4c2a3fbf4..893483259 100644 --- a/view/wall_item.tpl +++ b/view/wall_item.tpl @@ -1,9 +1,18 @@ <div class="wall-item-outside-wrapper$indent" id="wall-item-outside-wrapper-$id" > <div class="wall-item-content-wrapper$indent" id="wall-item-content-wrapper-$id" > <span class="wall-item-info" id="wall-item-info-$id"> - <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" > + <div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$id" + onmouseover="if (typeof t$id != 'undefined') clearTimeout(t$id); openMenu('wall-item-photo-menu-button-$id')" + onmouseout="t$id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$id\'); closeMenu(\'wall-item-photo-menu-$id\');',200)"> <a href="$profile_url" title="$linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$id"> - <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" height="80" width="80" alt="$name" /></a> + <img src="$thumb" class="wall-item-photo$sparkle" id="wall-item-photo-$id" height="80" width="80" alt="$name" /> + </a> + <span onclick="openClose('wall-item-photo-menu-$id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$id">menu</span> + <div class="wall-item-photo-menu" id="wall-item-photo-menu-$id"> + <ul> + $item_photo_menu + </ul> + </div> </div> <div class="wall-item-photo-end"></div> <div class="wall-item-wrapper" id="wall-item-wrapper-$id" > |