From 0508ccf50fc6f64af40ad97e3a573a0d489630f2 Mon Sep 17 00:00:00 2001 From: Friendika Date: Fri, 30 Sep 2011 17:47:33 -0700 Subject: [PATCH 01/15] restore photo cache --- boot.php | 2 +- mod/photo.php | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/boot.php b/boot.php index 85b571c82..59eeb4643 100644 --- a/boot.php +++ b/boot.php @@ -8,7 +8,7 @@ require_once("include/pgettext.php"); require_once('include/nav.php'); define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); -define ( 'FRIENDIKA_VERSION', '2.3.1119' ); +define ( 'FRIENDIKA_VERSION', '2.3.1120' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1093 ); diff --git a/mod/photo.php b/mod/photo.php index 3994620f8..fcc75a513 100644 --- a/mod/photo.php +++ b/mod/photo.php @@ -129,6 +129,8 @@ function photo_init(&$a) { } header("Content-type: image/jpeg"); + header("Expires: " . gmdate("D, d M Y H:i:s", time() + (3600*24)) . " GMT"; + header("Cache-Control: max-age=" . (3600*24)); echo $data; killme(); // NOTREACHED From 8fb2d02d3d32fd5876625036a774520d87f5ead4 Mon Sep 17 00:00:00 2001 From: Friendika Date: Fri, 30 Sep 2011 18:00:32 -0700 Subject: [PATCH 02/15] typo last checkin --- mod/photo.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/photo.php b/mod/photo.php index fcc75a513..71c345fc5 100644 --- a/mod/photo.php +++ b/mod/photo.php @@ -129,7 +129,7 @@ function photo_init(&$a) { } header("Content-type: image/jpeg"); - header("Expires: " . gmdate("D, d M Y H:i:s", time() + (3600*24)) . " GMT"; + header("Expires: " . gmdate("D, d M Y H:i:s", time() + (3600*24)) . " GMT"); header("Cache-Control: max-age=" . (3600*24)); echo $data; killme(); From c15690563d9be00e8f7ae29ecdd6bbdb7f64603f Mon Sep 17 00:00:00 2001 From: Devlon Duthie Date: Sat, 1 Oct 2011 01:52:06 -0500 Subject: [PATCH 03/15] class and wrapper div added to photo for aspect ratio display testbubble theme styling for aspect ratio on photos --- view/photo_album.tpl | 1 - view/theme/testbubble/style.css | 38 ++++++++++++++++++++++----------- 2 files changed, 25 insertions(+), 14 deletions(-) diff --git a/view/photo_album.tpl b/view/photo_album.tpl index e3f2ba91c..3ab9fe723 100644 --- a/view/photo_album.tpl +++ b/view/photo_album.tpl @@ -3,6 +3,5 @@ $imgalt

$desc

-
diff --git a/view/theme/testbubble/style.css b/view/theme/testbubble/style.css index deae9ae58..85a01d0d2 100644 --- a/view/theme/testbubble/style.css +++ b/view/theme/testbubble/style.css @@ -1250,7 +1250,7 @@ div[id$="wrapper"] br { clear: left; } /* ========== */ #side-bar-photos-albums li { - font-size: 1.2em; + font-size: 14px; font-variant: none; } @@ -1279,14 +1279,30 @@ div[id$="wrapper"] br { clear: left; } background-color: #b20202; } -.photo-album-image-wrapper, -.photo-top-image-wrapper { - float: left; +.photo-album-image-wrapper { + float: left; margin: 0px 10px 10px 0px; padding-bottom: 30px; position:relative; } +.photo-top-image-wrapper { + float: left; + width: 180px; + height: 180px; + margin: 0px 10px 10px 0px; + padding-bottom: 30px; + position:relative; +} + +#photo-album-wrapper-inner { + position: relative; + float: left; + width: 180px; + height: 180px; + overflow: hidden; +} + #photo-photo { max-width: 100% } #photo-photo img { max-width: 100% } @@ -1296,12 +1312,8 @@ div[id$="wrapper"] br { clear: left; } border-bottom: 0px; } -.photo-top-photo, -.photo-album-photo { - width: 180px; - height: 180px; - overflow: hidden; -} +.photo-top-photo {} +.photo-album-photo {} .photo-top-album-name { position: absolute; @@ -2216,7 +2228,7 @@ margin-left: 0px; display: inline; padding: 5px; margin-bottom: 10px; -/* -moz-box-shadow:inset 0px 1px 0px 0px #cfcfcf; + -moz-box-shadow:inset 0px 1px 0px 0px #cfcfcf; -webkit-box-shadow:inset 0px 1px 0px 0px #cfcfcf; box-shadow:inset 0px 1px 0px 0px #cfcfcf; background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #bdbdbd), color-stop(1, #a2a2a2) ); @@ -2228,7 +2240,7 @@ margin-left: 0px; border-radius:5px;*/ } -/*.group-delete-wrapper:hover { +.group-delete-wrapper:hover { background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #b20202), color-stop(1, #d60808) ); background:-moz-linear-gradient( center top, #b20202 5%, #d60808 100% ); filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#b20202', endColorstr='#d60808'); @@ -2245,7 +2257,7 @@ margin-left: 0px; .group-delete-wrapper a { color: #efefef; font-size: 0.9em; -}*/ +} #group-edit-desc { margin: 10px 0xp; } #group-new-text {font-size: 1.1em;} From f4c961b90676dad0a6773e52e4bd08b33c9b68c6 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 02:22:48 -0700 Subject: [PATCH 04/15] override pragma --- mod/photo.php | 5 +++++ mod/photos.php | 3 +++ 2 files changed, 8 insertions(+) diff --git a/mod/photo.php b/mod/photo.php index 71c345fc5..a5a5a1dc1 100644 --- a/mod/photo.php +++ b/mod/photo.php @@ -128,6 +128,11 @@ function photo_init(&$a) { } } + if(function_exists('header_remove')) { + header_remove('Pragma'); + header_remove('pragma'); + } + header("Content-type: image/jpeg"); header("Expires: " . gmdate("D, d M Y H:i:s", time() + (3600*24)) . " GMT"); header("Cache-Control: max-age=" . (3600*24)); diff --git a/mod/photos.php b/mod/photos.php index 90d51000e..b6be8d025 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -585,6 +585,9 @@ function photos_post(&$a) { else $visible = 0; + if(intval($_REQUEST,'not_visible')) + $visible = 0; + $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); From 78c00c287d5c14d2a93b461b8522bd8a1e95c44c Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 04:25:40 -0700 Subject: [PATCH 05/15] legibility improvements to darkbubble, mark as a derived theme --- view/theme/darkbubble/calendar.png | Bin 3779 -> 0 bytes view/theme/darkbubble/connect.png | Bin 443 -> 0 bytes view/theme/darkbubble/contact_edit.tpl | 67 -- view/theme/darkbubble/dbicons.png | Bin 0 -> 19694 bytes view/theme/darkbubble/group_drop.tpl | 8 - view/theme/darkbubble/group_edit.tpl | 16 - view/theme/darkbubble/groups.png | Bin 911 -> 0 bytes view/theme/darkbubble/icons.png | Bin 22600 -> 0 bytes view/theme/darkbubble/icons.svg | 1442 ----------------------- view/theme/darkbubble/jot-header.tpl | 251 ---- view/theme/darkbubble/jot.tpl | 75 -- view/theme/darkbubble/login-bg.gif | Bin 237 -> 0 bytes view/theme/darkbubble/login.tpl | 25 - view/theme/darkbubble/lrarrow.gif | Bin 236 -> 0 bytes view/theme/darkbubble/mail_head.tpl | 7 - view/theme/darkbubble/menu-user-pin.png | Bin 276 -> 0 bytes view/theme/darkbubble/nav.tpl | 55 - view/theme/darkbubble/next.png | Bin 891 -> 0 bytes view/theme/darkbubble/notifications.png | Bin 6225 -> 0 bytes view/theme/darkbubble/photo_view.tpl | 40 - view/theme/darkbubble/photography.png | Bin 766 -> 0 bytes view/theme/darkbubble/premium.png | Bin 2317 -> 0 bytes view/theme/darkbubble/prev.png | Bin 853 -> 0 bytes view/theme/darkbubble/profile_entry.tpl | 11 - view/theme/darkbubble/profile_tabs.tpl | 9 - view/theme/darkbubble/profile_vcard.tpl | 45 - view/theme/darkbubble/search.png | Bin 808 -> 0 bytes view/theme/darkbubble/search_item.tpl | 48 - view/theme/darkbubble/star.png | Bin 2129 -> 0 bytes view/theme/darkbubble/style.css | 22 + view/theme/darkbubble/theme.php | 4 + view/theme/darkbubble/user.png | Bin 664 -> 0 bytes view/theme/darkbubble/wall_item.tpl | 75 -- view/theme/darkbubble/wallwall_item.tpl | 74 -- 34 files changed, 26 insertions(+), 2248 deletions(-) delete mode 100644 view/theme/darkbubble/calendar.png delete mode 100644 view/theme/darkbubble/connect.png delete mode 100644 view/theme/darkbubble/contact_edit.tpl create mode 100644 view/theme/darkbubble/dbicons.png delete mode 100644 view/theme/darkbubble/group_drop.tpl delete mode 100644 view/theme/darkbubble/group_edit.tpl delete mode 100644 view/theme/darkbubble/groups.png delete mode 100644 view/theme/darkbubble/icons.png delete mode 100644 view/theme/darkbubble/icons.svg delete mode 100644 view/theme/darkbubble/jot-header.tpl delete mode 100644 view/theme/darkbubble/jot.tpl delete mode 100644 view/theme/darkbubble/login-bg.gif delete mode 100644 view/theme/darkbubble/login.tpl delete mode 100644 view/theme/darkbubble/lrarrow.gif delete mode 100644 view/theme/darkbubble/mail_head.tpl delete mode 100644 view/theme/darkbubble/menu-user-pin.png delete mode 100644 view/theme/darkbubble/nav.tpl delete mode 100644 view/theme/darkbubble/next.png delete mode 100644 view/theme/darkbubble/notifications.png delete mode 100644 view/theme/darkbubble/photo_view.tpl delete mode 100644 view/theme/darkbubble/photography.png delete mode 100644 view/theme/darkbubble/premium.png delete mode 100644 view/theme/darkbubble/prev.png delete mode 100644 view/theme/darkbubble/profile_entry.tpl delete mode 100644 view/theme/darkbubble/profile_tabs.tpl delete mode 100644 view/theme/darkbubble/profile_vcard.tpl delete mode 100644 view/theme/darkbubble/search.png delete mode 100644 view/theme/darkbubble/search_item.tpl delete mode 100644 view/theme/darkbubble/star.png create mode 100644 view/theme/darkbubble/theme.php delete mode 100644 view/theme/darkbubble/user.png delete mode 100644 view/theme/darkbubble/wall_item.tpl delete mode 100644 view/theme/darkbubble/wallwall_item.tpl diff --git a/view/theme/darkbubble/calendar.png b/view/theme/darkbubble/calendar.png deleted file mode 100644 index 705a75b8a8646ce86030c5ee5220bde99490bff4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3779 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 diff --git a/view/theme/darkbubble/contact_edit.tpl b/view/theme/darkbubble/contact_edit.tpl deleted file mode 100644 index 59747c62d..000000000 --- a/view/theme/darkbubble/contact_edit.tpl +++ /dev/null @@ -1,67 +0,0 @@ - -

$header

- -
$name
- -$nettype - -
- - -
- -
- $alt_text -
- $name -
-
-
-
- - -
- - {{ if $poll_enabled }} -
-
$lastupdtext$last_update
-
$updpub
- $poll_interval - -
- {{ endif }} -
-
- -$insecure -$blocked -$ignored - - -$lblsuggest - -
-

$lbl_info1

- -
-
- - - -
-

$lbl_vis1

-

$lbl_vis2 -

-
-$profile_select -
- - - - -
diff --git a/view/theme/darkbubble/dbicons.png b/view/theme/darkbubble/dbicons.png new file mode 100644 index 0000000000000000000000000000000000000000..696ef779cd512b4dab50025874cd58c918107b1e GIT binary patch literal 19694 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 JDsk=!{{+o&m=6E| literal 0 HcmV?d00001 diff --git a/view/theme/darkbubble/group_drop.tpl b/view/theme/darkbubble/group_drop.tpl deleted file mode 100644 index f088fc06f..000000000 --- a/view/theme/darkbubble/group_drop.tpl +++ /dev/null @@ -1,8 +0,0 @@ - -
diff --git a/view/theme/darkbubble/group_edit.tpl b/view/theme/darkbubble/group_edit.tpl deleted file mode 100644 index a8b3f92a0..000000000 --- a/view/theme/darkbubble/group_edit.tpl +++ /dev/null @@ -1,16 +0,0 @@ -

$title

- - -
-
-
- - - - $drop -
-
-
$desc
-
-
-
diff --git a/view/theme/darkbubble/groups.png b/view/theme/darkbubble/groups.png deleted file mode 100644 index a65a7218c93c372404e70bd45434ffc2c915b1d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 911 zcmV;A191F_P)V-&!NoiH9r8AZ;Q?uyY zd*}YnKdnf_O}@;{{QvpR`M&R5fPWr_VSwXU5Jdq9AuK{^ZeHFHi&gHiEh{bv0Uo@=pCqWjLW63RWr-#LUeO2i1PX=1Aa=?$ENU#IQz?&m0{cuErSAPzw#!rm!4)gc8WNZ{4Upb@JG{ zwd*!?8M+ZjqC`zAHZ(NeIe+fVffXxSKDchwqp~m+a2*S5(*#wLwsC7#x2(B*@%%YS z6!h=k(sup)#3zg^ho)I7=dRY@I8f)@ay8HrNf=c*HvN32j3s31i$!^(V=;c z69uZBL#HP;3_Fxc)F|A_B4QlgynZ#ib<571PafW@A<<~DCO+%kSSE9YR}@(^3JhKH|h2mvvU$Ri3&+oQW3snnOMAn=v!&x}?ol~_WH!jSGmfU>f_@2An1>s{}Y lC#akN_anq}ybHet7yy>`LZi9QUkv~N002ovPDHLkV1hz7sXPDx diff --git a/view/theme/darkbubble/icons.png b/view/theme/darkbubble/icons.png deleted file mode 100644 index 57c4bfb052cc88631ebd1b594c1fc65e60b25f21..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22600 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 diff --git a/view/theme/darkbubble/icons.svg b/view/theme/darkbubble/icons.svg deleted file mode 100644 index b435ba665..000000000 --- a/view/theme/darkbubble/icons.svg +++ /dev/null @@ -1,1442 +0,0 @@ - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - YouTube - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Lorem Ip - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ? - ? - - diff --git a/view/theme/darkbubble/jot-header.tpl b/view/theme/darkbubble/jot-header.tpl deleted file mode 100644 index 0093bf82a..000000000 --- a/view/theme/darkbubble/jot-header.tpl +++ /dev/null @@ -1,251 +0,0 @@ - - - - - - diff --git a/view/theme/darkbubble/jot.tpl b/view/theme/darkbubble/jot.tpl deleted file mode 100644 index d60e8adc2..000000000 --- a/view/theme/darkbubble/jot.tpl +++ /dev/null @@ -1,75 +0,0 @@ - -
-
-
 
- -
- -
-
- -
- - - - - - - - - - - {{ if $content }}{{ endif }} - - - - - - - - - - - - - - -
- -
-
- $acl -
-
$emailcc
-
- $jotnets -
-
- -
-
-
diff --git a/view/theme/darkbubble/login-bg.gif b/view/theme/darkbubble/login-bg.gif deleted file mode 100644 index cde836c893f64bcfec04b9c817e3371ff122fe19..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 237 zcmVb{bmUKcqz}))c5uC(7v?)v4a2P)ZNa- z@$&T2)z|&~{r~^}A^8LV00000EC2ui01yBW000GQ;3tk`X`bk)Wk@<6#nZYULKH{p zEx|?+kif!I0vIL|#ZMubBmjWH2OtmxIFVa~6JQ7!1CK!f5W#StOTv&C3=E8h2vI1s n+#cd5;2fT3B_0kF0v!+!GARoV78n&7dMN`JIW(4+BOw4gP{MS* diff --git a/view/theme/darkbubble/login.tpl b/view/theme/darkbubble/login.tpl deleted file mode 100644 index 2c879d69a..000000000 --- a/view/theme/darkbubble/login.tpl +++ /dev/null @@ -1,25 +0,0 @@ - -
- -
- - -
-
-
- - -
-
-
- - $lostlink -
-
- -
-
- diff --git a/view/theme/darkbubble/lrarrow.gif b/view/theme/darkbubble/lrarrow.gif deleted file mode 100644 index fa26769446d0c934b42ede073b15e7b792c519a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 236 zcmZ?wbhEHbRA5kGSj4~}At9lzu5M~->f+)O92}en1ByRc7#SGY8FUzc0Hl_Id1J+{ zJO2!r%ogV^SXEQa=X0R+0=r)0iixMy=XibSd-HJLLWA|wtsiI{^mqNlTimR;mSuu! z`^pstJ13hgZ<(LBS~_Lwp0lQ&KkUxm%b#lGH~szxi>VrAyB=5kn3H_w_tS*j`sV!V zrk3Wm_Ku1+v+kbMzS4+^StYvd85xrj_-mtLVyAmcr3oF9>ilSOWk7D_}7I diff --git a/view/theme/darkbubble/mail_head.tpl b/view/theme/darkbubble/mail_head.tpl deleted file mode 100644 index 89615cbd0..000000000 --- a/view/theme/darkbubble/mail_head.tpl +++ /dev/null @@ -1,7 +0,0 @@ -

$messages

- - diff --git a/view/theme/darkbubble/menu-user-pin.png b/view/theme/darkbubble/menu-user-pin.png deleted file mode 100644 index 6becfbb663c2726e085edfb5d6bfb42e06a35398..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 276 zcmV+v0qg#WP)M68Y6%I?#i>L`8rhD=9xJZvx)?%mpipRxF(yrmAChtI3C$~cOeu{@ z>KF9~j_{quhI@tJEFw4Jfrkl}7R5x-+*057M;V6UL2 - $langselector - - - -
- {{ if $nav.network }}{{ endif }} - {{ if $nav.home }}{{ endif }} - {{ if $nav.notifications }}{{ endif }} - {{ if $nav.messages }}{{ endif }} -
- -
- $sitelocation - - -
- - - - - diff --git a/view/theme/darkbubble/next.png b/view/theme/darkbubble/next.png deleted file mode 100644 index 353e2e72a6513fac3f3775b347354a4fbbb7c622..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 891 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 diff --git a/view/theme/darkbubble/photo_view.tpl b/view/theme/darkbubble/photo_view.tpl deleted file mode 100644 index 4582751c6..000000000 --- a/view/theme/darkbubble/photo_view.tpl +++ /dev/null @@ -1,40 +0,0 @@ -
-

$album.1

- - - -
- {{ if $prevlink }}{{ endif }} - - {{ if $nextlink }}{{ endif }} -
- -
-
$desc
-{{ if $tags }} -
$tags.0
-
$tags.1
-{{ endif }} -{{ if $tags.2 }}{{ endif }} - -{{ if $edit }}$edit{{ endif }} - -{{ if $likebuttons }} -
- $likebuttons - $like - $dislike -
-{{ endif }} - -$comments - -$paginate - diff --git a/view/theme/darkbubble/photography.png b/view/theme/darkbubble/photography.png deleted file mode 100644 index 7ec919f2b3cf1d4d782a0b3009f8f7654cceca94..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 766 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 diff --git a/view/theme/darkbubble/prev.png b/view/theme/darkbubble/prev.png deleted file mode 100644 index 0ae6022af5701934cfa5e3e7391fcab8827398c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 853 zcmV-b1FHOqP)Rchfa8%+jGL}bvC z!sTpv4;QRc?x=t;3715SXsPjjc>vkC(XGl=2q7WUE(lZtA=4q!%lS`zr>kfB?;c`i zG!mw1s!OX&eG2UB4C-R$agW+G5{t#ws1dlX>ztX|2r4}82%z$ z_m7mhuIrwbHs1_@Pz~8P<%r;E2Qa|&qpr*i!_YuH4dQMmEir=Pnj40pL9wR*ID!GZ zvaG2WqOz2Mdj#@KE}IWCGdsdd;DiwTCYR0kq*AFY0Mvw=rm2EB4&bIEmiVn#^X-8F z;Lw_zrl~HkF2+F!3o?G^RhzpF;?G-~gC90>vH{=)P)h?~Pb2wk8Gdz=4C8eP!fbwB27X7yuLko;YZ>*gM)2#!&$K( z33TW4+qviU8YuC{GcUoE5NI#ti<|S2NTgK^XJ-EW>(4y^Q;uq;i=HM`Y_NB?lp1Lg zvPKeh=wAD0GMVj;cK=;4%?RLKQ0#fbFj_=#0EkATg^m*^2LQ~93|z%$wG0m2=h0}i z(9!NUL4u^e!AoJa*YcXPa4W`hs?TQR~Q1=R5w&m)z zbOatd&i(vn-TOHJq|@oG^|fp-nC1`D5NNXTf1>IoT2Wn|GY!FaV_={!z)*%ke3qFl fcGGxbEb;vxK8sTe6HUu~00000NkvXXu0mjf@o{ -
-$alt -
-
- -
$visible
- -
- diff --git a/view/theme/darkbubble/profile_tabs.tpl b/view/theme/darkbubble/profile_tabs.tpl deleted file mode 100644 index c236490b2..000000000 --- a/view/theme/darkbubble/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/darkbubble/profile_vcard.tpl b/view/theme/darkbubble/profile_vcard.tpl deleted file mode 100644 index 0ee6919bc..000000000 --- a/view/theme/darkbubble/profile_vcard.tpl +++ /dev/null @@ -1,45 +0,0 @@ -
-
$profile.name
- - - {{ if $pdesc }}
$profile.pdesc
{{ endif }} -
$profile.name
- - - - {{ if $location }} -
$location
-
- {{ if $profile.address }}
$profile.address
{{ endif }} - - $profile.locality{{ if $profile.locality }}, {{ endif }} - $profile.region - $profile.postal-code - - {{ if $profile.country-name }}$profile.country-name{{ endif }} -
-
- {{ endif }} - - {{ if $gender }}
$gender
$profile.gender
{{ endif }} - - {{ if $profile.pubkey }}{{ endif }} - - {{ if $marital }}
$marital
$profile.marital
{{ endif }} - - {{ if $homepage }}
$homepage
$profile.homepage
{{ endif }} - - {{ inc diaspora_vcard.tpl }}{{ endinc }} - - -
- -$contact_block - - diff --git a/view/theme/darkbubble/search.png b/view/theme/darkbubble/search.png deleted file mode 100644 index 51c428594b9a8d78f10e1968c1cdcdd236c9fcc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 808 zcmV+@1K0eCP)-z#ci(yEo^v6JA`M|pPToF#|3Km*iIdtUxOi#o1NIi`x)v`gBX`2&2H2K>gfLoDjr9*R&HI|_1^#0MEUE#S znwmP4Y-q5)E`CnqSfRd6=~80e7#TH4sDadjS|zP%!9WyM&)GJA9f7}0sRS}HF(KMA z9bs2@uUjk>%tAgV%Hffd%zrEv3&#|Jwza7dQHNlND#Ar1 z5GP6-?x_d&rq8(Ux+s@Qkk4fyn_U5XKTS^#_D49fWkL~TGbVKtG<5dayoCe{3A@f2 z8o6vgc{DSKgC(p)9V9#tP39S$QXON#iHUGT!x|1*HAYbLVXKvIh&SnU=Iz+k>(ARe mIIzspeo0000 -
-
-
- - $name - menu -
-
    - $item_photo_menu -
-
-
-
-
{{ if $location }}$location {{ endif }}
-
-
- {{ if $lock }}
$lock
- {{ else }}
{{ endif }} -
-
-
- {{ if $drop.dropping }}{{ endif }} -
- {{ if $drop.dropping }}{{ endif }} -
-
-
-
$title
-
-
$body
-
-
- $name -
$ago
- -
- -
-
- {{ if $conv }}$conv.title{{ endif }} -
-
- - -
diff --git a/view/theme/darkbubble/star.png b/view/theme/darkbubble/star.png deleted file mode 100644 index a327ba14e462a494523d9d5be1195989b08b36ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2129 zcmZ8h3pf+%8=p&!&6Eg9TEpnJ86(!LT*9)MTji2z7S4x@eU49cNQa*7D)vFxC)8h!x261T1zje1vR6om@o}h zTzF|>zLN?Ck3*;!`AQN z#MCp|d*RNzSM}8KJ_u&j4ca3)QpRxQQgAQ-f||yRKD0TRk%0|8wzB2Alzq>ZEt)Y0pLsFkGC9KoruRjq@DJ_l~-En(7Z#}&dtm3hhGG6OK zramT}^yrVanmF&3`#l=mWu7B7KC;F~P58$Q`OB6_5Ghedl-u(BVdv{AjgI)k+i;bI zUgGxm#@&SO>5#^jlzIDh-G%cg2fu=5BVvAv&8HXcV3U`-m@d+p-xIrOrrDwy7udi^qLdFc_k>Irqx`1t^kfQ)YLDh*44KGm(fEHnJ&I;006AH zED8XAzAgZu5JL0z;rI{rBgW+D3=}?#l~=LVLuQU zxxVa1!k|AOoCsT(578a!z+h3KXapKz2E&1%P$-ra5{mJ3bov=Cw`^hI91atMM8?F# zAYv>K3|1HtWn*K5G&4t(1dq_TrqG$x0}h=MNXr35je zIkqs^a-m=6XPAmpRDBkkX#BAi9(nme`S^jV&xn$4lF8#!(e$c7?C);lFhgZ%T2a-qrJ3$<1{rFLJ`MRRv9qqiWH41VD zBQ!m<+PmJ<%1~uA0pVgFqFt+A+b^{wI#C$^Ed`0YmehRB!*0dpIlQ}8JuV4mx&)R6 z`LB3Zj?+r?8!F?MJk<*x8VEJl?80l}J)D^%69&=+DRS6$veRrZQu~}ip4duf7Q!Qv zV3}V+OD5B@a%LA|5&5$5Xr04W%5}WaK$G-0?=QWyH{AI5KG)LuTR52NWtSASpCSOM+Xu;B`>#O_UlyZi`jIxnl%)@mt~Rtl~|HL4FpBfBkK* znI5VimD^F8t-GT;N3>Pol+!8`^#(l+J&IXWzR}5klIMG*Ea)RQ-#Uz>C2N!8Ri+43zD5Z;!92h*!7kK|i(J@cbOe>-y&K00YH_A~pXB z9|V(hc~@ZzwDAgPhtS!{$yz(WY?~7HteJAKAhGbRm z3Y+d6vtqm$5YNeEDWMjX%&djC4>FEBOJ6l1k3>f+jetYU@dE*{@!xg5*l`5n_{$q) z0cbVaH^8eWVY0EzbZ`FV=fDQj#Z$*6nGa_YR(%*gYq0C6B4fC@!>_7O5#daXa}CYC zg|>+3uXm_vUZPSvG<)cc+(be-;>JK*K_;BAi|cQ9I{ zQrzbVFWeUikro-5pGPn{0DV$TTX&uSpZT^pGS9Qia(vG`Ba9%y*KBq9MmmJny8wr` zM??o`0)c01-0Z9mZ&7<7a;C&V0XNT3SK~EP+d{YLc%(+CaBHb|^;|zDv9Q`*34Z<# zneT)zI<8EKs$cC)KZZ?Vy*UcxHl>`)*M2#xh?IpS*nmwt>are{#O#4xcJ0i!g%HI= z+f;3&5HA)%@}Va82nKMB@a z_1_OdwfoiIkZNaB;rZ&$4theme_info = array( + 'extends' => 'testbubble', +); diff --git a/view/theme/darkbubble/user.png b/view/theme/darkbubble/user.png deleted file mode 100644 index df899e7e08ad95deae68e481b798e50be1e22325..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmV;J0%!e+P)RluQMh~O_Jg+Xok%1M@LN9Ej(dXup}04(nSvBzs8U`U&1BM$ zMI=*w5I1xXMe$NE3X+IjhM`eajdd0zNrE5M)B~G>0Cbl zp-?dI{cjFm;Pa`e^WVPzP%X=zELWDV ztS8_;m`^4j-Ym_$zO3nb$2dXY;vxvc5PZK4mSsV0r3Te%6>Qr*zEJ*B>Y8XE_RP<{ zJKH~yg_x>hGX1L&6$W7dx)B4WP@r-EwV&ZF+*u>wt=mnhkWTbvfH4IKAa_UX3Y0n y60ZbLZ_Bc5%QCAID$F6#qYD?WzU2JB1sDK>D#xq$6bx?w0000 -
-
-
-
- - $name - - menu -
-
    - $item_photo_menu -
-
-
-
-
{{ if $location }}$location {{ endif }}
-
-
- {{ if $lock }}
$lock
- {{ else }}
{{ endif }} -
-
-
$title
-
-
$body
-
- -
- {{ if $vote }} - - {{ endif }} - {{ if $plink }} - - {{ endif }} - {{ if $edpost }} - - {{ endif }} - - {{ if $star }} - - {{ endif }} - -
- {{ if $drop.dropping }}{{ endif }} -
- {{ if $drop.dropping }}{{ endif }} -
- - -
- -
- $name -
$ago
- -
-
-
- -
$dislike
-
- $comment -
-
- -
- diff --git a/view/theme/darkbubble/wallwall_item.tpl b/view/theme/darkbubble/wallwall_item.tpl deleted file mode 100644 index 8819103a3..000000000 --- a/view/theme/darkbubble/wallwall_item.tpl +++ /dev/null @@ -1,74 +0,0 @@ -
-
-
-
- - $owner_name -
-
$wall
-
- - $name - menu -
-
    - $item_photo_menu -
-
- -
-
-
{{ if $location }}$location {{ endif }}
-
-
- {{ if $lock }}
$lock
- {{ else }}
{{ endif }} -
-
- {{ if $vote }} - - {{ endif }} - {{ if $plink }} - - {{ endif }} - {{ if $edpost }} - - {{ endif }} - - {{ if $star }} - - {{ endif }} - -
- {{ if $drop.dropping }}{{ endif }} -
- {{ if $drop.dropping }}{{ endif }} -
-
-
-
$title
-
-
$body
-
-
- $name -
$ago
-
-
-
- -
$dislike
-
- $comment -
-
- -
- From 8f47540e9b8e5bde94cf3acd7e27d0a4060315e9 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 04:37:28 -0700 Subject: [PATCH 06/15] darkbubble - event legibility --- view/theme/darkbubble/style.css | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/view/theme/darkbubble/style.css b/view/theme/darkbubble/style.css index 2e180400b..9336dc01b 100644 --- a/view/theme/darkbubble/style.css +++ b/view/theme/darkbubble/style.css @@ -18,10 +18,14 @@ body { background-position: 0 50%; padding-left: 18px; width: 385px; - -/* background: #FFFFFF;*/ color: #000000; - +} + +.vevent, .eventcal { + color: #000000; +} +.event-list-date { + color: #DDDDDD; } .fortunate { From 0ad9e7b5f4f72f789363ae1a1836e43d5707bf0a Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 06:20:41 -0700 Subject: [PATCH 07/15] option to not post photos to status stream --- mod/photos.php | 13 +++++-------- view/photos_upload.tpl | 5 +++++ view/theme/duepuntozero/style.css | 6 ++++++ 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/mod/photos.php b/mod/photos.php index b6be8d025..1321af192 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -92,15 +92,11 @@ EOT; function photos_post(&$a) { - logger('mod/photos.php: photos_post(): begin' , 'LOGGER_DEBUG'); + logger('mod-photos: photos_post(): begin' , 'LOGGER_DEBUG'); - foreach($_REQUEST AS $key => $val) { - logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); - } - foreach($_FILES AS $key => $val) { - logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); - } + logger('mod_photos: REQUEST ' . print_r($_REQUEST,true), LOGGER_DATA); + logger('mod_photos: FILES ' . print_r($_FILES,true), LOGGER_DATA); $can_post = false; $visitor = 0; @@ -585,7 +581,7 @@ function photos_post(&$a) { else $visible = 0; - if(intval($_REQUEST,'not_visible')) + if(intval($_REQUEST['not_visible'])) $visible = 0; $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); @@ -895,6 +891,7 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), + '$nosharetext' => t('Do not show a status post for this upload'), '$albumselect' => template_escape($albumselect), '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : template_escape(populate_acl($a->user, $celeb))), diff --git a/view/photos_upload.tpl b/view/photos_upload.tpl index c7c61c6db..318a92427 100644 --- a/view/photos_upload.tpl +++ b/view/photos_upload.tpl @@ -13,6 +13,11 @@
+
+ + +
+
diff --git a/view/theme/duepuntozero/style.css b/view/theme/duepuntozero/style.css index 1fe8fb2f4..4769da8af 100644 --- a/view/theme/duepuntozero/style.css +++ b/view/theme/duepuntozero/style.css @@ -1559,6 +1559,8 @@ input#dfrn-url { display:block!important; } + + #acl-wrapper { width: 690px; float:left; @@ -1917,6 +1919,10 @@ a.mail-list-link { float: left; width: 175px; } + +#photos-upload-noshare { + margin-bottom: 10px; +} #photos-upload-existing-album-text { float: left; width: 175px; From 96e735fdd27bbf18a3a2d916882e574ec22fea21 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 18:54:48 -0700 Subject: [PATCH 08/15] zot protocol update --- boot.php | 2 +- zot.txt | 124 +++++++++++++++++++++++++++++++++++++++++-------------- 2 files changed, 93 insertions(+), 33 deletions(-) diff --git a/boot.php b/boot.php index 59eeb4643..61f5fb9f5 100644 --- a/boot.php +++ b/boot.php @@ -8,7 +8,7 @@ require_once("include/pgettext.php"); require_once('include/nav.php'); define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); -define ( 'FRIENDIKA_VERSION', '2.3.1120' ); +define ( 'FRIENDIKA_VERSION', '2.3.1121' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1093 ); diff --git a/zot.txt b/zot.txt index 300b695ff..b160788e7 100644 --- a/zot.txt +++ b/zot.txt @@ -1,7 +1,7 @@ This is the Zot! social communications protocol. Specification revision: 1 -15 September 2011 +2 October 2011 Mike Macgirvin This specification is public domain. @@ -78,16 +78,21 @@ zot:env ******* This consists of RFC822-style header fields representing the sender and -recipient(s). Example: +recipient(s). Line lengths have no defined limit and RFC822 continuation +lines are not supported. If an inbound server is not able to process an +envelope or post due to size constraints, it SHOULD return a +"413 Entity too large" HTTP response. -From: bob@example.com -Sender: bob@example.com -To: alice@example.com +Example: -Both "From:" and "Sender:" MUST be provided, and represent a webfinger -address of the author and sender respectively. The webfinger address for -the From address MUST contain a discoverable salmon public key that -is needed to verify the enclosed salmon data. Sender is used to indicate +Z-From: zot:bob@example.com +Z-Sender: zot:bob@example.com +Z-To: zot:alice@example.com + +Both "Z-From:" and "Z-Sender:" MUST be provided, and represent a single +webfinger address of the author and sender respectively. The webfinger +address for the From address MUST contain a discoverable salmon public key +which is needed to verify the enclosed salmon data. Sender is used to indicate the webfinger identity responsible for transmitting this message. From indicates the message author. @@ -95,46 +100,91 @@ In web-based social systems, a reply to a message SHOULD be conveyed to all of the original message participants. Only the author of the original message may know all the recipients (such as those contained in Bcc: elements). The author of a message always provides 'From'. They MUST duplicate this -information as 'Sender'. +information as 'Sender' when posting a followup message. -A reply to a given message MUST be sent to the original From address, and MAY -be sent to any additional addresses in the recipient list. The original author -MUST send the reply to all known recipients of the original message, with -their webfinger identity as Sender, and the comment/reply author as From. +A reply to a given message MUST be sent to the From address of the original +post, and MAY be sent to any additional addresses in the recipient list. The +original post author MUST send the reply to all known recipients of the +original message, with their webfinger identity as Sender, and the +comment/reply author as From. Receiving agents SHOULD validate the From identity as the signer of the salmon magic envelope, and MAY reject it. They SHOULD also verify the Sender signature of the zot packet if it is different than the salmon signature. They MAY reject the message if the Sender is not allowed in their "friend list", or if they do not have a suitable relationship with the Sender, or if either -signature fails to validate. +signature fails to validate. Rejected messages for one of these reasons SHOULD +be indicated with a "400 Bad Request" HTTP response. -To: * +Z-To: * indicates a public message with no specifically enumerated recipients. -The fields To:, Cc:, and/or Bcc: MAY be present. At least one recipient field -MUST be present. These fields may use the entire syntax specified by RFC822, -for example: +The fields Z-To: and/or Z-Bcc: MAY be present. At least one recipient field +MUST be present. -To: "Bob Smith" , "Alice Jones" +Z-To: zot:bob@example.com, zot:alice@example.com, mailto:dave@example.com +Z-Bcc: zot:https://example.com/profile/richard -is a valid entry. A zot envelope is UTF-8 encoded, which differs from RFC822. -The host component MUST be US-ASCII, with punycode translation of -internationalised domain names applied. +are valid entries. Adresses are comma separated and individual entries MUST NOT +contain commas. There MAY be any number of ASCII space characters between +entries for legibility. Header lines are terminated with a linefeed character +(ASCII 0x0A). -The entire envelope is then encrypted using alg with env_key and env_iv and +This specification provides the following foreign protocol address prefixes +for use in Z-To: or Z-Bcc: elements: + +zot: - normal zot delivery using webfinger or LRDD resolvable address +ostatus: - normal OStatus delivery using webfinger or LRDD resovable address +diaspora: - Diaspora network delivery using webfinger address +facebook: - Facebook profile page URL +twitter: - Twitter personal page URL without AJAX '#!' fragment +mailto: - email RFC822/ESMTP address + +Examples: + +twitter:http://twitter.com/bjensen +facebook:http://facebook.com/profile.php?id=000000001 + +Foreign protocol addresses which have not been defined in this specification +or future revisions of this specification and which are unknown to the +recipient delivery process MAY be ignored. + +In cases where an address may contain either a webfinger or LRDD address, the +webfinger address SHOULD be used preferentially. + + +Z-Bcc: +****** + +The Z-Bcc element may contain one or more addresses which are hidden from end +user presentation. A zot receiving system MUST NOT store or allow for +the display of the Bcc information. Implementations which require extreme +privacy SHOULD send individual posts to each of the Bcc: recipients containing +only a single address. They MAY send all Bcc: posts using bulk delivery, +however this may have privacy implications as there is no guarantee a +receiving system will not log, store, or otherwise reveal the contents of the +Bcc recipient list. + +Z-To: addresses MAY be shown to an end user. + + +Envelope encryption +******************* + + +The entire envelope is encrypted using alg with env_key and env_iv and base64url encoded for transmission. -The zot envelope MAY include remote addresses. A zot delivery agent MUST parse -all addresses and determine whether a delivery address to the current endpoint -is valid. This may be the result of: +The zot envelope MAY include remote addresses. A zot inbound delivery agent +MUST parse the envelope and determine whether a delivery address to the +current endpoint is valid. This may be the result of: 1. An address contains the public message wildcard '*' 2. The current endpoint is a personal endpoint and one of the recipients -listed in the To:, Cc:, or Bcc: addresses matches the webfinger address of +listed in the Z-To: or Z-Bcc: addresses matches the webfinger address of the "owner" of the endpoint. 3. The current endpoint is a bulk delivery endpoint. The bulk delivery @@ -219,7 +269,8 @@ We anticipate this specification will in the future allow for a close variant of "message/rfc822" and which may include MIME. This may also be used to embed alternate message formats and protocols such as "application/x-diaspora+xml". If a delivery agent is unable to provide any -acceptable data format, the delivery MUST be terminated/cancelled. +acceptable data format to the remote system, the delivery to that system MUST +be terminated/cancelled. Foreign Messages **************** @@ -233,9 +284,18 @@ systems MAY reject foreign messages. -********************** -* Zid authentication * -********************** + + +******************************* +* Zid (Zot-ID) authentication * +******************************* + +This section of the document is considered separate from the delivery +specification precding it and represents a different protocol, which is +currently incomplete. This will be split off into another document in the +future, but is presented here as a synergistic component of the Zot network +model. + URLs may be present within a zot message which refer to private and/or protected resources. Zid uses OpenID to gain access to these protected From 7d7a1498118f0101f31b711b30d2e21533bb01fe Mon Sep 17 00:00:00 2001 From: Friendika Date: Sat, 1 Oct 2011 23:19:20 -0700 Subject: [PATCH 09/15] db updates for server batch key caching, group visibility --- boot.php | 2 +- database.sql | 10 ++++++++++ update.php | 15 ++++++++++++++- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/boot.php b/boot.php index 61f5fb9f5..97a4f96cd 100644 --- a/boot.php +++ b/boot.php @@ -10,7 +10,7 @@ require_once('include/nav.php'); define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); define ( 'FRIENDIKA_VERSION', '2.3.1121' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); -define ( 'DB_UPDATE_VERSION', 1093 ); +define ( 'DB_UPDATE_VERSION', 1094 ); define ( 'EOL', "
\r\n" ); define ( 'ATOM_TIME', 'Y-m-d\TH:i:s\Z' ); diff --git a/database.sql b/database.sql index f39728a33..15e2f2cca 100644 --- a/database.sql +++ b/database.sql @@ -114,6 +114,7 @@ CREATE TABLE IF NOT EXISTS `contact` ( CREATE TABLE IF NOT EXISTS `group` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `uid` int(10) unsigned NOT NULL, + `visible` tinyint(1) NOT NULL DEFAULT '0', `deleted` tinyint(1) NOT NULL DEFAULT '0', `name` char(255) NOT NULL, PRIMARY KEY (`id`) @@ -632,3 +633,12 @@ CREATE TABLE IF NOT EXISTS `search` ( INDEX ( `uid` ), INDEX ( `term` ) ) ENGINE = MyISAM DEFAULT CHARSET=utf8; + +CREATE TABLE IF NOT EXISTS `fserver` ( +`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , +`server` CHAR( 255 ) NOT NULL , +`posturl` CHAR( 255 ) NOT NULL , +`key` TEXT NOT NULL, +INDEX ( `server` ) +) ENGINE = MyISAM DEFAULT CHARSET=utf8; + diff --git a/update.php b/update.php index 0dd599e83..723f12c1a 100644 --- a/update.php +++ b/update.php @@ -1,6 +1,6 @@ Date: Sun, 2 Oct 2011 01:21:51 -0700 Subject: [PATCH 10/15] malformed xml in ping --- mod/ping.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mod/ping.php b/mod/ping.php index 30f1dc837..544a42e14 100644 --- a/mod/ping.php +++ b/mod/ping.php @@ -114,7 +114,7 @@ function ping_init(&$a) { function xmlize($href, $name, $url, $photo, $date, $message){ $notsxml = '%s'; return sprintf ( $notsxml, - $href, $name, $url, $photo, $date, $message + xmlify($href), xmlify($name), xmlify($url), xmlify($photo), xmlify($date), xmlify($message) ); } From 8c9a6b0512da3bd73f28989bc179c4e417b267d8 Mon Sep 17 00:00:00 2001 From: Friendika Date: Sun, 2 Oct 2011 02:46:54 -0700 Subject: [PATCH 11/15] fix notifications duepuntozero --- js/main.js | 10 ++++++++++ view/theme/duepuntozero/nav.tpl | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/js/main.js b/js/main.js index 896cbeb56..e0694e47f 100644 --- a/js/main.js +++ b/js/main.js @@ -95,6 +95,16 @@ if(home == 0) { home = ''; $('#home-update').removeClass('show') } else { $('#home-update').addClass('show') } $('#home-update').html(home); + var intro = $(data).find('intro').text(); + if(intro == 0) { intro = ''; $('#intro-update').removeClass('show') } else { $('#intro-update').addClass('show') } + $('#intro-update').html(intro); + + var mail = $(data).find('mail').text(); + if(mail == 0) { mail = ''; $('#mail-update').removeClass('show') } else { $('#mail-update').addClass('show') } + $('#mail-update').html(mail); + + + var eNotif = $(data).find('notif') notif = eNotif.attr('count'); if (notif>0){ diff --git a/view/theme/duepuntozero/nav.tpl b/view/theme/duepuntozero/nav.tpl index 82ac178e8..efc95bde1 100644 --- a/view/theme/duepuntozero/nav.tpl +++ b/view/theme/duepuntozero/nav.tpl @@ -32,7 +32,7 @@ {{ endif }} {{ if $nav.notifications }}
$nav.notifications.1 - + {{ endif }} {{ if $nav.messages }} $nav.messages.1 From 7c1968907d26a66581d362475a6b557e53e159cb Mon Sep 17 00:00:00 2001 From: Friendika Date: Sun, 2 Oct 2011 05:32:05 -0700 Subject: [PATCH 12/15] attack of the zombie orphans --- include/delivery.php | 2 ++ include/notifier.php | 3 +++ 2 files changed, 5 insertions(+) diff --git a/include/delivery.php b/include/delivery.php index 3ab820b62..46112d78e 100644 --- a/include/delivery.php +++ b/include/delivery.php @@ -96,6 +96,8 @@ function delivery_run($argv, $argc){ $uid = $r[0]['uid']; $updated = $r[0]['edited']; + if(! $parent_id) + return; $items = q("SELECT `item`.*, `sign`.`signed_text`,`sign`.`signature`,`sign`.`signer` diff --git a/include/notifier.php b/include/notifier.php index 864fa517b..d1cd1cc73 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -123,6 +123,9 @@ function notifier_run($argv, $argc){ $uid = $r[0]['uid']; $updated = $r[0]['edited']; + if(! $parent_id) + return; + $items = q("SELECT `item`.*, `sign`.`signed_text`,`sign`.`signature`,`sign`.`signer` FROM `item` LEFT JOIN `sign` ON `sign`.`iid` = `item`.`id` WHERE `parent` = %d ORDER BY `id` ASC", intval($parent_id) From 8f9656da926b402e16432de3363e6dc1cef1ef8a Mon Sep 17 00:00:00 2001 From: Friendika Date: Sun, 2 Oct 2011 16:18:01 -0700 Subject: [PATCH 13/15] basic support for AS friend requests --- boot.php | 4 +++- include/items.php | 44 +++++++++++++++++++++++++++++++++++--------- 2 files changed, 38 insertions(+), 10 deletions(-) diff --git a/boot.php b/boot.php index 97a4f96cd..471231820 100644 --- a/boot.php +++ b/boot.php @@ -8,7 +8,7 @@ require_once("include/pgettext.php"); require_once('include/nav.php'); define ( 'FRIENDIKA_PLATFORM', 'Free Friendika'); -define ( 'FRIENDIKA_VERSION', '2.3.1121' ); +define ( 'FRIENDIKA_VERSION', '2.3.1122' ); define ( 'DFRN_PROTOCOL_VERSION', '2.21' ); define ( 'DB_UPDATE_VERSION', 1094 ); @@ -152,6 +152,8 @@ define ( 'ACTIVITY_DISLIKE', NAMESPACE_DFRN . '/dislike' ); define ( 'ACTIVITY_OBJ_HEART', NAMESPACE_DFRN . '/heart' ); define ( 'ACTIVITY_FRIEND', NAMESPACE_ACTIVITY_SCHEMA . 'make-friend' ); +define ( 'ACTIVITY_REQ_FRIEND', NAMESPACE_ACTIVITY_SCHEMA . 'request-friend' ); +define ( 'ACTIVITY_UNFRIEND', NAMESPACE_ACTIVITY_SCHEMA . 'remove-friend' ); define ( 'ACTIVITY_FOLLOW', NAMESPACE_ACTIVITY_SCHEMA . 'follow' ); define ( 'ACTIVITY_UNFOLLOW', NAMESPACE_ACTIVITY_SCHEMA . 'stop-following' ); define ( 'ACTIVITY_POST', NAMESPACE_ACTIVITY_SCHEMA . 'post' ); diff --git a/include/items.php b/include/items.php index a1baf7471..32f0728c3 100644 --- a/include/items.php +++ b/include/items.php @@ -1491,6 +1491,20 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $secure_fee lose_follower($importer,$contact,$datarray,$item); return; } + + if(activity_match($datarray['verb'],ACTIVITY_REQ_FRIEND)) { + logger('consume-feed: New friend request'); + new_follower($importer,$contact,$datarray,$item,true); + return; + } + if(activity_match($datarray['verb'],ACTIVITY_UNFRIEND)) { + lose_sharer($importer,$contact,$datarray,$item); + return; + } + + + + if(! is_array($contact)) return; @@ -1522,7 +1536,7 @@ function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $secure_fee } } -function new_follower($importer,$contact,$datarray,$item) { +function new_follower($importer,$contact,$datarray,$item,$sharing = false) { $url = notags(trim($datarray['author-link'])); $name = notags(trim($datarray['author-name'])); $photo = notags(trim($datarray['author-avatar'])); @@ -1532,14 +1546,14 @@ function new_follower($importer,$contact,$datarray,$item) { $nick = $rawtag[0]['child'][NAMESPACE_POCO]['preferredUsername'][0]['data']; if(is_array($contact)) { - if($contact['network'] == 'stat' && $contact['rel'] == CONTACT_IS_SHARING) { + if(($contact['network'] == NETWORK_OSTATUS && $contact['rel'] == CONTACT_IS_SHARING) + || ($sharing && $contact['rel'] == CONTACT_IS_FOLLOWER)) { $r = q("UPDATE `contact` SET `rel` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1", intval(CONTACT_IS_FRIEND), intval($contact['id']), intval($importer['uid']) ); } - // send email notification to owner? } else { @@ -1555,13 +1569,12 @@ function new_follower($importer,$contact,$datarray,$item) { dbesc($name), dbesc($nick), dbesc($photo), - dbesc('stat'), - intval(CONTACT_IS_FOLLOWER) + dbesc(($sharing) ? NETWORK_ZOT : NETWORK_OSTATUS), + intval(($sharing) ? CONTACT_IS_SHARING : CONTACT_IS_FOLLOWER) ); - $r = q("SELECT `id` FROM `contact` WHERE `uid` = %d AND `url` = '%s' AND `pending` = 1 AND `rel` = %d LIMIT 1", + $r = q("SELECT `id` FROM `contact` WHERE `uid` = %d AND `url` = '%s' AND `pending` = 1 LIMIT 1", intval($importer['uid']), - dbesc($url), - intval(CONTACT_IS_FOLLOWER) + dbesc($url) ); if(count($r)) $contact_record = $r[0]; @@ -1593,7 +1606,7 @@ function new_follower($importer,$contact,$datarray,$item) { '$sitename' => $a->config['sitename'] )); $res = mail($r[0]['email'], - t("You have a new follower at ") . $a->config['sitename'], + (($sharing) ? t('A new person is sharing with you at ') : t("You have a new follower at ")) . $a->config['sitename'], $email, 'From: ' . t('Administrator') . '@' . $_SERVER['SERVER_NAME'] . "\n" . 'Content-type: text/plain; charset=UTF-8' . "\n" @@ -1617,6 +1630,19 @@ function lose_follower($importer,$contact,$datarray,$item) { } } +function lose_sharer($importer,$contact,$datarray,$item) { + + if(($contact['rel'] == CONTACT_IS_FRIEND) || ($contact['rel'] == CONTACT_IS_FOLLOWER)) { + q("UPDATE `contact` SET `rel` = %d WHERE `id` = %d LIMIT 1", + intval(CONTACT_IS_FOLLOWER), + intval($contact['id']) + ); + } + else { + contact_remove($contact['id']); + } +} + function subscribe_to_hub($url,$importer,$contact,$submode = 'subscribe') { From f6f5e5b99389019bdd6a3258de19cdda2d014b97 Mon Sep 17 00:00:00 2001 From: Devlon Duthie Date: Sun, 2 Oct 2011 18:38:08 -0500 Subject: [PATCH 14/15] aspect ratio fixes for photos in testbubble theme some other testbubble styling tweaks --- view/theme/testbubble/photo_album.tpl | 8 ++++ view/theme/testbubble/photo_top.tpl | 8 ++++ view/theme/testbubble/style.css | 64 ++++++++++++++++----------- 3 files changed, 54 insertions(+), 26 deletions(-) create mode 100644 view/theme/testbubble/photo_album.tpl create mode 100644 view/theme/testbubble/photo_top.tpl diff --git a/view/theme/testbubble/photo_album.tpl b/view/theme/testbubble/photo_album.tpl new file mode 100644 index 000000000..a0e3f46c4 --- /dev/null +++ b/view/theme/testbubble/photo_album.tpl @@ -0,0 +1,8 @@ + +

$desc

+
+
+
diff --git a/view/theme/testbubble/photo_top.tpl b/view/theme/testbubble/photo_top.tpl new file mode 100644 index 000000000..d552409c4 --- /dev/null +++ b/view/theme/testbubble/photo_top.tpl @@ -0,0 +1,8 @@ + +
+
+ $imgalt +
+ +
+
diff --git a/view/theme/testbubble/style.css b/view/theme/testbubble/style.css index 85a01d0d2..36fe1bbc1 100644 --- a/view/theme/testbubble/style.css +++ b/view/theme/testbubble/style.css @@ -840,11 +840,16 @@ profile-jot-banner-wrapper { /* = Posts = */ /* ========= */ -.wall-item-outside-wrapper { - margin-top: 50px; +.wall-item-outside-wrapper { + max-width: 85%; + border-bottom: 1px solid #dedede; + margin-top: 20px; + padding-right: 10px; + overflow: hidden; } + .wall-item-outside-wrapper-end { clear: both;} -.wall-item-content-wrapper { position: relative; max-width: 95%; } +.wall-item-content-wrapper { position: relative; max-width: 100%; } .wall-item-photo-menu { display: none;} .wall-item-photo-menu-button { display:none; @@ -890,12 +895,13 @@ profile-jot-banner-wrapper { } .wall-item-outside-wrapper.comment .wall-item-tools { - margin: 5px 5px 10px 60px; + margin: 5px 5px 10px 70px; float: left; } .wall-item-like-buttons { float: left; + padding-left: 10px; } .wall-item-like-buttons a.icon { float: left; @@ -924,9 +930,13 @@ profile-jot-banner-wrapper { float: left; } .wall-item-title { font-size: 1.2em; font-weight: bold;} -.wall-item-body { margin-left: 140px; padding-right: 20px; } +.wall-item-body { + margin-left: 140px; + padding-right: 10px; + max-width: 85%; +} + .wall-item-body p { - max-width: 600px; font-size: 0.8em; } .wall-item-lock-wrapper { float: right; } @@ -936,6 +946,7 @@ profile-jot-banner-wrapper { clear: left; font-size: 0.9em; margin: 4px 0px 0px 140px; + padding-left: 10px; font-variant:small-caps; } @@ -1042,11 +1053,7 @@ profile-jot-banner-wrapper { .icon.drop, .icon.drophide { float: left; } #item-delete-selected { overflow: auto; width: 100%;} -.wall-item-outside-wrapper { - max-width: 83%; - border-bottom: 1px solid #dedede; - margin-top: 20px; -} + /* ============ */ /* = Comments = */ @@ -1055,11 +1062,11 @@ profile-jot-banner-wrapper { .ccollapse-wrapper { font-size: 0.9em; color: #898989; - margin-left: 80px; + margin-left: 60px; font-variant:small-caps; } -.wall-item-outside-wrapper.comment { margin-left: 80px; } +.wall-item-outside-wrapper.comment { margin-left: 70px; } .wall-item-outside-wrapper.comment .wall-item-photo { width: 40px!important; height: 40px!important; @@ -1072,7 +1079,13 @@ profile-jot-banner-wrapper { background-position: 35px center; } .wall-item-outside-wrapper.comment .wall-item-info { width: 60px; } -.wall-item-outside-wrapper.comment .wall-item-body { margin-left: 60px; max-width: 85%;} +.wall-item-outside-wrapper.comment .wall-item-body { + margin-left: 70px; + max-width: 85%; + padding-right: 10px; + padding-left: 10px; +} + .wall-item-outside-wrapper.comment .wall-item-author { margin-left: 60px;} .wall-item-outside-wrapper.comment .wall-item-photo-menu { @@ -1249,9 +1262,18 @@ div[id$="wrapper"] br { clear: left; } /* = Photos = */ /* ========== */ +#side-bar-photos-albums h3:before { + content: url("photography.png"); + padding-right: 10px; + vertical-align: middle; +} + #side-bar-photos-albums li { font-size: 14px; font-variant: none; + text-align: left; + padding-left: 20px; + margin-bottom: 5px; } #photo-top-links { @@ -1303,7 +1325,7 @@ div[id$="wrapper"] br { clear: left; } overflow: hidden; } -#photo-photo { max-width: 100% } +#photo-photo { max-width: 85%; height: auto; } #photo-photo img { max-width: 100% } .photo-top-image-wrapper a:hover, @@ -1511,16 +1533,6 @@ input#photo_edit_form { margin-left: 190px; } -#side-bar-photos-albums h3:before { - content: url("photography.png"); - padding-right: 10px; - vertical-align: middle; -} - -#side-bar-photos-albums li { - margin-bottom: 5px; -} - #photo-album-edit-wrapper { margin-bottom: 10px; } @@ -1699,7 +1711,7 @@ margin-left: 0px; #prvmail-subject { font-weight: bold; - border: none; + border: 1px solid #dddddd; } /* ================= */ From da53ebf4b3431559d2383dd9e0651de44e9714e8 Mon Sep 17 00:00:00 2001 From: Devlon Duthie Date: Sun, 2 Oct 2011 20:37:47 -0500 Subject: [PATCH 15/15] added activetab var to message.php for templates (testbubble only) added logic to photo header to make tab 'sticky' (active class for styling) (testbubble only) css fix for avatars in wallitems --- mod/message.php | 16 ++++++++++++---- view/theme/testbubble/mail_head.tpl | 6 +++--- view/theme/testbubble/style.css | 17 ++++++++++------- 3 files changed, 25 insertions(+), 14 deletions(-) diff --git a/mod/message.php b/mod/message.php index 1bee45d48..d4772d026 100644 --- a/mod/message.php +++ b/mod/message.php @@ -45,13 +45,21 @@ function message_content(&$a) { $myprofile = $a->get_baseurl() . '/profile/' . $a->user['nickname']; - + if (($a->argc > 1) && ($a->argv[1] === 'new')) { + $tab = 'new'; + } else if ($a->argc == 2 && $a->argv[1] === 'sent') { + $tab = 'sent'; + } else { + $tab = 'inbox'; + } + $tpl = get_markup_template('mail_head.tpl'); $header = replace_macros($tpl, array( '$messages' => t('Messages'), '$inbox' => t('Inbox'), '$outbox' => t('Outbox'), - '$new' => t('New Message') + '$new' => t('New Message'), + '$activetab' => $tab )); @@ -90,6 +98,8 @@ function message_content(&$a) { if(($a->argc > 1) && ($a->argv[1] === 'new')) { + $o .= $header; + $tpl = get_markup_template('msg-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( @@ -114,7 +124,6 @@ function message_content(&$a) { '$upload' => t('Upload photo'), '$insert' => t('Insert web link'), '$wait' => t('Please wait') - )); return $o; @@ -248,7 +257,6 @@ function message_content(&$a) { '$upload' => t('Upload photo'), '$insert' => t('Insert web link'), '$wait' => t('Please wait') - )); return $o; diff --git a/view/theme/testbubble/mail_head.tpl b/view/theme/testbubble/mail_head.tpl index 2a4fc42ea..2a4596cd6 100644 --- a/view/theme/testbubble/mail_head.tpl +++ b/view/theme/testbubble/mail_head.tpl @@ -1,7 +1,7 @@

$messages

diff --git a/view/theme/testbubble/style.css b/view/theme/testbubble/style.css index 36fe1bbc1..8ef2b6619 100644 --- a/view/theme/testbubble/style.css +++ b/view/theme/testbubble/style.css @@ -361,7 +361,7 @@ ul#user-menu-popup li a.nav-sep { border-top: 1px solid #989898; border-style:in #notifications { height: 32px; position: absolute; - top:10px; left: 650px; + top:10px; left: 40%; } .nav-ajax-update { width: 44px; @@ -373,10 +373,10 @@ ul#user-menu-popup li a.nav-sep { border-top: 1px solid #989898; border-style:in padding-top: 0.5em; float: left; padding-left: 11px; - display: none; + /*display: none;*/ } #net-update { background-position: 0px 0px; } -#mail-update { background-position: 0px -42px; } +#mail-update { background-position: 0px -40px; } #notify-update { background-position: 0px -84px; } #home-update { background-position: 0px -126px; } @@ -1146,11 +1146,14 @@ profile-jot-banner-wrapper { } .wall-item-body code { - border-color: #CCCCCC; - border-style: solid; + font-family: Courier, monospace; + white-space: pre; + display: block; + overflow: auto; + border: 1px solid #cccccc; border-width: 1px 1px 1px 10px; - display: block; - padding-left: 10px; + padding-left: 10px; + margin-top: 20px; } /* =========== */