From 2b7d08508d63ad5fd7fa7d4f70e3ce67ba932404 Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 04:25:08 -0400 Subject: [PATCH 01/14] head.tpl: commentOpen() and commentClose() return true/false usefull to concatenate other actions: "commentClose(this, $id) && cmtBbClose($id)" --- view/head.tpl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/view/head.tpl b/view/head.tpl index e5495b329..42bd92f4c 100644 --- a/view/head.tpl +++ b/view/head.tpl @@ -39,7 +39,9 @@ $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty"); $("#mod-cmnt-wrap-" + id).show(); openMenu("comment-edit-submit-wrapper-" + id); + return true; } + return false; } function commentClose(obj,id) { if(obj.value == '') { @@ -48,7 +50,9 @@ $("#comment-edit-text-" + id).addClass("comment-edit-text-empty"); $("#mod-cmnt-wrap-" + id).hide(); closeMenu("comment-edit-submit-wrapper-" + id); + return true; } + return false; } From 64a6e8693c5158c37994d8c1c211265fc158b27d Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 04:27:50 -0400 Subject: [PATCH 02/14] quattro: remove unused parameter 'comment' from function cmtBbClose --- view/theme/quattro/theme.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/view/theme/quattro/theme.php b/view/theme/quattro/theme.php index 5cb373eef..51d9d05d5 100644 --- a/view/theme/quattro/theme.php +++ b/view/theme/quattro/theme.php @@ -43,10 +43,10 @@ function insertFormatting(comment,BBcode,id) { } function cmtBbOpen(id) { - $(".comment-edit-bb-" + id).show(); + $("#comment-edit-bb-" + id).show(); } -function cmtBbClose(comment, id) { - $(".comment-edit-bb-" + id).hide(); +function cmtBbClose(id) { + $("#comment-edit-bb-" + id).hide(); } $(document).ready(function() { From c4bff3d3934f93b059da64b02886e3ffa8a5a0d7 Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 04:29:22 -0400 Subject: [PATCH 03/14] quattro: add comment tools icons, fix hide/show comment tools --- view/theme/quattro/comment_item.tpl | 13 +++++++------ view/theme/quattro/dark/style.css | 12 +++++------- view/theme/quattro/green/style.css | 12 +++++------- view/theme/quattro/icons/bbedit.png | Bin 0 -> 2145 bytes view/theme/quattro/quattro.less | 14 +++++++------- view/theme/quattro/wall_thread.tpl | 6 +++++- 6 files changed, 29 insertions(+), 28 deletions(-) create mode 100644 view/theme/quattro/icons/bbedit.png diff --git a/view/theme/quattro/comment_item.tpl b/view/theme/quattro/comment_item.tpl index ea24d95cc..7d1d7550b 100644 --- a/view/theme/quattro/comment_item.tpl +++ b/view/theme/quattro/comment_item.tpl @@ -10,8 +10,8 @@ <div class="comment-edit-photo" id="comment-edit-photo-$id" > <a class="comment-edit-photo-link" href="$mylink" title="$mytitle"><img class="my-comment-photo" src="$myphoto" alt="$mytitle" title="$mytitle" /></a> </div> - <div class="comment-edit-photo-end"></div> - <ul class="comment-edit-bb-$id"> + <ul id="comment-edit-bb-$id" + class="comment-edit-bb"> <li><a class="editicon boldbb shadow" style="cursor: pointer;" title="$edbold" onclick="insertFormatting('$comment','b', $id);"></a></li> @@ -37,8 +37,11 @@ style="cursor: pointer;" title="$edvideo" onclick="insertFormatting('$comment','video', $id);"></a></li> </ul> - <div class="comment-edit-bb-end"></div> - <textarea id="comment-edit-text-$id" class="comment-edit-text-empty" name="body" onFocus="commentOpen(this,$id);cmtBbOpen($id);" onBlur="commentClose(this,$id);" >$comment</textarea> + <textarea id="comment-edit-text-$id" + class="comment-edit-text-empty" + name="body" + onFocus="commentOpen(this,$id) && cmtBbOpen($id);" + onBlur="commentClose(this,$id) && cmtBbClose($id);" >$comment</textarea> {{ if $qcomment }} <select id="qcomment-select-$id" name="qcomment-$id" class="qcomment" onchange="qCommentInsert(this,$id);" > <option value=""></option> @@ -48,14 +51,12 @@ </select> {{ endif }} - <div class="comment-edit-text-end"></div> <div class="comment-edit-submit-wrapper" id="comment-edit-submit-wrapper-$id" style="display: none;" > <input type="submit" onclick="post_comment($id); return false;" id="comment-edit-submit-$id" class="comment-edit-submit" name="submit" value="$submit" /> <span onclick="preview_comment($id);" id="comment-edit-preview-link-$id" class="fakelink">$preview</span> <div id="comment-edit-preview-$id" class="comment-edit-preview" style="display:none;"></div> </div> - <div class="comment-edit-end"></div> </form> </div> diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css index 5ff059160..17e51cf17 100644 --- a/view/theme/quattro/dark/style.css +++ b/view/theme/quattro/dark/style.css @@ -2009,25 +2009,23 @@ footer { opacity: 0.3; filter: alpha(opacity=30); } -[class^="comment-edit-bb"] { +.comment-edit-bb { list-style: none; display: none; - margin: 0px 0 0px 60px; + margin: 0px; + padding: 0px; width: 75%; } -[class^="comment-edit-bb"] > li { +.comment-edit-bb > li { display: inline-block; margin: 10px 10px 0 0; visibility: none; } -[class^="comment-edit-bb-end"] { - clear: both; -} .editicon { display: inline-block; width: 16px; height: 16px; - background-image: url(bbedit.png); + background-image: url(icons/bbedit.png); text-decoration: none; } .editicon :hover { diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css index 3cc4e8cf6..da9cdd794 100644 --- a/view/theme/quattro/green/style.css +++ b/view/theme/quattro/green/style.css @@ -2009,25 +2009,23 @@ footer { opacity: 0.3; filter: alpha(opacity=30); } -[class^="comment-edit-bb"] { +.comment-edit-bb { list-style: none; display: none; - margin: 0px 0 0px 60px; + margin: 0px; + padding: 0px; width: 75%; } -[class^="comment-edit-bb"] > li { +.comment-edit-bb > li { display: inline-block; margin: 10px 10px 0 0; visibility: none; } -[class^="comment-edit-bb-end"] { - clear: both; -} .editicon { display: inline-block; width: 16px; height: 16px; - background-image: url(bbedit.png); + background-image: url(icons/bbedit.png); text-decoration: none; } .editicon :hover { diff --git a/view/theme/quattro/icons/bbedit.png b/view/theme/quattro/icons/bbedit.png new file mode 100644 index 0000000000000000000000000000000000000000..b89f2f7a830b573d37ea591e715d5e9507574642 GIT binary patch literal 2145 zcmV-n2%h(eP)<h;3K|Lk000e1NJLTq006WA001Be1^@s6yE;;500001b5ch_0Itp) z=>Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01ejw01ejxLMWSf00007bV*G`2iyc3 z0t*R39JQ+e00-eoL_t(|+U=TqP*m3)$3HjhF6#pBf;@t(B1tOXiyC!?WLkAPW8!O~ zX{V!Rn09TZm_7&tlP2wCrrO%aXd)JvNx-q=^ksZ>s!p0ntVw)}MywDV6f6t4LfBPy zSpgSz_4bdwyIIHryOB7!Ip2TIIrpCPyZ4^^J-_oi=X@mu#vI2^oRDL6I<DWiL415X zcDtRXmKFeBEi9Bo4}EnIojZmoc;!|3Qe!iDE0)mha<OOsKZ#GB!i;ny0H4&=({sC< z`m?9Utl#grWqE>H68}*UdTf!OpD&;J^fIw=dH`bd1`GxR)=n#$Xbk`ko0ZP?HkL15 z%#Iy9#-#5hNs?t*7XL8_q2&?k*@2IMSAdo<?C%4<Kjc~tP&Yywd6;*U!x)Hv0)7na z1PX(c#}r#jOXYL*S8+HTT)SLLoZdj@tQ>lK`v7pe2XNS|^f>MG_T0uWDTxBp57@9_ z!+jHR`LoOA!$%HdGMTt|;UZ7Ye{$Hmxw(s2xO5fS>G9InfzSZ)KvzKC2_yn0U<*(W z%ntJzzXbjWlmjn^P(KFfQSw@#U&((PI057W=SG`}m9{QmLXdJe*a@5j{xVXi(eUs0 zY0*RxrBabP*~p~SG{1Lt*sOGS*>HP2s8uS`GiL(u^Sm`YziQQekxP;!dD%0|c(3X` zYHJ(F$;lqJZf$J?rKNB1)7Q4JAS+plMDMN&;)#85D5(`FQwTlf%Qz7wJrrX7-hh06 zK>n1Ho)5u>9Y_V*hbad`Jg^&B1RMv}DSfaQ*sRn^16~Jy66g$KlO9E$JqN9&mD}A8 ztTro2aWO>Qb93!-19v@cwAu-1wOXR0q8R8Oz;5ec_ny4~?A^OJ=<K*=%^E3``-hJl z=1QA`bLY;JlatMFHf<03fg3j!F*j>2Z*6%ENs{D9^w6phJa~#SP4@%EVcJgso>n~l ziTiw4IfT&2hcm$UfYZa2gW>nUQeZ8x2ly@U2Ji^bs?@QJ^iWrC4>55Q$(}P8dK|b0 z+{DC9WZ+I8n&@aAQK@-)_Dt$pEVz1m_}}&Gl$Djqot>Q&6ch}yRbF0BSy`D3Fw*_P z!a^!4b}?gG0w$A*AHDcP09LHa<BB8d^N%ZhiH)0z=<4%O@%CF>yl|1a`ns<bp#zEI zRASJ-g=v2o5CwbyxF6tm{YN42v0=)=@SKuXDe3dTg&}QJfM;mKX@(e1^$(DqIg`Yx zk8!iD8303KGKR!tZ0#1hyKK<kPhE=zwN{5FIvS_biP>zXq@;x6Vy~~r$jBfiC54of zl);OUef#L_?8Iy~1NhstS#EN*;VKmsyQr={?yrBv5k+%z^B@}*cLx9`PyIJy7lo=( zytAZ)87079m1%ox81`2x>AMg3yN)X9@nOor;A7D3fbwGC<A6GMgEg$FsljS7laV!> z_NFViUEal@R-<N8Y8tNC7;aiSzR*q+9qlKm*=*+E!Gls!QIR~<8~adPT+H_E+ojd3 zSIfRO8hrwp*_k9J8mO*5&OMKdJymC+>TFOO=c|vhVqG3-lhY#7LrWug=D>SNN-S*+ z`0=3(78@`TNCs|&@m?+<8ZZFe%C%JBnzCpN1t)-oBb0}tU3rFHdFBmZK#8fZ57$4H zm6h`5ZQF>6jq@_z<3XR0gj%EVlN!L%)`HvPA=Q|UTC1a@rHRBx)3{}BqOq}&>C>lw z?ny1dBO9a9=+FDwG&ME(|I_;Q>*bP?QhNHllc8~P0+#kJjFS_*1FyH91#xo*|Lh1~ z6b^?0-})yE+uu?Mc{)ro`#kA0N?iLZKnJ`D90<e4!codY@h{+KN|*$23CJ2k=IDUD z8gL&yb{tLW<9u`eJUq@W%nhH?-DN|ckc4ic0hg<ffxg@R9S*fthuhVM%XNnZb7ryg z<j3fAI{Nzh2EB|<ryEor?Y`d=+>PSTJ9YxFr|K+gmp<k7*udXE{51d-6}wOyl6Z0L z%7_m+k^=H^%JiEG{6V?4KMc?R-67L`ICw!J^J-v&G9dOVTYz5`UI(5~w&y+oJ_J4s zGIInDa_M|+EzcIdOi6w|#WgiFZQF(B+9&ily&Fc|T{bWKRVuVGUVqSGY2~ST^C^FG ztACGO3VzrZ>U}>v{VrCl%kwV`^=cO@f3ajx9kn5eDd`y;IeVEUxicb`&_j0*oId9O zG%B95Bm|opW$Vpndn53j5IkfcZUHYn;J)Zqb~(Zd(Nc}+0Q>`(k~EK+#els7XLG&( z5XE=YU0GQvce`BZS1cKNs3L{?++fJfUBpyl;)r!jCX;u;YDi>3R&vB0u#DFak{_0L zuB@z-x9mPh{0o~|y>uSeZE*5;CO$j!K99}Fq2}1p2ll=Vt#<iFQv+?c>?78jIw>B# z@d-g_f#BF$S}N~7@Gka@1;o0X+-tc+_Ox{Nzq9*+_isb1UGBLv`VMI%l35UX3~}Jl zA^D?|-gBE--*|jXbQ%JJ(BlF^4=o5C5fFN4LFkBq&_j<uLJK|geJl!v9(sIwXrYJx zB7`3LA%f6D4<5`y4;^8I4(7py9$M(3BZAOE4=wc25k+XBhZcJ1h}gChdT61Cj@TI5 z2cd`dLg=9%GC~VIw9rFG455V{TIiu8GKL-x5PIk@0ilN$T8=S+&_fGCM;wG6dVJvj X)oe|$-m16t00000NkvXXu0mjfyN3QR literal 0 HcmV?d00001 diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less index a424ee020..2a4b1b0d0 100644 --- a/view/theme/quattro/quattro.less +++ b/view/theme/quattro/quattro.less @@ -536,6 +536,7 @@ section { color: @CommentBoxFullColor; border: 1px solid @CommentBoxFullBorderColor; } + } .threaded .wall-item-comment-wrapper { margin-left: 0px; } @@ -1372,25 +1373,24 @@ footer { height: 100px; display: table-row; } /* edit buttons for comments */ .icon.dim { opacity: 0.3;filter:alpha(opacity=30); } -[class^="comment-edit-bb"] { +.comment-edit-bb { list-style: none; display: none; - margin: 0px 0 0px 60px; + margin: 0px; + padding: 0px; width: 75%; } -[class^="comment-edit-bb"] > li { +.comment-edit-bb > li { display: inline-block; margin: 10px 10px 0 0; visibility: none; } -[class^="comment-edit-bb-end"] { - clear: both; -} + .editicon { display: inline-block; width: 16px; height: 16px; - background-image: url(bbedit.png); + background-image: url(icons/bbedit.png); text-decoration: none; :hover {background-color: #ccc;} } diff --git a/view/theme/quattro/wall_thread.tpl b/view/theme/quattro/wall_thread.tpl index 4d454f00d..fe136b2b2 100644 --- a/view/theme/quattro/wall_thread.tpl +++ b/view/theme/quattro/wall_thread.tpl @@ -2,7 +2,11 @@ {{ else }} {{if $item.comment_firstcollapsed}} <div class="hide-comments-outer"> - <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span> + <span id="hide-comments-total-$item.id" + class="hide-comments-total">$item.num_comments</span> + <span id="hide-comments-$item.id" + class="hide-comments fakelink" + onclick="showHideComments($item.id);">$item.hide_text</span> </div> <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;"> {{endif}} From 0f15c117ee97757a58cd10e62376a429306516c5 Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 04:53:39 -0400 Subject: [PATCH 04/14] quattro: move comment box for top-level item at the end of comments list --- view/theme/quattro/threaded_conversation.tpl | 2 ++ view/theme/quattro/wall_item_tag.tpl | 4 +--- view/theme/quattro/wall_thread.tpl | 16 +++++++++------- view/theme/quattro/wallwall_thread.tpl | 14 ++++++++------ 4 files changed, 20 insertions(+), 16 deletions(-) diff --git a/view/theme/quattro/threaded_conversation.tpl b/view/theme/quattro/threaded_conversation.tpl index 491c47302..13c38acb2 100644 --- a/view/theme/quattro/threaded_conversation.tpl +++ b/view/theme/quattro/threaded_conversation.tpl @@ -1,6 +1,8 @@ {{ for $threads as $item }} + <div id="tread-wrapper-$item.id" class="tread-wrapper {{ if $item.threaded }}threaded{{ endif }}"> + {{ if $item.type == tag }} {{ inc wall_item_tag.tpl }}{{ endinc }} {{ else }} diff --git a/view/theme/quattro/wall_item_tag.tpl b/view/theme/quattro/wall_item_tag.tpl index 205fcfebc..d655306e5 100644 --- a/view/theme/quattro/wall_item_tag.tpl +++ b/view/theme/quattro/wall_item_tag.tpl @@ -19,7 +19,5 @@ </div> {{ if $item.flatten }} -<div class="wall-item-comment-wrapper" > - $item.comment -</div> +<div class="wall-item-comment-wrapper" >$item.comment</div> {{ endif }} diff --git a/view/theme/quattro/wall_thread.tpl b/view/theme/quattro/wall_thread.tpl index fe136b2b2..bd165eed7 100644 --- a/view/theme/quattro/wall_thread.tpl +++ b/view/theme/quattro/wall_thread.tpl @@ -97,14 +97,14 @@ <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div> <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div> </div> - {{ if $item.threaded }}{{ if $item.comment }} + {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.indent==comment }} <div class="wall-item-bottom"> <div class="wall-item-links"></div> <div class="wall-item-comment-wrapper"> - $item.comment + $item.comment </div> </div> - {{ endif }}{{ endif }} + {{ endif }}{{ endif }}{{ endif }} </div> @@ -124,8 +124,10 @@ {{if $item.comment_lastcollapsed}}</div>{{endif}} {{ endif }} -{{ if $item.flatten }} -<div class="wall-item-comment-wrapper" > - $item.comment -</div> +{{ if $item.indent!=comment}} +<div class="wall-item-comment-wrapper" >$item.comment</div> +{{ endif }} + +{{ if $item.flatten }} +<div class="wall-item-comment-wrapper" >$item.comment</div> {{ endif }} diff --git a/view/theme/quattro/wallwall_thread.tpl b/view/theme/quattro/wallwall_thread.tpl index cc2f8e362..ceb74517e 100644 --- a/view/theme/quattro/wallwall_thread.tpl +++ b/view/theme/quattro/wallwall_thread.tpl @@ -101,14 +101,14 @@ <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div> </div> - {{ if $item.threaded }}{{ if $item.comment }} + {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.indent==comment }} <div class="wall-item-bottom"> <div class="wall-item-links"></div> <div class="wall-item-comment-wrapper"> $item.comment </div> </div> - {{ endif }}{{ endif }} + {{ endif }}{{ endif }}{{ endif }} </div> @@ -127,8 +127,10 @@ {{if $item.comment_lastcollapsed}}</div>{{endif}} {{ endif }} -{{ if $item.flatten }} -<div class="wall-item-comment-wrapper" > - $item.comment -</div> +{{ if $item.indent!=comment}} +<div class="wall-item-comment-wrapper" >$item.comment</div> +{{ endif }} + +{{ if $item.flatten }} +<div class="wall-item-comment-wrapper" >$item.comment</div> {{ endif }} From dbbf5b86a2ebfe862d4d833be41997d8b596f260 Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 04:55:51 -0400 Subject: [PATCH 05/14] template processor: trim strings in {{ if str!=str }}, add 'debug' tag: {{ debug $var [$var1 [$var2 [...]]] }}{{ enddebug }} is replaced by <pre>var_export($var1)\nvar_export($var2)\n....</pre> --- include/template_processor.php | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/include/template_processor.php b/include/template_processor.php index 46252c355..4088ddab6 100644 --- a/include/template_processor.php +++ b/include/template_processor.php @@ -63,7 +63,7 @@ if ($b[0]=="$") $b = $this->_get_var($b); $val = ($a == $b); } else if (strpos($args[2],"!=")>0){ - list($a,$b) = explode("!=",$args[2]); + list($a,$b) = array_map("trim", explode("!=",$args[2])); $a = $this->_get_var($a); if ($b[0]=="$") $b = $this->_get_var($b); $val = ($a != $b); @@ -133,6 +133,26 @@ return $ret; } + + /** + * DEBUG node + * + * {{ debug $var [$var [$var [...]]] }}{{ enddebug }} + * + * replace node with <pre>var_dump($var, $var, ...);</pre> + */ + private function _replcb_debug($args){ + $vars = array_map('trim', explode(" ",$args[2])); + $vars[] = $args[1]; + + $ret = "<pre>"; + foreach ($vars as $var){ + $ret .= htmlspecialchars(var_export( $this->_get_var($var), true )); + $ret .= "\n"; + } + $ret .= "</pre>"; + return $ret; + } private function _replcb_node($m) { $node = $this->nodes[$m[1]]; From fc07f50fd8d2972009bebb3c974cbcbee321c642 Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 05:42:36 -0400 Subject: [PATCH 06/14] conversation: add 'thread_level' to $item array --- include/conversation.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/conversation.php b/include/conversation.php index 3c4ff2908..68aa1fa33 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -588,6 +588,7 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr 'comment' => $comment, 'previewing' => $previewing, 'wait' => t('Please wait'), + 'thread_level' => $thread_level, ); $arr = array('item' => $item, 'output' => $tmp_item); @@ -818,6 +819,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) { 'conv' => (($preview) ? '' : array('href'=> $a->get_baseurl($ssl_state) . '/display/' . $nickname . '/' . $item['id'], 'title'=> t('View in context'))), 'previewing' => $previewing, 'wait' => t('Please wait'), + 'thread_level' => 1, ); $arr = array('item' => $item, 'output' => $tmp_item); From ec3d8a80cda6124bd8c68e6721f3fb5d280d4e0c Mon Sep 17 00:00:00 2001 From: Fabrixxm <fabrix.xm@gmail.com> Date: Fri, 10 Aug 2012 06:27:01 -0400 Subject: [PATCH 07/14] quattro: fix collapsed thread, fix comment box, style previev comment, add 'expand / collapse" thread --- view/theme/quattro/dark/style.css | 54 +++++++++++++++++++++----- view/theme/quattro/green/style.css | 54 +++++++++++++++++++++----- view/theme/quattro/quattro.less | 39 +++++++++++++++---- view/theme/quattro/theme.php | 10 +++++ view/theme/quattro/wall_item_tag.tpl | 4 ++ view/theme/quattro/wall_thread.tpl | 33 ++++++++++------ view/theme/quattro/wallwall_thread.tpl | 37 ++++++++++++------ 7 files changed, 181 insertions(+), 50 deletions(-) diff --git a/view/theme/quattro/dark/style.css b/view/theme/quattro/dark/style.css index 17e51cf17..9561fe728 100644 --- a/view/theme/quattro/dark/style.css +++ b/view/theme/quattro/dark/style.css @@ -1075,6 +1075,7 @@ section { width: 710px; border: 1px solid #2d2d2d; margin-top: 10px; + background-color: #fce94f; } .comment-edit-preview .contact-photo { width: 32px; @@ -1091,12 +1092,17 @@ section { padding-left: 12px; } .comment-edit-preview .wall-item-container { - width: 700px; + width: 90%; } .comment-edit-preview .tread-wrapper { - width: 700px; + width: 90%; padding: 0; margin: 10px 0; + background-color: #fce94f; + border-bottom: 0px; +} +.comment-edit-preview .wall-item-conv { + display: none; } .shiny { border-right: 10px solid #fce94f; @@ -1143,36 +1149,64 @@ section { height: 25px; } /* threaded comments */ +.children { + margin-top: 1em; +} +.children .hide-comments-outer { + margin-left: 60px; +} +.children .comment-edit-preview { + width: 660px; +} +.children .comment-edit-preview .wall-item-container { + width: 610px; +} .children .children { margin-left: 40px; } .children .children .wall-item-container { width: 710px; } -.children .children .children { - margin-left: 40px; +.children .children .comment-edit-preview { + width: 620px; +} +.children .children .comment-edit-preview .wall-item-container { + width: 620px; } .children .children .children .wall-item-container { width: 670px; } -.children .children .children .children { - margin-left: 40px; +.children .children .children .comment-edit-preview { + width: 580px; +} +.children .children .children .comment-edit-preview .wall-item-container { + width: 580px; } .children .children .children .children .wall-item-container { width: 630px; } -.children .children .children .children .children { - margin-left: 40px; +.children .children .children .children .comment-edit-preview { + width: 540px; +} +.children .children .children .children .comment-edit-preview .wall-item-container { + width: 540px; } .children .children .children .children .children .wall-item-container { width: 590px; } +.children .children .children .children .children .comment-edit-preview { + width: 500px; +} +.children .children .children .children .children .comment-edit-preview .wall-item-container { + width: 500px; +} .children .children .children .children .children .children { margin-left: 0px; } -.threaded .hide-comments-outer { - margin-left: 20px; +.children .children .children .children .children .children .hide-comments-outer { + margin-left: 0px; } +/*.threaded .hide-comments-outer { margin-left: 20px; }*/ span[id^="showmore-teaser"] { background: url("showmore-bg.jpg") no-repeat center bottom; } diff --git a/view/theme/quattro/green/style.css b/view/theme/quattro/green/style.css index da9cdd794..29d551271 100644 --- a/view/theme/quattro/green/style.css +++ b/view/theme/quattro/green/style.css @@ -1075,6 +1075,7 @@ section { width: 710px; border: 1px solid #2d2d2d; margin-top: 10px; + background-color: #ddffdd; } .comment-edit-preview .contact-photo { width: 32px; @@ -1091,12 +1092,17 @@ section { padding-left: 12px; } .comment-edit-preview .wall-item-container { - width: 700px; + width: 90%; } .comment-edit-preview .tread-wrapper { - width: 700px; + width: 90%; padding: 0; margin: 10px 0; + background-color: #ddffdd; + border-bottom: 0px; +} +.comment-edit-preview .wall-item-conv { + display: none; } .shiny { border-right: 10px solid #ddffdd; @@ -1143,36 +1149,64 @@ section { height: 25px; } /* threaded comments */ +.children { + margin-top: 1em; +} +.children .hide-comments-outer { + margin-left: 60px; +} +.children .comment-edit-preview { + width: 660px; +} +.children .comment-edit-preview .wall-item-container { + width: 610px; +} .children .children { margin-left: 40px; } .children .children .wall-item-container { width: 710px; } -.children .children .children { - margin-left: 40px; +.children .children .comment-edit-preview { + width: 620px; +} +.children .children .comment-edit-preview .wall-item-container { + width: 620px; } .children .children .children .wall-item-container { width: 670px; } -.children .children .children .children { - margin-left: 40px; +.children .children .children .comment-edit-preview { + width: 580px; +} +.children .children .children .comment-edit-preview .wall-item-container { + width: 580px; } .children .children .children .children .wall-item-container { width: 630px; } -.children .children .children .children .children { - margin-left: 40px; +.children .children .children .children .comment-edit-preview { + width: 540px; +} +.children .children .children .children .comment-edit-preview .wall-item-container { + width: 540px; } .children .children .children .children .children .wall-item-container { width: 590px; } +.children .children .children .children .children .comment-edit-preview { + width: 500px; +} +.children .children .children .children .children .comment-edit-preview .wall-item-container { + width: 500px; +} .children .children .children .children .children .children { margin-left: 0px; } -.threaded .hide-comments-outer { - margin-left: 20px; +.children .children .children .children .children .children .hide-comments-outer { + margin-left: 0px; } +/*.threaded .hide-comments-outer { margin-left: 20px; }*/ span[id^="showmore-teaser"] { background: url("showmore-bg.jpg") no-repeat center bottom; } diff --git a/view/theme/quattro/quattro.less b/view/theme/quattro/quattro.less index 2a4b1b0d0..d7b82c8bc 100644 --- a/view/theme/quattro/quattro.less +++ b/view/theme/quattro/quattro.less @@ -545,6 +545,7 @@ section { width: 710px; border: 1px solid @Grey5; margin-top: 10px; + background-color: @JotPreviewBackgroundColor; .contact-photo { width: 32px; height: 32px; margin-left: 16px; /*background: url(../../../images/icons/22/user.png) no-repeat center center;*/ @@ -555,8 +556,13 @@ section { } .wall-item-links { padding-left: 12px; } - .wall-item-container { width: 700px; } - .tread-wrapper { width: 700px; padding: 0; margin: 10px 0;} + .wall-item-container { width: 90%; } + .tread-wrapper { + width: 90%; padding: 0; margin: 10px 0; + background-color: @JotPreviewBackgroundColor; + border-bottom: 0px; + } + .wall-item-conv { display: none; } } .shiny { border-right:10px solid @ShinyBorderColor; } @@ -599,32 +605,49 @@ section { /* threaded comments */ .children { - + margin-top: 1em; + .hide-comments-outer { margin-left:60px; } + + .comment-edit-preview { width: 660px; + .wall-item-container { width: 610px; } + } + & .children { + margin-left: 40px; .wall-item-container { width: 710px; } + .comment-edit-preview { width: 620px; + .wall-item-container { width: 620px; } + } & .children { - margin-left: 40px; .wall-item-container { width: 670px; } + .comment-edit-preview { width: 580px; + .wall-item-container { width: 580px; } + } & .children { - margin-left: 40px; .wall-item-container { width: 630px; } + .comment-edit-preview { width: 540px; + .wall-item-container { width: 540px; } + } & .children { - margin-left: 40px; .wall-item-container { width: 590px; } + .comment-edit-preview { width: 500px; + .wall-item-container { width: 500px; } + } .children { margin-left: 0px; - } + .hide-comments-outer { margin-left: 0px; } + } } } } } } -.threaded .hide-comments-outer { margin-left: 20px; } +/*.threaded .hide-comments-outer { margin-left: 20px; }*/ span[id^="showmore-teaser"]{ background: url("showmore-bg.jpg") no-repeat center bottom; diff --git a/view/theme/quattro/theme.php b/view/theme/quattro/theme.php index 51d9d05d5..1c986e4c8 100644 --- a/view/theme/quattro/theme.php +++ b/view/theme/quattro/theme.php @@ -42,6 +42,16 @@ function insertFormatting(comment,BBcode,id) { return true; } +function showThread(id) { + $("#collapsed-comments-" + id).show() + $("#collapsed-comments-" + id + " .collapsed-comments").show() +} +function hideThread(id) { + $("#collapsed-comments-" + id).hide() + $("#collapsed-comments-" + id + " .collapsed-comments").hide() +} + + function cmtBbOpen(id) { $("#comment-edit-bb-" + id).show(); } diff --git a/view/theme/quattro/wall_item_tag.tpl b/view/theme/quattro/wall_item_tag.tpl index d655306e5..e1ef93213 100644 --- a/view/theme/quattro/wall_item_tag.tpl +++ b/view/theme/quattro/wall_item_tag.tpl @@ -1,3 +1,5 @@ +{{ if $item.thread_level!=1 }}<div class="children">{{ endif }} + <div class="wall-item-container item-tag $item.indent"> <div class="wall-item-item"> <div class="wall-item-info"> @@ -18,6 +20,8 @@ </div> </div> +{{ if $item.thread_level!=1 }}</div>{{ endif }} + {{ if $item.flatten }} <div class="wall-item-comment-wrapper" >$item.comment</div> {{ endif }} diff --git a/view/theme/quattro/wall_thread.tpl b/view/theme/quattro/wall_thread.tpl index bd165eed7..01738b666 100644 --- a/view/theme/quattro/wall_thread.tpl +++ b/view/theme/quattro/wall_thread.tpl @@ -7,11 +7,19 @@ <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span> + {{ if $item.thread_level==3 }} - + <span id="hide-thread-$item-id" + class="fakelink" + onclick="showThread($item.id);">expand</span> / + <span id="hide-thread-$item-id" + class="fakelink" + onclick="hideThread($item.id);">collapse</span> thread{{ endif }} </div> <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;"> {{endif}} {{ endif }} +{{ if $item.thread_level!=1 }}<div class="children">{{ endif }} <div class="wall-item-decor"> <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span> @@ -97,7 +105,7 @@ <div class="wall-item-like" id="wall-item-like-$item.id">$item.like</div> <div class="wall-item-dislike" id="wall-item-dislike-$item.id">$item.dislike</div> </div> - {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.indent==comment }} + {{ if $item.threaded }}{{ if $item.comment }}{{ if $item.thread_level!=1 }} <div class="wall-item-bottom"> <div class="wall-item-links"></div> <div class="wall-item-comment-wrapper"> @@ -109,24 +117,27 @@ </div> -{{ for $item.children as $item }} - <div class="children"> - {{ if $item.type == tag }} - {{ inc wall_item_tag.tpl }}{{ endinc }} - {{ else }} - {{ inc $item.template }}{{ endinc }} - {{ endif }} - </div> + +{{ for $item.children as $child }} + {{ if $item.type == tag }} + {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }} + {{ else }} + {{ inc $item.template with $item=$child }}{{ endinc }} + {{ endif }} {{ endfor }} +{{ if $item.thread_level!=1 }}</div>{{ endif }} + + {{if $mode == display}} {{ else }} {{if $item.comment_lastcollapsed}}</div>{{endif}} {{ endif }} -{{ if $item.indent!=comment}} +{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}} <div class="wall-item-comment-wrapper" >$item.comment</div> -{{ endif }} +{{ endif }}{{ endif }}{{ endif }} + {{ if $item.flatten }} <div class="wall-item-comment-wrapper" >$item.comment</div> diff --git a/view/theme/quattro/wallwall_thread.tpl b/view/theme/quattro/wallwall_thread.tpl index ceb74517e..93a8838eb 100644 --- a/view/theme/quattro/wallwall_thread.tpl +++ b/view/theme/quattro/wallwall_thread.tpl @@ -2,12 +2,25 @@ {{ else }} {{if $item.comment_firstcollapsed}} <div class="hide-comments-outer"> - <span id="hide-comments-total-$item.id" class="hide-comments-total">$item.num_comments</span> <span id="hide-comments-$item.id" class="hide-comments fakelink" onclick="showHideComments($item.id);">$item.hide_text</span> + <span id="hide-comments-total-$item.id" + class="hide-comments-total">$item.num_comments</span> + <span id="hide-comments-$item.id" + class="hide-comments fakelink" + onclick="showHideComments($item.id);">$item.hide_text</span> + {{ if $item.thread_level==3 }} - + <span id="hide-thread-$item-id" + class="fakelink" + onclick="showThread($item.id);">expand</span> / + <span id="hide-thread-$item-id" + class="fakelink" + onclick="hideThread($item.id);">collapse</span> thread{{ endif }} </div> <div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;"> {{endif}} {{ endif }} +{{ if $item.thread_level!=1 }}<div class="children">{{ endif }} + <div class="wall-item-decor"> <span class="icon s22 star $item.isstarred" id="starred-$item.id" title="$item.star.starred">$item.star.starred</span> {{ if $item.lock }}<span class="icon s22 lock fakelink" onclick="lockview(event,$item.id);" title="$item.lock">$item.lock</span>{{ endif }} @@ -112,24 +125,26 @@ </div> -{{ for $item.children as $item }} - <div class="children"> - {{ if $item.type == tag }} - {{ inc wall_item_tag.tpl }}{{ endinc }} - {{ else }} - {{ inc $item.template }}{{ endinc }} - {{ endif }} - </div> +{{ for $item.children as $child }} + {{ if $item.type == tag }} + {{ inc wall_item_tag.tpl with $item=$child }}{{ endinc }} + {{ else }} + {{ inc $item.template with $item=$child }}{{ endinc }} + {{ endif }} {{ endfor }} +{{ if $item.thread_level!=1 }}</div>{{ endif }} + + {{if $mode == display}} {{ else }} {{if $item.comment_lastcollapsed}}</div>{{endif}} {{ endif }} -{{ if $item.indent!=comment}} +{{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}} <div class="wall-item-comment-wrapper" >$item.comment</div> -{{ endif }} +{{ endif }}{{ endif }}{{ endif }} + {{ if $item.flatten }} <div class="wall-item-comment-wrapper" >$item.comment</div> From 009ebc732a38ca1a19e4667a5998b4ce10904e15 Mon Sep 17 00:00:00 2001 From: Zach Prezkuta <fermion@gmx.com> Date: Thu, 9 Aug 2012 22:06:18 -0600 Subject: [PATCH 08/14] move tag transformation to bb2diaspora; start taking out unnecessary signature stuff --- include/bb2diaspora.php | 8 +++++ include/diaspora.php | 70 ++++++++++++++++++++++++++++++++--------- include/items.php | 5 +-- include/notifier.php | 25 +++++++++++++++ 4 files changed, 92 insertions(+), 16 deletions(-) diff --git a/include/bb2diaspora.php b/include/bb2diaspora.php index 9ede42f6c..b0e12027a 100644 --- a/include/bb2diaspora.php +++ b/include/bb2diaspora.php @@ -196,6 +196,14 @@ function bb2diaspora($Text,$preserve_nl = false, $fordiaspora = true) { // The bbcode parser now handles youtube-links (and the other stuff) correctly. // Additionally the html code is now fixed so that lists are now working. + /** + * Transform #tags, strip off the [url] and replace spaces with underscore + */ + $Text = preg_replace_callback('/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', create_function('$match', + 'return \'#\'. str_replace(\' \', \'_\', $match[2]);' + ), $Text); + + // Converting images with size parameters to simple images. Markdown doesn't know it. $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", '[img]$3[/img]', $Text); diff --git a/include/diaspora.php b/include/diaspora.php index 96b0b184e..3e9f20a47 100755 --- a/include/diaspora.php +++ b/include/diaspora.php @@ -102,6 +102,37 @@ function diaspora_dispatch($importer,$msg) { return $ret; } +function diaspora_handle_from_contact($contact_id) { + $handle = False; + + logger("diaspora_handle_from_contact: contact id is " . $contact_id, LOGGER_DEBUG); + + $r = q("SELECT network, addr, self, url, nick FROM contact WHERE id = %d", + intval($contact_id) + ); + if($r) { + $contact = $r[0]; + + logger("diaspora_handle_from_contact: contact 'self' = " . $contact['self'] . " 'url' = " . $contact['url'], LOGGER_DEBUG); + + if($contact['network'] === NETWORK_DIASPORA) { + $handle = $contact['addr']; + +// logger("diaspora_handle_from_contact: contact id is a Diaspora person, handle = " . $handle, LOGGER_DEBUG); + } + elseif(($contact['network'] === NETWORK_DFRN) || ($contact['self'] == 1)) { + $baseurl_start = strpos($contact['url'],'://') + 3; + $baseurl_length = strpos($contact['url'],'/profile') - $baseurl_start; // allows installations in a subdirectory--not sure how Diaspora will handle + $baseurl = substr($contact['url'], $baseurl_start, $baseurl_length); + $handle = $contact['nick'] . '@' . $baseurl; + +// logger("diaspora_handle_from_contact: contact id is a DFRN person, handle = " . $handle, LOGGER_DEBUG); + } + } + + return $handle; +} + function diaspora_get_contact_by_handle($uid,$handle) { $r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND `uid` = %d AND `addr` = '%s' LIMIT 1", dbesc(NETWORK_DIASPORA), @@ -1282,7 +1313,7 @@ function diaspora_comment($importer,$xml,$msg) { // the existence of parent_author_signature means the parent_author or owner // is already relaying. - proc_run('php','include/notifier.php','comment',$message_id); + proc_run('php','include/notifier.php','comment-import',$message_id); } $myconv = q("SELECT `author-link`, `author-avatar`, `parent` FROM `item` WHERE `parent-uri` = '%s' AND `uid` = %d AND `parent` != 0 AND `deleted` = 0 ", @@ -1867,7 +1898,7 @@ EOT; // is already relaying. The parent_item['origin'] indicates the message was created on our system if(($parent_item['origin']) && (! $parent_author_signature)) - proc_run('php','include/notifier.php','comment',$message_id); + proc_run('php','include/notifier.php','comment-import',$message_id); return; } @@ -1993,7 +2024,7 @@ function diaspora_signed_retraction($importer,$xml,$msg) { // is already relaying. logger('diaspora_signed_retraction: relaying relayable_retraction'); - proc_run('php','include/notifier.php','relayable_retraction',$r[0]['id']); + proc_run('php','include/notifier.php','drop',$r[0]['id']); } } } @@ -2153,12 +2184,6 @@ function diaspora_send_status($item,$owner,$contact,$public_batch = false) { } } */ - /** - * Transform #tags, strip off the [url] and replace spaces with underscore - */ - $body = preg_replace_callback('/#\[url\=(\w+.*?)\](\w+.*?)\[\/url\]/i', create_function('$match', - 'return \'#\'. str_replace(\' \', \'_\', $match[2]);' - ), $body); //if(strlen($title)) // $body = "[b]".html_entity_decode($title)."[/b]\n\n".$body; @@ -2344,8 +2369,8 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) { // return the items ordered by `item`.`id`, in which case the wrong item is chosen as the parent. // The only item with `parent` and `id` as the parent id is the parent item. $p = q("select guid, type, uri, `parent-uri` from item where parent = %d and id = %d limit 1", - intval($item['parent']), - intval($item['parent']) + intval($item['parent']), + intval($item['parent']) ); //} if(count($p)) @@ -2368,7 +2393,6 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) { $like = true; $target_type = ( $parent['uri'] === $parent['parent-uri'] ? 'Post' : 'Comment'); -// $target_type = (strpos($parent['type'], 'comment') ? 'Comment' : 'Post'); // $positive = (($item['deleted']) ? 'false' : 'true'); $positive = 'true'; @@ -2382,7 +2406,7 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) { // fetch the original signature if the relayable was created by a Diaspora // or DFRN user. Relayables for other networks are not supported. - $r = q("select * from sign where " . $sql_sign_id . " = %d limit 1", +/* $r = q("select * from sign where " . $sql_sign_id . " = %d limit 1", intval($item['id']) ); if(count($r)) { @@ -2398,7 +2422,25 @@ function diaspora_send_relay($item,$owner,$contact,$public_batch = false) { // function is called logger('diaspora_send_relay: original author signature not found, cannot send relayable'); return; - } + }*/ + + /* Since the author signature is only checked by the parent, not by the relay recipients, + * I think it may not be necessary for us to do so much work to preserve all the original + * signatures. The important thing that Diaspora DOES need is the original creator's handle. + * Let's just generate that and forget about all the original author signature stuff. + * + * Note: this might be more of an problem if we want to support likes on comments for older + * versions of Diaspora (diaspora-pistos), but since there are a number of problems with + * doing that, let's ignore it for now. + * + * Currently, only DFRN contacts are supported. StatusNet shouldn't be hard, but it hasn't + * been done yet + */ + + $handle = diaspora_handle_from_contact($item['contact-id']); + if(! $handle) + return; + if($relay_retract) $sender_signed_text = $item['guid'] . ';' . $target_type; diff --git a/include/items.php b/include/items.php index 93200cc4b..0ba40e0fa 100755 --- a/include/items.php +++ b/include/items.php @@ -2459,6 +2459,7 @@ function local_delivery($importer,$data) { $is_a_remote_delete = false; + // POSSIBLE CLEANUP --> Why select so many fields when only forum_mode and wall are used? $r = q("select `item`.`id`, `item`.`uri`, `item`.`tag`, `item`.`forum_mode`,`item`.`origin`,`item`.`wall`, `contact`.`name`, `contact`.`url`, `contact`.`thumb` from `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` @@ -2472,7 +2473,7 @@ function local_delivery($importer,$data) { intval($importer['importer_uid']) ); if($r && count($r)) - $is_a_remote_delete = true; + $is_a_remote_delete = true; // Does this have the characteristics of a community or private group comment? // If it's a reply to a wall post on a community/prvgroup page it's a @@ -2799,7 +2800,7 @@ function local_delivery($importer,$data) { } if($posted_id && $parent) { - + proc_run('php',"include/notifier.php","comment-import","$posted_id"); if((! $is_like) && (! $importer['self'])) { diff --git a/include/notifier.php b/include/notifier.php index f54efba31..947818d59 100644 --- a/include/notifier.php +++ b/include/notifier.php @@ -18,6 +18,31 @@ require_once('include/html2plain.php'); * us by hosting providers. */ +/* + * The notifier is typically called with: + * + * proc_run('php', "include/notifier.php", COMMAND, ITEM_ID); + * + * where COMMAND is one of the following: + * + * activity (in diaspora.php, dfrn_confirm.php, profiles.php) + * comment-import (in diaspora.php, items.php) + * comment-new (in item.php) + * drop (in diaspora.php, items.php, photos.php) + * edit_post (in item.php) + * event (in events.php) + * expire (in items.php) + * like (in like.php, poke.php) + * mail (in message.php) + * suggest (in fsuggest.php) + * tag (in photos.php, poke.php, tagger.php) + * tgroup (in items.php) + * wall-new (in photos.php, item.php) + * + * and ITEM_ID is the id of the item in the database that needs to be sent to others. + */ + + function notifier_run($argv, $argc){ global $a, $db; From d9279da369d34a804f9e1af6b5b88ae0c3864854 Mon Sep 17 00:00:00 2001 From: Zach Prezkuta <fermion@gmx.com> Date: Thu, 9 Aug 2012 21:17:11 -0600 Subject: [PATCH 09/14] - Frost Mobile: redo CSS to adjust automatically to the screen width - Frost Mobile: various tweaks and fixes - Allow themes to limit number of items on the Network page --- boot.php | 1 + mod/network.php | 15 ++- view/theme/frost-mobile/TODO | 8 +- view/theme/frost-mobile/head.tpl | 7 +- view/theme/frost-mobile/js/main.js | 18 ++-- view/theme/frost-mobile/js/main.min.js | 2 +- view/theme/frost-mobile/js/theme.js | 6 +- view/theme/frost-mobile/mail_conv.tpl | 18 ++++ view/theme/frost-mobile/style.css | 121 +++++++++++++++++-------- view/theme/frost-mobile/theme.php | 2 +- 10 files changed, 137 insertions(+), 61 deletions(-) create mode 100644 view/theme/frost-mobile/mail_conv.tpl diff --git a/boot.php b/boot.php index c50dbb582..647f779e8 100644 --- a/boot.php +++ b/boot.php @@ -364,6 +364,7 @@ if(! class_exists('App')) { public $sourcename = ''; public $videowidth = 425; public $videoheight = 350; + public $force_max_items = 0; private $scheme; private $hostname; diff --git a/mod/network.php b/mod/network.php index 17368ab92..97f00eeda 100644 --- a/mod/network.php +++ b/mod/network.php @@ -563,7 +563,7 @@ function network_content(&$a, $update = 0) { } else { - if(! get_pconfig(local_user(),'system','alt_pager')) { + if(! get_pconfig(local_user(),'system','alt_pager')) { $r = q("SELECT COUNT(*) AS `total` FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id` WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0 @@ -576,10 +576,15 @@ function network_content(&$a, $update = 0) { if(count($r)) { $a->set_pager_total($r[0]['total']); } - } - $itemspage_network = get_pconfig(local_user(),'system','itemspage_network'); - $a->set_pager_itemspage(((intval($itemspage_network)) ? $itemspage_network : 40)); - $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage'])); + } + + $itemspage_network = get_pconfig(local_user(),'system','itemspage_network'); + $itemspage_network = ((intval($itemspage_network)) ? $itemspage_network : 40); + if(($a->force_max_items > 0) && ($a->force_max_items < $itemspage_network)) + $itemspage_network = $a->force_max_items; + + $a->set_pager_itemspage($itemspage_network); + $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage'])); } $simple_update = (($update) ? " and `item`.`unseen` = 1 " : ''); diff --git a/view/theme/frost-mobile/TODO b/view/theme/frost-mobile/TODO index 940d9e588..05e32cb47 100644 --- a/view/theme/frost-mobile/TODO +++ b/view/theme/frost-mobile/TODO @@ -12,11 +12,15 @@ Photo album display? - Admin: access to more pages than summary? -- Embedded video playback is way too big +- Find a way to show embedded videos at the normal size for tablets that can handle it + +- Need to find a way to deal with freakin annoying elements that don't respect screen width limits. Specifically, need to find a way to keep them from forcing a horizontal scroll bar to show up and making the rest of the body text overflow the item's borders that is screen-width sensitive (it's annoying to have a 300px truncated code block on a 1024px wide screen). At least the following cause problems: + - code blocks + - blockquote blocks + - #reallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallylongtags - Needs to be faster! - Reduce DOM elements (~2400 for 10 items, ~8400 for 40 items) - - Automatically set limit of 10 items for Network and Profile? diff --git a/view/theme/frost-mobile/head.tpl b/view/theme/frost-mobile/head.tpl index 8496667e1..a849f4459 100644 --- a/view/theme/frost-mobile/head.tpl +++ b/view/theme/frost-mobile/head.tpl @@ -1,7 +1,10 @@ <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> -<meta content='width=device-width, minimum-scale=1 maximum-scale=1' name='viewport'> +<!--<meta content='width=device-width, minimum-scale=1 maximum-scale=1' name='viewport'> <meta content='True' name='HandheldFriendly'> -<meta content='320' name='MobileOptimized'> +<meta content='320' name='MobileOptimized'>--> +<meta name="viewport" content="width=device-width; initial-scale = 1.0; maximum-scale=1.0; user-scalable=no" /> +<!--<meta name="viewport" content="width=100%; initial-scale=1; maximum-scale=1; minimum-scale=1; user-scalable=no;" />--> + <base href="$baseurl/" /> <meta name="generator" content="$generator" /> <!--<link rel="stylesheet" href="$baseurl/library/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" /> diff --git a/view/theme/frost-mobile/js/main.js b/view/theme/frost-mobile/js/main.js index bffa7977a..f8d8b8db0 100644 --- a/view/theme/frost-mobile/js/main.js +++ b/view/theme/frost-mobile/js/main.js @@ -401,19 +401,19 @@ function getPosition(e) { var cursor = {x:0, y:0}; - if ( e.pageX || e.pageY ) { - cursor.x = e.pageX; - cursor.y = e.pageY; + if ( e.touches[0].pageX || e.touches[0].pageY ) { + cursor.x = e.touches[0].pageX; + cursor.y = e.touches[0].pageY; } else { - if( e.clientX || e.clientY ) { - cursor.x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft; - cursor.y = e.clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop; + if( e.touches[0].clientX || e.touches[0].clientY ) { + cursor.x = e.touches[0].clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft; + cursor.y = e.touches[0].clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop; } else { - if( e.x || e.y ) { - cursor.x = e.x; - cursor.y = e.y; + if( e.touches[0].x || e.touches[0].y ) { + cursor.touches[0].x = e.touches[0].x; + cursor.touches[0].y = e.touches[0].y; } } } diff --git a/view/theme/frost-mobile/js/main.min.js b/view/theme/frost-mobile/js/main.min.js index 337f8e249..22be25550 100644 --- a/view/theme/frost-mobile/js/main.min.js +++ b/view/theme/frost-mobile/js/main.min.js @@ -1 +1 @@ -function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".tread-wrapper",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.pageX||e.pageY)t.x=e.pageX,t.y=e.pageY;else if(e.clientX||e.clientY)t.x=e.clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.x||e.y)t.x=e.x,t.y=e.y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),$j("img[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:(menu.css("display")=="none"?($j(this).parent().addClass("selected"),menu.show(),menu.attr("id")=="nav-notifications-menu"&&$j("section").hide(),last_popup_menu=menu,last_popup_button=$j(this).parent()):($j(this).parent().removeClass("selected"),menu.hide(),menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_menu=null,last_popup_button=null),!1)}),$j("html").click(function(t){e(t)});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:1500})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1e3})})}),NavUpdate()});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)}; \ No newline at end of file +function openClose(e){document.getElementById(e).style.display=="block"?document.getElementById(e).style.display="none":document.getElementById(e).style.display="block"}function openMenu(e){document.getElementById(e).style.display="block"}function closeMenu(e){document.getElementById(e).style.display="none"}function NavUpdate(){if(!stopped){var e="ping"+(localUser!=0?"?f=&uid="+localUser:"");$j.get(e,function(e){$j(e).find("result").each(function(){$j("nav").trigger("nav-update",this),$j("#live-network").length&&(src="network",liveUpdate()),$j("#live-profile").length&&(src="profile",liveUpdate()),$j("#live-community").length&&(src="community",liveUpdate()),$j("#live-notes").length&&(src="notes",liveUpdate()),$j("#live-display").length&&liking&&(liking=0,window.location.href=window.location.href),$j("#live-photos").length&&liking&&(liking=0,window.location.href=window.location.href)})})}timer=setTimeout(NavUpdate,updateInterval)}function liveUpdate(){if(src==null||stopped||!profile_uid){$j(".like-rotator").hide();return}if($j(".comment-edit-text-full").length||in_progress){livetime&&clearTimeout(livetime),livetime=setTimeout(liveUpdate,1e4);return}livetime!=null&&(livetime=null),prev="live-"+src,in_progress=!0;var e=netargs.length?"/"+netargs:"",t="update_"+src+e+"&p="+profile_uid+"&page="+profile_page+"&msie="+(msie?1:0);$j.get(t,function(e){in_progress=!1,$j(".tread-wrapper",e).each(function(){var e=$j(this).attr("id");$j("#"+e).length==0&&profile_page==1?($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+prev).after($j(this))):($j("img",this).each(function(){$j(this).attr("src",$j(this).attr("dst"))}),$j("#"+e).replaceWith($j(this))),prev=e}),$j(".like-rotator").hide(),commentBusy&&(commentBusy=!1,$j("body").css("cursor","auto")),$j(".comment-edit-form textarea").contact_autocomplete(baseurl+"/acl")})}function imgbright(e){$j(e).removeClass("drophide").addClass("drop")}function imgdull(e){$j(e).removeClass("drop").addClass("drophide")}function dolike(e,t){unpause(),$j("#like-rotator-"+e.toString()).show(),$j.get("like/"+e.toString()+"?verb="+t,NavUpdate),liking=1}function dostar(e){e=e.toString(),$j.get("starred/"+e,function(t){t.match(/1/)?($j("#starred-"+e).addClass("starred"),$j("#starred-"+e).removeClass("unstarred"),$j("#star-"+e).addClass("hidden"),$j("#unstar-"+e).removeClass("hidden")):($j("#starred-"+e).addClass("unstarred"),$j("#starred-"+e).removeClass("starred"),$j("#star-"+e).removeClass("hidden"),$j("#unstar-"+e).addClass("hidden"))})}function getPosition(e){var t={x:0,y:0};if(e.touches[0].pageX||e.touches[0].pageY)t.x=e.touches[0].pageX,t.y=e.touches[0].pageY;else if(e.touches[0].clientX||e.touches[0].clientY)t.x=e.touches[0].clientX+(document.documentElement.scrollLeft||document.body.scrollLeft)-document.documentElement.clientLeft,t.y=e.touches[0].clientY+(document.documentElement.scrollTop||document.body.scrollTop)-document.documentElement.clientTop;else if(e.touches[0].x||e.touches[0].y)t.touches[0].x=e.touches[0].x,t.touches[0].y=e.touches[0].y;return t}function lockview(e,t){e=e||window.event,cursor=getPosition(e),lockvisible?lockviewhide():(lockvisible=!0,$j.get("lockview/"+t,function(e){$j("#panel").html(e),$j("#panel").css({left:cursor.x+5,top:cursor.y+5}),$j("#panel").show()}))}function lockviewhide(){lockvisible=!1,$j("#panel").hide()}function post_comment(e){return unpause(),commentBusy=!0,$j("body").css("cursor","wait"),$j("#comment-preview-inp-"+e).val("0"),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){if(t.success){$j("#comment-edit-wrapper-"+e).hide(),$j("#comment-edit-text-"+e).val("");var n=document.getElementById("comment-edit-text-"+e);n&&commentClose(n,e),timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,10)}t.reload&&(window.location.href=t.reload)},"json"),!1}function preview_comment(e){return $j("#comment-preview-inp-"+e).val("1"),$j("#comment-edit-preview-"+e).show(),$j.post("item",$j("#comment-edit-form-"+e).serialize(),function(t){t.preview&&($j("#comment-edit-preview-"+e).html(t.preview),$j("#comment-edit-preview-"+e+" a").click(function(){return!1}))},"json"),!0}function preview_post(){return $j("#jot-preview").val("1"),$j("#jot-preview-content").show(),tinyMCE.triggerSave(),$j.post("item",$j("#profile-jot-form").serialize(),function(e){e.preview&&($j("#jot-preview-content").html(e.preview),$j("#jot-preview-content a").click(function(){return!1}))},"json"),$j("#jot-preview").val("0"),!0}function unpause(){totStopped=!1,stopped=!1,$j("#pause").html("")}function bin2hex(e){var t,n,r=0,i=[];e+="",r=e.length;for(n=0;n<r;n++)i[n]=e.charCodeAt(n).toString(16).replace(/^([\da-f])$/,"0$1");return i.join("")}function groupChangeMember(e,t,n){$j("body .fakelink").css("cursor","wait"),$j.get("group/"+e+"/"+t+"?t="+n,function(e){$j("#group-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function profChangeMember(e,t){$j("body .fakelink").css("cursor","wait"),$j.get("profperm/"+e+"/"+t,function(e){$j("#prof-update-wrapper").html(e),$j("body .fakelink").css("cursor","auto")})}function contactgroupChangeMember(e,t){$j("body").css("cursor","wait"),$j.get("contactgroup/"+e+"/"+t,function(e){$j("body").css("cursor","auto")})}function checkboxhighlight(e){$j(e).is(":checked")?$j(e).addClass("checkeditem"):$j(e).removeClass("checkeditem")}function notifyMarkAll(){$j.get("notify/mark/all",function(e){timer&&clearTimeout(timer),timer=setTimeout(NavUpdate,1e3)})}function fcFileBrowser(e,t,n,r){var i=baseurl+"/fbrowser/"+n+"/";return tinyMCE.activeEditor.windowManager.open({file:i,title:"File Browser",width:420,height:400,resizable:"yes",inline:"yes",close_previous:"no"},{window:r,input:e}),!1}function setupFieldRichtext(){tinyMCE.init({theme:"advanced",mode:"specific_textareas",editor_selector:"fieldRichtext",plugins:"bbcode,paste, inlinepopups",theme_advanced_buttons1:"bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect,code",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"center",theme_advanced_blockformats:"blockquote,code",paste_text_sticky:!0,entity_encoding:"raw",add_unload_trigger:!1,remove_linebreaks:!1,force_p_newlines:!1,force_br_newlines:!0,forced_root_block:"",convert_urls:!1,content_css:baseurl+"/view/custom_tinymce.css",theme_advanced_path:!1,file_browser_callback:"fcFileBrowser"})}function previewTheme(e){theme=$j(e).val(),$j.getJSON("pretheme?f=&theme="+theme,function(e){$j("#theme-preview").html('<div id="theme-desc">'+e.desc+'</div><div id="theme-version">'+e.version+'</div><div id="theme-credits">'+e.credits+'</div><a href="'+e.img+'"><img src="'+e.img+'" width="320" height="240" alt="'+theme+'" /></a>')})}var src=null,prev=null,livetime=null,msie=!1,stopped=!1,totStopped=!1,timer=null,pr=0,liking=0,in_progress=!1,langSelect=!1,commentBusy=!1,last_popup_menu=null,last_popup_button=null;$j(function(){function e(e){last_popup_menu&&"#"+last_popup_menu.attr("id")!==$j(e.target).attr("rel")&&(last_popup_menu.hide(),last_popup_menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_button.removeClass("selected"),last_popup_menu=null,last_popup_button=null)}$j.ajaxSetup({cache:!1}),msie=$j.browser.msie,$j(".onoff input").each(function(){val=$j(this).val(),id=$j(this).attr("id"),$j("#"+id+"_onoff ."+(val==0?"on":"off")).addClass("hidden")}),$j(".onoff > a").click(function(e){e.preventDefault();var t=$j(this).siblings("input"),n=1-t.val(),r=t.attr("id");$j("#"+r+"_onoff ."+(n==0?"on":"off")).addClass("hidden"),$j("#"+r+"_onoff ."+(n==1?"on":"off")).removeClass("hidden"),t.val(n)}),$j("img[rel^=#]").click(function(t){return e(t),menu=$j($j(this).attr("rel")),t.preventDefault(),t.stopPropagation(),menu.attr("popup")=="false"?!1:(menu.css("display")=="none"?($j(this).parent().addClass("selected"),menu.show(),menu.attr("id")=="nav-notifications-menu"&&$j("section").hide(),last_popup_menu=menu,last_popup_button=$j(this).parent()):($j(this).parent().removeClass("selected"),menu.hide(),menu.attr("id")=="nav-notifications-menu"&&$j("section").show(),last_popup_menu=null,last_popup_button=null),!1)}),$j("html").click(function(t){e(t)});var t=unescape($j("#nav-notifications-template[rel=template]").html()),n=unescape($j("<div>").append($j("#nav-notifications-see-all").clone()).html()),r=unescape($j("<div>").append($j("#nav-notifications-mark-all").clone()).html()),i=unescape($j("#nav-notifications-menu").html());$j("nav").bind("nav-update",function(e,s){var o=$j(s).find("invalid").text();o==1&&(window.location.href=window.location.href);var u=$j(s).find("net").text();u==0?(u="",$j("#net-update").removeClass("show")):$j("#net-update").addClass("show"),$j("#net-update").html(u);var a=$j(s).find("home").text();a==0?(a="",$j("#home-update").removeClass("show")):$j("#home-update").addClass("show"),$j("#home-update").html(a);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update").removeClass("show")):$j("#intro-update").addClass("show"),$j("#intro-update").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update").removeClass("show")):$j("#mail-update").addClass("show"),$j("#mail-update").html(l);var f=$j(s).find("intro").text();f==0?(f="",$j("#intro-update-li").removeClass("show")):$j("#intro-update-li").addClass("show"),$j("#intro-update-li").html(f);var l=$j(s).find("mail").text();l==0?(l="",$j("#mail-update-li").removeClass("show")):$j("#mail-update-li").addClass("show"),$j("#mail-update-li").html(l);var c=$j(s).find("notif");c.children("note").length==0?$j("#nav-notifications-menu").html(i):(nnm=$j("#nav-notifications-menu"),nnm.html(n+r),c.children("note").each(function(){e=$j(this),text=e.text().format("<span class='contactname'>"+e.attr("name")+"</span>"),html=t.format(e.attr("href"),e.attr("photo"),text,e.attr("date"),e.attr("seen")),nnm.append(html)})),notif=c.attr("count"),notif>0?$j("#nav-notifications-linkmenu").addClass("on"):$j("#nav-notifications-linkmenu").removeClass("on"),notif==0?(notif="",$j("#notify-update").removeClass("show")):$j("#notify-update").addClass("show"),$j("#notify-update").html(notif);var h=$j(s).find("sysmsgs");h.children("notice").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"notice",life:1500})}),h.children("info").each(function(){text=$j(this).text(),$j.jGrowl(text,{sticky:!1,theme:"info",life:1e3})})}),NavUpdate()});var lockvisible=!1;String.prototype.format=function(){var e=this;for(var t=0;t<arguments.length;t++){var n=new RegExp("\\{"+t+"\\}","gi");e=e.replace(n,arguments[t])}return e},Array.prototype.remove=function(e){to=undefined,from=this.indexOf(e);var t=this.slice((to||from)+1||this.length);return this.length=from<0?this.length+from:from,this.push.apply(this,t)}; \ No newline at end of file diff --git a/view/theme/frost-mobile/js/theme.js b/view/theme/frost-mobile/js/theme.js index 6cbeb2a32..826fca316 100644 --- a/view/theme/frost-mobile/js/theme.js +++ b/view/theme/frost-mobile/js/theme.js @@ -1,8 +1,8 @@ $j(document).ready(function() { - /* enable tinymce on focus and click */ - $j("#profile-jot-text").focus(enableOnUser); - $j("#profile-jot-text").click(enableOnUser); + /* enable tinymce on focus and click */ + $j("#profile-jot-text").focus(enableOnUser); + $j("#profile-jot-text").click(enableOnUser); if(typeof window.AjaxUpload != "undefined") { switch(window.ajaxType) { diff --git a/view/theme/frost-mobile/mail_conv.tpl b/view/theme/frost-mobile/mail_conv.tpl new file mode 100644 index 000000000..3529fcffa --- /dev/null +++ b/view/theme/frost-mobile/mail_conv.tpl @@ -0,0 +1,18 @@ +<div class="mail-conv-outside-wrapper"> + <div class="mail-conv-sender" > + <a href="$mail.from_url" class="mail-conv-sender-url" ><img class="mframe mail-conv-sender-photo$mail.sparkle" src="$mail.from_photo" heigth="80" width="80" alt="$mail.from_name" /></a> + </div> + <div class="mail-conv-detail" > + <div class="mail-conv-sender-name" >$mail.from_name</div> + <div class="mail-conv-date">$mail.date</div> + <div class="mail-conv-subject">$mail.subject</div> + </div> + <div class="mail-conv-body">$mail.body</div> +</div> +<div class="mail-conv-outside-wrapper-end"></div> + + +<div class="mail-conv-delete-wrapper" id="mail-conv-delete-wrapper-$mail.id" ><a href="message/drop/$mail.id" class="icon drophide delete-icon mail-list-delete-icon" onclick="return confirmDelete();" title="$mail.delete" id="mail-conv-delete-icon-$mail.id" class="mail-conv-delete-icon" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a></div> +<div class="mail-conv-delete-end"></div> + +<hr class="mail-conv-break" /> diff --git a/view/theme/frost-mobile/style.css b/view/theme/frost-mobile/style.css index 8095d7eff..745f90eb6 100644 --- a/view/theme/frost-mobile/style.css +++ b/view/theme/frost-mobile/style.css @@ -9,9 +9,10 @@ /* generals */ html { - width: 320px; +/* width: 320px;*/ margin-left: auto; margin-right: auto; + overflow-x:hidden; } body { @@ -23,6 +24,7 @@ body { background-repeat: repeat-x; color: #505050; margin: 0px; + overflow-x:hidden; } div.container { @@ -32,6 +34,7 @@ div.container { margin-bottom: 0px; margin-left: auto; margin-right: auto; + overflow-x:hidden; } a, a:visited, a:link { color: #3465a4; text-decoration: none; } @@ -39,7 +42,7 @@ a:hover {text-decoration: underline; } input { border: 1px solid #666666; - -moz-border-radius: 3px; +/* -moz-border-radius: 3px;*/ -webkit-border-radius: 3px; border-radius: 3px; padding: 3px; @@ -78,6 +81,10 @@ blockquote { background-color: #f4f8f9; border-left: 4px solid #dae4ee; padding: 0.4em; + margin-left: 20px; + margin-right: 0px; + width: 260px; + overflow: hidden; } .icollapse-wrapper, .ccollapse-wrapper { @@ -176,7 +183,7 @@ nav #banner #logo-text a:hover { text-decoration: none; } border-bottom: 0px; background-color: #aec0d3; color: #565854; - -moz-border-radius: 3px 3px 0px 0px; +/* -moz-border-radius: 3px 3px 0px 0px;*/ -webkit-border-radius: 3px 3px 0px 0px; border-radius: 3px 3px 0px 0px; } @@ -197,7 +204,7 @@ nav #banner #logo-text a:hover { text-decoration: none; } right: 2px; padding: 1px 2px; border-radius: 4px; - -moz-border-radius: 4px; +/* -moz-border-radius: 4px;*/ -webkit-border-radius: 4px; background-color: gold !important; } @@ -245,7 +252,7 @@ nav .nav-link { /* right: -33px;*/ padding: 1em 0px; - -moz-box-shadow: 3px 3px 5px #555; +/* -moz-box-shadow: 3px 3px 5px #555;*/ -webkit-box-shadow: 3px 3px 5px #555; box-shadow: 3px 3px 5px #555; @@ -300,7 +307,7 @@ aside { display: block; color: #FFFFFF; -webkit-border-radius: 5px ; - -moz-border-radius: 5px; +/* -moz-border-radius: 5px;*/ border-radius: 5px; padding: 5px; font-weight: bold; @@ -310,7 +317,7 @@ aside { display: block; color: #FFFFFF; -webkit-border-radius: 5px ; - -moz-border-radius: 5px; +/* -moz-border-radius: 5px;*/ border-radius: 5px; padding: 5px; font-weight: bold; @@ -320,10 +327,11 @@ aside { /* section */ div.section-wrapper { /* width: 100%;*/ - width: 320px; +/* width: 320px; margin-left: auto; - margin-right: auto; + margin-right: auto;*/ + margin-left: 0px; /*padding-right:2em;*/ @@ -349,6 +357,7 @@ section { min-height: 112px; border-top: 1px solid #babdb6; + overflow-x:hidden; } .tabs { @@ -363,7 +372,7 @@ section { padding: 0.4em 2em; border: 1px solid #aaa; border-radius: 8px; - -moz-border-radius: 8px; +/* -moz-border-radius: 8px;*/ -webkit-border-radius: 8px; } .tab { @@ -437,8 +446,8 @@ footer { #jot-title::-webkit-input-placeholder{font-weight: normal;} #jot-category::-webkit-input-placeholder{font-weight: normal;} -#jot-title:-moz-placeholder{font-weight: normal;} -#jot-category:-moz-placeholder{font-weight: normal;} +/*#jot-title:-moz-placeholder{font-weight: normal;} +#jot-category:-moz-placeholder{font-weight: normal;}*/ #jot-title:hover, @@ -468,7 +477,7 @@ footer { .group-selected, .nets-selected, .fileas-selected, .categories-selected { padding: 3px; - -moz-border-radius: 3px; +/* -moz-border-radius: 3px;*/ -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #CCCCCC; @@ -478,7 +487,7 @@ footer { .settings-widget .selected { padding: 3px; - -moz-border-radius: 3px; +/* -moz-border-radius: 3px;*/ -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #CCCCCC; @@ -1133,7 +1142,7 @@ input#dfrn-url { border: 2px solid #AAAAAA; border-radius: 10px; -webkit-border-radius: 10px; - -moz-border-radius: 10px; +/* -moz-border-radius: 10px;*/ /* background: #EEEEEE;*/ } @@ -1328,12 +1337,15 @@ input#dfrn-url { } .wall-item-content img { - max-width: 300px; + max-width: 290px; border-radius: 7px; - -moz-border-radius: 7px; +/* -moz-border-radius: 7px;*/ -webkit-border-radius: 7px; } +.comment .wall-item-content img { + max-width: 280px; +} .wall-item-title { @@ -1350,19 +1362,28 @@ input#dfrn-url { .wall-item-body { text-align: justify; float: left; - width: 300px; +/* width: 300px;*/ overflow: hidden; margin-top: 10px; + padding-right: 1em; line-height: 23px; } .wall-item-body code { - overflow: auto; + width: 260px; + overflow: hidden; } .comment .wall-item-body { margin-left: 5px; - width: 280px; + padding-right: 0.5em; +/* width: 280px;*/ +} + +.comment .wall-item-body blockquote { + margin-left: 0px; + margin-right: 0px; + width: 260px; } .wall-item-tools { @@ -1413,7 +1434,7 @@ input#dfrn-url { } .comment-edit-text-empty, .comment-edit-text-full { /* float: left;*/ - -moz-border-radius: 3px; +/* -moz-border-radius: 3px;*/ -webkit-border-radius: 3px; border-radius: 3px; border: 1px solid #cccccc; @@ -1669,7 +1690,7 @@ input#dfrn-url { padding: 0.2em 1em; border: 1px solid #aaa; border-radius: 10px; - -moz-border-radius: 10px; +/* -moz-border-radius: 10px;*/ -webkit-border-radius: 10px; } @@ -1729,7 +1750,7 @@ input#dfrn-url { padding: 0.2em 1em; border: 1px solid #aaa; border-radius: 10px; - -moz-border-radius: 10px; +/* -moz-border-radius: 10px;*/ -webkit-border-radius: 10px; } @@ -1738,7 +1759,7 @@ input#dfrn-url { float: left; border: 1px solid black; border-radius: 7px; - -moz-border-radius: 7px; +/* -moz-border-radius: 7px;*/ -webkit-border-radius: 7px; background: #FFCCCC; font-size: 1.25em; @@ -1966,7 +1987,7 @@ input#dfrn-url { left: -30px; top: 80px; display: none; z-index: 10000; - -moz-box-shadow: 3px 3px 5px #555; +/* -moz-box-shadow: 3px 3px 5px #555;*/ -webkit-box-shadow: 3px 3px 5px #555; box-shadow: 3px 3px 5px #555; } @@ -2004,7 +2025,7 @@ input#dfrn-url { color:#cccccc; border: 1px solid #cccccc; padding: 3px 0px 0px 5px; - -moz-border-radius: 3px; +/* -moz-border-radius: 3px;*/ -webkit-border-radius: 3px; border-radius: 3px; } @@ -2049,7 +2070,7 @@ input#dfrn-url { background-repeat: no-repeat; padding: 7px 5px 0px 30px; -webkit-border-radius: 5px ; - -moz-border-radius: 5px; +/* -moz-border-radius: 5px;*/ border-radius: 5px; color: #999999; } @@ -2074,7 +2095,7 @@ input#dfrn-url { width: 120px; height: 30px; border: 1px solid #cccccc; - -moz-border-radius: 4px; +/* -moz-border-radius: 4px;*/ -webkit-border-radius: 4px; border-radius: 4px; margin-top: 5px; @@ -2104,7 +2125,7 @@ input#dfrn-url { background-repeat: no-repeat; margin-right: 5px; -webkit-border-radius: 2px ; - -moz-border-radius: 2px; +/* -moz-border-radius: 2px;*/ border-radius: 2px; padding-left: 15px; } @@ -2248,7 +2269,7 @@ a.mail-list-link { .mail-conv-detail { margin-left: 20px; margin-bottom: 10px; - width: 270px; + /*width: 270px;*/ } .mail-conv-subject { @@ -2256,6 +2277,11 @@ a.mail-list-link { margin: 10px 0; } +.mail-conv-body { + padding-top: 20px; + clear: both; +} + .mail-conv-outside-wrapper-end { clear: both; } @@ -2266,6 +2292,7 @@ a.mail-list-link { .mail-conv-delete-wrapper { float: right; + padding-bottom: 0.5em; margin-right: 5px; margin-top: 15px; } @@ -2371,7 +2398,7 @@ aside input[type='text'] { border: 1px solid #DDDDDD; padding: 8px; margin-top: 5px; - -moz-border-radius:5px; +/* -moz-border-radius:5px;*/ -webkit-border-radius:5px; border-radius:5px; @@ -2429,7 +2456,7 @@ aside input[type='text'] { .photo-top-image-wrapper img { max-width: 290px; border-radius: 10px; - -moz-border-radius: 10px; +/* -moz-border-radius: 10px;*/ -webkit-border-radius: 10px; } .photo-top-album-name { @@ -2588,7 +2615,7 @@ aside input[type='text'] { margin-top: 15px; border: 1px solid #aaa; border-radius: 10px; - -moz-border-radius: 10px; +/* -moz-border-radius: 10px;*/ -webkit-border-radius: 10px; } @@ -3823,11 +3850,11 @@ ul.notifications-menu-popup { height: auto; overflow-y: scroll;overflow-style:scrollbar; background-color:#FFFFFF; - -moz-border-radius: 5px; +/* -moz-border-radius: 5px;*/ -webkit-border-radius: 5px; border-radius:5px; border: 1px solid #AAA; - -moz-box-shadow: 3px 3px 5px #555; +/* -moz-box-shadow: 3px 3px 5px #555;*/ -webkit-box-shadow: 3px 3px 5px #555; box-shadow: 3px 3px 5px #555; } @@ -3886,8 +3913,9 @@ ul.notifications-menu-popup { width: 130px; } -@media only screen and (min-device-width: 768px) -and (max-device-width: 1024px) +/*@media only screen and (min-device-width: 768px) +and (max-device-width: 1024px)*/ +/*@media only screen and (min-device-width: 768px) { html { width:700px @@ -3902,4 +3930,21 @@ width:700px; .comment .wall-item-body { width:650px; } -} \ No newline at end of file +}*/ + +@media only screen and (min-device-width: 768px) +{ + .wall-item-body code { + width: 700px; + } + + .comment .wall-item-body blockquote { + margin-left: 20px; + width: 680px; + } + blockquote { + width: 700px; + } + +} + diff --git a/view/theme/frost-mobile/theme.php b/view/theme/frost-mobile/theme.php index 96d40958e..460bda585 100644 --- a/view/theme/frost-mobile/theme.php +++ b/view/theme/frost-mobile/theme.php @@ -4,7 +4,7 @@ * Name: Frost--mobile version * Description: Like frosted glass * Credits: Navigation icons taken from http://iconza.com. Other icons taken from http://thenounproject.com, including: Like, Dislike, Black Lock, Unlock, Pencil, Tag, Camera, Paperclip (Marie Coons), Folder (Sergio Calcara), Chain-link (Andrew Fortnum), Speaker (Harold Kim), Quotes (Henry Ryder), Video Camera (Anas Ramadan), and Left Arrow, Right Arrow, and Delete X (all three P.J. Onori). All under Attribution (CC BY 3.0). Others from The Noun Project are public domain or No Rights Reserved (CC0). - * Version: Version 0.2.4 + * Version: Version 0.2.5 * Author: Zach P <windforest@f.shmuz.in> * Maintainer: Zach P <windforest@f.shmuz.in> */ From bcf214debb74c1375b3eb7ee87a277885a3e38f5 Mon Sep 17 00:00:00 2001 From: Zach Prezkuta <fermion@gmx.com> Date: Fri, 10 Aug 2012 08:37:31 -0600 Subject: [PATCH 10/14] readability in TODO --- view/theme/frost-mobile/TODO | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/view/theme/frost-mobile/TODO b/view/theme/frost-mobile/TODO index 05e32cb47..0ffd4f8c3 100644 --- a/view/theme/frost-mobile/TODO +++ b/view/theme/frost-mobile/TODO @@ -14,7 +14,10 @@ Photo album display? - Find a way to show embedded videos at the normal size for tablets that can handle it -- Need to find a way to deal with freakin annoying elements that don't respect screen width limits. Specifically, need to find a way to keep them from forcing a horizontal scroll bar to show up and making the rest of the body text overflow the item's borders that is screen-width sensitive (it's annoying to have a 300px truncated code block on a 1024px wide screen). At least the following cause problems: +- Need to find a way to deal with freakin annoying elements that don't respect screen width limits. + Specifically, need to find a way to keep them from forcing a horizontal scroll bar to show up and + making the rest of the body text overflow the item's borders that is screen-width sensitive (it's + annoying to have a 300px truncated code block on a 1024px wide screen). At least the following cause problems: - code blocks - blockquote blocks - #reallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallyreallylongtags From b960352b54a84869da0c7b157a797cfde3967a69 Mon Sep 17 00:00:00 2001 From: friendica <info@friendica.com> Date: Fri, 10 Aug 2012 16:02:20 -0700 Subject: [PATCH 11/14] rev update --- boot.php | 2 +- util/messages.po | 488 ++++++++++++++++++++++++----------------------- 2 files changed, 249 insertions(+), 241 deletions(-) diff --git a/boot.php b/boot.php index c50dbb582..6f6403398 100644 --- a/boot.php +++ b/boot.php @@ -11,7 +11,7 @@ require_once('include/cache.php'); require_once('library/Mobile_Detect/Mobile_Detect.php'); define ( 'FRIENDICA_PLATFORM', 'Friendica'); -define ( 'FRIENDICA_VERSION', '3.0.1430' ); +define ( 'FRIENDICA_VERSION', '3.0.1431' ); define ( 'DFRN_PROTOCOL_VERSION', '2.23' ); define ( 'DB_UPDATE_VERSION', 1154 ); diff --git a/util/messages.po b/util/messages.po index c245fa152..9feeaf380 100644 --- a/util/messages.po +++ b/util/messages.po @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: 3.0.1430\n" +"Project-Id-Version: 3.0.1431\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2012-08-09 10:00-0700\n" +"POT-Creation-Date: 2012-08-10 10:00-0700\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -45,13 +45,13 @@ msgstr "" #: ../../mod/wallmessage.php:33 ../../mod/wallmessage.php:79 #: ../../mod/wallmessage.php:103 ../../mod/attach.php:33 #: ../../mod/group.php:19 ../../mod/viewcontacts.php:22 -#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:125 -#: ../../mod/item.php:141 ../../mod/profile_photo.php:19 +#: ../../mod/register.php:38 ../../mod/regmod.php:116 ../../mod/item.php:126 +#: ../../mod/item.php:142 ../../mod/profile_photo.php:19 #: ../../mod/profile_photo.php:142 ../../mod/profile_photo.php:153 #: ../../mod/profile_photo.php:166 ../../mod/message.php:38 #: ../../mod/message.php:168 ../../mod/allfriends.php:9 #: ../../mod/nogroup.php:25 ../../mod/wall_upload.php:53 -#: ../../mod/follow.php:9 ../../mod/display.php:130 ../../mod/profiles.php:7 +#: ../../mod/follow.php:9 ../../mod/display.php:131 ../../mod/profiles.php:7 #: ../../mod/profiles.php:408 ../../mod/delegate.php:6 #: ../../mod/suggest.php:28 ../../mod/invite.php:13 ../../mod/invite.php:81 #: ../../mod/dfrn_confirm.php:53 ../../addon/facebook/facebook.php:510 @@ -86,7 +86,7 @@ msgid "Return to contact editor" msgstr "" #: ../../mod/crepair.php:148 ../../mod/settings.php:539 -#: ../../mod/settings.php:565 ../../mod/admin.php:664 ../../mod/admin.php:673 +#: ../../mod/settings.php:565 ../../mod/admin.php:667 ../../mod/admin.php:676 msgid "Name" msgstr "" @@ -131,8 +131,8 @@ msgstr "" #: ../../mod/contacts.php:341 ../../mod/settings.php:537 #: ../../mod/settings.php:691 ../../mod/settings.php:752 #: ../../mod/settings.php:958 ../../mod/group.php:85 ../../mod/message.php:294 -#: ../../mod/message.php:478 ../../mod/admin.php:422 ../../mod/admin.php:661 -#: ../../mod/admin.php:797 ../../mod/admin.php:996 ../../mod/admin.php:1083 +#: ../../mod/message.php:478 ../../mod/admin.php:424 ../../mod/admin.php:664 +#: ../../mod/admin.php:800 ../../mod/admin.php:999 ../../mod/admin.php:1086 #: ../../mod/profiles.php:578 ../../mod/invite.php:119 #: ../../addon/fromgplus/fromgplus.php:40 #: ../../addon/facebook/facebook.php:619 @@ -172,7 +172,7 @@ msgstr "" #: ../../view/theme/diabook/theme.php:757 #: ../../view/theme/diabook/config.php:190 #: ../../view/theme/quattro/config.php:52 ../../view/theme/dispy/config.php:70 -#: ../../include/conversation.php:696 +#: ../../include/conversation.php:525 msgid "Submit" msgstr "" @@ -524,7 +524,7 @@ msgid "Use as profile photo" msgstr "" #: ../../mod/photos.php:1171 ../../mod/content.php:601 -#: ../../include/conversation.php:606 +#: ../../include/conversation.php:365 msgid "Private Message" msgstr "" @@ -565,49 +565,49 @@ msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping" msgstr "" #: ../../mod/photos.php:1303 ../../mod/content.php:665 -#: ../../include/conversation.php:670 +#: ../../include/conversation.php:500 msgid "I like this (toggle)" msgstr "" #: ../../mod/photos.php:1304 ../../mod/content.php:666 -#: ../../include/conversation.php:671 +#: ../../include/conversation.php:501 msgid "I don't like this (toggle)" msgstr "" -#: ../../mod/photos.php:1305 ../../include/conversation.php:1129 +#: ../../mod/photos.php:1305 ../../include/conversation.php:1121 msgid "Share" msgstr "" #: ../../mod/photos.php:1306 ../../mod/editpost.php:112 #: ../../mod/content.php:482 ../../mod/content.php:843 #: ../../mod/wallmessage.php:152 ../../mod/message.php:293 -#: ../../mod/message.php:479 ../../include/conversation.php:487 -#: ../../include/conversation.php:848 ../../include/conversation.php:1148 +#: ../../mod/message.php:479 ../../include/conversation.php:590 +#: ../../include/conversation.php:821 ../../include/conversation.php:1140 msgid "Please wait" msgstr "" #: ../../mod/photos.php:1322 ../../mod/photos.php:1363 #: ../../mod/photos.php:1395 ../../mod/content.php:688 -#: ../../include/conversation.php:693 +#: ../../include/conversation.php:522 msgid "This is you" msgstr "" #: ../../mod/photos.php:1324 ../../mod/photos.php:1365 #: ../../mod/photos.php:1397 ../../mod/content.php:690 -#: ../../include/conversation.php:695 ../../boot.php:580 +#: ../../include/conversation.php:524 ../../boot.php:580 msgid "Comment" msgstr "" #: ../../mod/photos.php:1326 ../../mod/editpost.php:133 -#: ../../mod/content.php:700 ../../include/conversation.php:705 -#: ../../include/conversation.php:1166 +#: ../../mod/content.php:700 ../../include/conversation.php:534 +#: ../../include/conversation.php:1158 msgid "Preview" msgstr "" #: ../../mod/photos.php:1426 ../../mod/content.php:439 #: ../../mod/content.php:721 ../../mod/settings.php:600 -#: ../../mod/settings.php:689 ../../mod/group.php:168 ../../mod/admin.php:668 -#: ../../include/conversation.php:444 ../../include/conversation.php:726 +#: ../../mod/settings.php:689 ../../mod/group.php:168 ../../mod/admin.php:671 +#: ../../include/conversation.php:379 ../../include/conversation.php:778 msgid "Delete" msgstr "" @@ -673,28 +673,28 @@ msgstr "" msgid "Edit post" msgstr "" -#: ../../mod/editpost.php:88 ../../include/conversation.php:1115 +#: ../../mod/editpost.php:88 ../../include/conversation.php:1107 msgid "Post to Email" msgstr "" #: ../../mod/editpost.php:103 ../../mod/content.php:708 -#: ../../mod/settings.php:599 ../../include/conversation.php:713 +#: ../../mod/settings.php:599 ../../include/conversation.php:370 msgid "Edit" msgstr "" #: ../../mod/editpost.php:104 ../../mod/wallmessage.php:150 #: ../../mod/message.php:291 ../../mod/message.php:476 -#: ../../include/conversation.php:1130 +#: ../../include/conversation.php:1122 msgid "Upload photo" msgstr "" -#: ../../mod/editpost.php:105 ../../include/conversation.php:1132 +#: ../../mod/editpost.php:105 ../../include/conversation.php:1124 msgid "Attach file" msgstr "" #: ../../mod/editpost.php:106 ../../mod/wallmessage.php:151 #: ../../mod/message.php:292 ../../mod/message.php:477 -#: ../../include/conversation.php:1134 +#: ../../include/conversation.php:1126 msgid "Insert web link" msgstr "" @@ -710,35 +710,35 @@ msgstr "" msgid "Insert Vorbis [.ogg] audio" msgstr "" -#: ../../mod/editpost.php:110 ../../include/conversation.php:1140 +#: ../../mod/editpost.php:110 ../../include/conversation.php:1132 msgid "Set your location" msgstr "" -#: ../../mod/editpost.php:111 ../../include/conversation.php:1142 +#: ../../mod/editpost.php:111 ../../include/conversation.php:1134 msgid "Clear browser location" msgstr "" -#: ../../mod/editpost.php:113 ../../include/conversation.php:1149 +#: ../../mod/editpost.php:113 ../../include/conversation.php:1141 msgid "Permission settings" msgstr "" -#: ../../mod/editpost.php:121 ../../include/conversation.php:1158 +#: ../../mod/editpost.php:121 ../../include/conversation.php:1150 msgid "CC: email addresses" msgstr "" -#: ../../mod/editpost.php:122 ../../include/conversation.php:1159 +#: ../../mod/editpost.php:122 ../../include/conversation.php:1151 msgid "Public post" msgstr "" -#: ../../mod/editpost.php:125 ../../include/conversation.php:1145 +#: ../../mod/editpost.php:125 ../../include/conversation.php:1137 msgid "Set title" msgstr "" -#: ../../mod/editpost.php:127 ../../include/conversation.php:1147 +#: ../../mod/editpost.php:127 ../../include/conversation.php:1139 msgid "Categories (comma-separated list)" msgstr "" -#: ../../mod/editpost.php:128 ../../include/conversation.php:1161 +#: ../../mod/editpost.php:128 ../../include/conversation.php:1153 msgid "Example: bob@example.com, mary@example.com" msgstr "" @@ -1280,28 +1280,28 @@ msgid "Group: " msgstr "" #: ../../mod/content.php:438 ../../mod/content.php:720 -#: ../../include/conversation.php:443 ../../include/conversation.php:725 +#: ../../include/conversation.php:378 ../../include/conversation.php:777 msgid "Select" msgstr "" #: ../../mod/content.php:455 ../../mod/content.php:813 -#: ../../mod/content.php:814 ../../include/conversation.php:460 -#: ../../include/conversation.php:818 ../../include/conversation.php:819 +#: ../../mod/content.php:814 ../../include/conversation.php:560 +#: ../../include/conversation.php:561 ../../include/conversation.php:794 #, php-format msgid "View %s's profile @ %s" msgstr "" #: ../../mod/content.php:465 ../../mod/content.php:825 -#: ../../include/conversation.php:470 ../../include/conversation.php:830 +#: ../../include/conversation.php:572 ../../include/conversation.php:804 #, php-format msgid "%s from %s" msgstr "" -#: ../../mod/content.php:480 ../../include/conversation.php:485 +#: ../../mod/content.php:480 ../../include/conversation.php:819 msgid "View in context" msgstr "" -#: ../../mod/content.php:586 ../../include/conversation.php:591 +#: ../../mod/content.php:586 ../../include/conversation.php:599 #, php-format msgid "%d comment" msgid_plural "%d comments" @@ -1310,92 +1310,92 @@ msgstr[1] "" #: ../../mod/content.php:587 ../../addon/page/page.php:76 #: ../../addon/page/page.php:110 ../../addon/showmore/showmore.php:119 -#: ../../include/contact_widgets.php:188 ../../include/conversation.php:592 +#: ../../include/contact_widgets.php:188 ../../include/conversation.php:600 #: ../../boot.php:581 msgid "show more" msgstr "" -#: ../../mod/content.php:665 ../../include/conversation.php:670 +#: ../../mod/content.php:665 ../../include/conversation.php:500 msgid "like" msgstr "" -#: ../../mod/content.php:666 ../../include/conversation.php:671 +#: ../../mod/content.php:666 ../../include/conversation.php:501 msgid "dislike" msgstr "" -#: ../../mod/content.php:668 ../../include/conversation.php:673 +#: ../../mod/content.php:668 ../../include/conversation.php:503 msgid "Share this" msgstr "" -#: ../../mod/content.php:668 ../../include/conversation.php:673 +#: ../../mod/content.php:668 ../../include/conversation.php:503 msgid "share" msgstr "" -#: ../../mod/content.php:692 ../../include/conversation.php:697 +#: ../../mod/content.php:692 ../../include/conversation.php:526 msgid "Bold" msgstr "" -#: ../../mod/content.php:693 ../../include/conversation.php:698 +#: ../../mod/content.php:693 ../../include/conversation.php:527 msgid "Italic" msgstr "" -#: ../../mod/content.php:694 ../../include/conversation.php:699 +#: ../../mod/content.php:694 ../../include/conversation.php:528 msgid "Underline" msgstr "" -#: ../../mod/content.php:695 ../../include/conversation.php:700 +#: ../../mod/content.php:695 ../../include/conversation.php:529 msgid "Quote" msgstr "" -#: ../../mod/content.php:696 ../../include/conversation.php:701 +#: ../../mod/content.php:696 ../../include/conversation.php:530 msgid "Code" msgstr "" -#: ../../mod/content.php:697 ../../include/conversation.php:702 +#: ../../mod/content.php:697 ../../include/conversation.php:531 msgid "Image" msgstr "" -#: ../../mod/content.php:698 ../../include/conversation.php:703 +#: ../../mod/content.php:698 ../../include/conversation.php:532 msgid "Link" msgstr "" -#: ../../mod/content.php:699 ../../include/conversation.php:704 +#: ../../mod/content.php:699 ../../include/conversation.php:533 msgid "Video" msgstr "" -#: ../../mod/content.php:733 ../../include/conversation.php:738 +#: ../../mod/content.php:733 ../../include/conversation.php:471 msgid "add star" msgstr "" -#: ../../mod/content.php:734 ../../include/conversation.php:739 +#: ../../mod/content.php:734 ../../include/conversation.php:472 msgid "remove star" msgstr "" -#: ../../mod/content.php:735 ../../include/conversation.php:740 +#: ../../mod/content.php:735 ../../include/conversation.php:473 msgid "toggle star status" msgstr "" -#: ../../mod/content.php:738 ../../include/conversation.php:743 +#: ../../mod/content.php:738 ../../include/conversation.php:476 msgid "starred" msgstr "" -#: ../../mod/content.php:739 ../../include/conversation.php:744 +#: ../../mod/content.php:739 ../../include/conversation.php:477 msgid "add tag" msgstr "" -#: ../../mod/content.php:743 ../../include/conversation.php:748 +#: ../../mod/content.php:743 ../../include/conversation.php:382 msgid "save to folder" msgstr "" -#: ../../mod/content.php:815 ../../include/conversation.php:820 +#: ../../mod/content.php:815 ../../include/conversation.php:562 msgid "to" msgstr "" -#: ../../mod/content.php:816 ../../include/conversation.php:821 +#: ../../mod/content.php:816 ../../include/conversation.php:563 msgid "Wall-to-Wall" msgstr "" -#: ../../mod/content.php:817 ../../include/conversation.php:822 +#: ../../mod/content.php:817 ../../include/conversation.php:564 msgid "via Wall-To-Wall:" msgstr "" @@ -1480,7 +1480,7 @@ msgid "if applicable" msgstr "" #: ../../mod/notifications.php:157 ../../mod/notifications.php:204 -#: ../../mod/admin.php:666 +#: ../../mod/admin.php:669 msgid "Approve" msgstr "" @@ -1681,12 +1681,12 @@ msgid "View all contacts" msgstr "" #: ../../mod/contacts.php:308 ../../mod/contacts.php:367 -#: ../../mod/admin.php:670 +#: ../../mod/admin.php:673 msgid "Unblock" msgstr "" #: ../../mod/contacts.php:308 ../../mod/contacts.php:367 -#: ../../mod/admin.php:669 +#: ../../mod/admin.php:672 msgid "Block" msgstr "" @@ -1783,7 +1783,7 @@ msgstr "" msgid "Update public posts" msgstr "" -#: ../../mod/contacts.php:364 ../../mod/admin.php:1141 +#: ../../mod/contacts.php:364 ../../mod/admin.php:1144 msgid "Update now" msgstr "" @@ -1996,7 +1996,7 @@ msgstr "" msgid "Remove account" msgstr "" -#: ../../mod/settings.php:69 ../../mod/admin.php:756 ../../mod/admin.php:961 +#: ../../mod/settings.php:69 ../../mod/admin.php:759 ../../mod/admin.php:964 #: ../../addon/dav/layout.fnk.php:225 ../../addon/mathjax/mathjax.php:36 #: ../../view/theme/diabook/theme.php:643 #: ../../view/theme/diabook/theme.php:773 ../../include/nav.php:137 @@ -2635,7 +2635,7 @@ msgstr "" #: ../../mod/wallmessage.php:123 ../../mod/wallmessage.php:131 #: ../../mod/message.php:242 ../../mod/message.php:250 -#: ../../include/conversation.php:1066 ../../include/conversation.php:1083 +#: ../../include/conversation.php:1058 ../../include/conversation.php:1075 msgid "Please enter a link URL:" msgstr "" @@ -2926,7 +2926,7 @@ msgstr "" msgid "Your invitation ID: " msgstr "" -#: ../../mod/register.php:255 ../../mod/admin.php:423 +#: ../../mod/register.php:255 ../../mod/admin.php:425 msgid "Registration" msgstr "" @@ -2982,8 +2982,8 @@ msgid "%1$s doesn't like %2$s's %3$s" msgstr "" #: ../../mod/notice.php:15 ../../mod/viewsrc.php:15 ../../mod/admin.php:159 -#: ../../mod/admin.php:705 ../../mod/admin.php:904 ../../mod/display.php:29 -#: ../../mod/display.php:134 ../../include/items.php:3692 +#: ../../mod/admin.php:708 ../../mod/admin.php:907 ../../mod/display.php:29 +#: ../../mod/display.php:135 ../../include/items.php:3692 msgid "Item not found." msgstr "" @@ -3013,42 +3013,42 @@ msgstr "" msgid "Please login." msgstr "" -#: ../../mod/item.php:90 +#: ../../mod/item.php:91 msgid "Unable to locate original post." msgstr "" -#: ../../mod/item.php:274 +#: ../../mod/item.php:275 msgid "Empty post discarded." msgstr "" -#: ../../mod/item.php:395 ../../mod/wall_upload.php:122 +#: ../../mod/item.php:396 ../../mod/wall_upload.php:122 #: ../../mod/wall_upload.php:131 ../../mod/wall_upload.php:138 #: ../../include/message.php:144 msgid "Wall Photos" msgstr "" -#: ../../mod/item.php:803 +#: ../../mod/item.php:808 msgid "System error. Post not saved." msgstr "" -#: ../../mod/item.php:828 +#: ../../mod/item.php:833 #, php-format msgid "" "This message was sent to you by %s, a member of the Friendica social network." msgstr "" -#: ../../mod/item.php:830 +#: ../../mod/item.php:835 #, php-format msgid "You may visit them online at %s" msgstr "" -#: ../../mod/item.php:831 +#: ../../mod/item.php:836 msgid "" "Please contact the sender by replying to this post if you do not wish to " "receive these messages." msgstr "" -#: ../../mod/item.php:833 +#: ../../mod/item.php:838 #, php-format msgid "%s posted an update." msgstr "" @@ -3213,19 +3213,19 @@ msgstr "" msgid "Theme settings updated." msgstr "" -#: ../../mod/admin.php:96 ../../mod/admin.php:421 +#: ../../mod/admin.php:96 ../../mod/admin.php:423 msgid "Site" msgstr "" -#: ../../mod/admin.php:97 ../../mod/admin.php:660 ../../mod/admin.php:672 +#: ../../mod/admin.php:97 ../../mod/admin.php:663 ../../mod/admin.php:675 msgid "Users" msgstr "" -#: ../../mod/admin.php:98 ../../mod/admin.php:754 ../../mod/admin.php:796 +#: ../../mod/admin.php:98 ../../mod/admin.php:757 ../../mod/admin.php:799 msgid "Plugins" msgstr "" -#: ../../mod/admin.php:99 ../../mod/admin.php:959 ../../mod/admin.php:995 +#: ../../mod/admin.php:99 ../../mod/admin.php:962 ../../mod/admin.php:998 msgid "Themes" msgstr "" @@ -3233,7 +3233,7 @@ msgstr "" msgid "DB updates" msgstr "" -#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1082 +#: ../../mod/admin.php:115 ../../mod/admin.php:122 ../../mod/admin.php:1085 msgid "Logs" msgstr "" @@ -3249,19 +3249,19 @@ msgstr "" msgid "User registrations waiting for confirmation" msgstr "" -#: ../../mod/admin.php:183 ../../mod/admin.php:642 +#: ../../mod/admin.php:183 ../../mod/admin.php:645 msgid "Normal Account" msgstr "" -#: ../../mod/admin.php:184 ../../mod/admin.php:643 +#: ../../mod/admin.php:184 ../../mod/admin.php:646 msgid "Soapbox Account" msgstr "" -#: ../../mod/admin.php:185 ../../mod/admin.php:644 +#: ../../mod/admin.php:185 ../../mod/admin.php:647 msgid "Community/Celebrity Account" msgstr "" -#: ../../mod/admin.php:186 ../../mod/admin.php:645 +#: ../../mod/admin.php:186 ../../mod/admin.php:648 msgid "Automatic Friend Account" msgstr "" @@ -3277,9 +3277,9 @@ msgstr "" msgid "Message queues" msgstr "" -#: ../../mod/admin.php:212 ../../mod/admin.php:420 ../../mod/admin.php:659 -#: ../../mod/admin.php:753 ../../mod/admin.php:795 ../../mod/admin.php:958 -#: ../../mod/admin.php:994 ../../mod/admin.php:1081 +#: ../../mod/admin.php:212 ../../mod/admin.php:422 ../../mod/admin.php:662 +#: ../../mod/admin.php:756 ../../mod/admin.php:798 ../../mod/admin.php:961 +#: ../../mod/admin.php:997 ../../mod/admin.php:1084 msgid "Administration" msgstr "" @@ -3303,503 +3303,511 @@ msgstr "" msgid "Active plugins" msgstr "" -#: ../../mod/admin.php:359 +#: ../../mod/admin.php:361 msgid "Site settings updated." msgstr "" -#: ../../mod/admin.php:407 +#: ../../mod/admin.php:409 msgid "Closed" msgstr "" -#: ../../mod/admin.php:408 +#: ../../mod/admin.php:410 msgid "Requires approval" msgstr "" -#: ../../mod/admin.php:409 +#: ../../mod/admin.php:411 msgid "Open" msgstr "" -#: ../../mod/admin.php:413 +#: ../../mod/admin.php:415 msgid "No SSL policy, links will track page SSL state" msgstr "" -#: ../../mod/admin.php:414 +#: ../../mod/admin.php:416 msgid "Force all links to use SSL" msgstr "" -#: ../../mod/admin.php:415 +#: ../../mod/admin.php:417 msgid "Self-signed certificate, use SSL for local links only (discouraged)" msgstr "" -#: ../../mod/admin.php:424 +#: ../../mod/admin.php:426 msgid "File upload" msgstr "" -#: ../../mod/admin.php:425 +#: ../../mod/admin.php:427 msgid "Policies" msgstr "" -#: ../../mod/admin.php:426 +#: ../../mod/admin.php:428 msgid "Advanced" msgstr "" -#: ../../mod/admin.php:430 ../../addon/statusnet/statusnet.php:567 +#: ../../mod/admin.php:432 ../../addon/statusnet/statusnet.php:567 msgid "Site name" msgstr "" -#: ../../mod/admin.php:431 +#: ../../mod/admin.php:433 msgid "Banner/Logo" msgstr "" -#: ../../mod/admin.php:432 +#: ../../mod/admin.php:434 msgid "System language" msgstr "" -#: ../../mod/admin.php:433 +#: ../../mod/admin.php:435 msgid "System theme" msgstr "" -#: ../../mod/admin.php:433 +#: ../../mod/admin.php:435 msgid "" "Default system theme - may be over-ridden by user profiles - <a href='#' " "id='cnftheme'>change theme settings</a>" msgstr "" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "SSL link policy" msgstr "" -#: ../../mod/admin.php:434 +#: ../../mod/admin.php:436 msgid "Determines whether generated links should be forced to use SSL" msgstr "" -#: ../../mod/admin.php:435 +#: ../../mod/admin.php:437 msgid "Maximum image size" msgstr "" -#: ../../mod/admin.php:435 +#: ../../mod/admin.php:437 msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " "limits." msgstr "" -#: ../../mod/admin.php:437 +#: ../../mod/admin.php:439 msgid "Register policy" msgstr "" -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "Register text" msgstr "" -#: ../../mod/admin.php:438 +#: ../../mod/admin.php:440 msgid "Will be displayed prominently on the registration page." msgstr "" -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "Accounts abandoned after x days" msgstr "" -#: ../../mod/admin.php:439 +#: ../../mod/admin.php:441 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "" -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "Allowed friend domains" msgstr "" -#: ../../mod/admin.php:440 +#: ../../mod/admin.php:442 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "" -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "Allowed email domains" msgstr "" -#: ../../mod/admin.php:441 +#: ../../mod/admin.php:443 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "" -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "Block public" msgstr "" -#: ../../mod/admin.php:442 +#: ../../mod/admin.php:444 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "" -#: ../../mod/admin.php:443 +#: ../../mod/admin.php:445 msgid "Force publish" msgstr "" -#: ../../mod/admin.php:443 +#: ../../mod/admin.php:445 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "" -#: ../../mod/admin.php:444 +#: ../../mod/admin.php:446 msgid "Global directory update URL" msgstr "" -#: ../../mod/admin.php:444 +#: ../../mod/admin.php:446 msgid "" "URL to update the global directory. If this is not set, the global directory " "is completely unavailable to the application." msgstr "" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:447 +msgid "Allow threaded items" +msgstr "" + +#: ../../mod/admin.php:447 +msgid "Allow infinite level threading for items on this site." +msgstr "" + +#: ../../mod/admin.php:449 msgid "Block multiple registrations" msgstr "" -#: ../../mod/admin.php:446 +#: ../../mod/admin.php:449 msgid "Disallow users to register additional accounts for use as pages." msgstr "" -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "OpenID support" msgstr "" -#: ../../mod/admin.php:447 +#: ../../mod/admin.php:450 msgid "OpenID support for registration and logins." msgstr "" -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "Fullname check" msgstr "" -#: ../../mod/admin.php:448 +#: ../../mod/admin.php:451 msgid "" "Force users to register with a space between firstname and lastname in Full " "name, as an antispam measure" msgstr "" -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "UTF-8 Regular expressions" msgstr "" -#: ../../mod/admin.php:449 +#: ../../mod/admin.php:452 msgid "Use PHP UTF8 regular expressions" msgstr "" -#: ../../mod/admin.php:450 +#: ../../mod/admin.php:453 msgid "Show Community Page" msgstr "" -#: ../../mod/admin.php:450 +#: ../../mod/admin.php:453 msgid "" "Display a Community page showing all recent public postings on this site." msgstr "" -#: ../../mod/admin.php:451 +#: ../../mod/admin.php:454 msgid "Enable OStatus support" msgstr "" -#: ../../mod/admin.php:451 +#: ../../mod/admin.php:454 msgid "" "Provide built-in OStatus (identi.ca, status.net, etc.) compatibility. All " "communications in OStatus are public, so privacy warnings will be " "occasionally displayed." msgstr "" -#: ../../mod/admin.php:452 +#: ../../mod/admin.php:455 msgid "Enable Diaspora support" msgstr "" -#: ../../mod/admin.php:452 +#: ../../mod/admin.php:455 msgid "Provide built-in Diaspora network compatibility." msgstr "" -#: ../../mod/admin.php:453 +#: ../../mod/admin.php:456 msgid "Only allow Friendica contacts" msgstr "" -#: ../../mod/admin.php:453 +#: ../../mod/admin.php:456 msgid "" "All contacts must use Friendica protocols. All other built-in communication " "protocols disabled." msgstr "" -#: ../../mod/admin.php:454 +#: ../../mod/admin.php:457 msgid "Verify SSL" msgstr "" -#: ../../mod/admin.php:454 +#: ../../mod/admin.php:457 msgid "" "If you wish, you can turn on strict certificate checking. This will mean you " "cannot connect (at all) to self-signed SSL sites." msgstr "" -#: ../../mod/admin.php:455 +#: ../../mod/admin.php:458 msgid "Proxy user" msgstr "" -#: ../../mod/admin.php:456 +#: ../../mod/admin.php:459 msgid "Proxy URL" msgstr "" -#: ../../mod/admin.php:457 +#: ../../mod/admin.php:460 msgid "Network timeout" msgstr "" -#: ../../mod/admin.php:457 +#: ../../mod/admin.php:460 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "" -#: ../../mod/admin.php:458 +#: ../../mod/admin.php:461 msgid "Delivery interval" msgstr "" -#: ../../mod/admin.php:458 +#: ../../mod/admin.php:461 msgid "" "Delay background delivery processes by this many seconds to reduce system " "load. Recommend: 4-5 for shared hosts, 2-3 for virtual private servers. 0-1 " "for large dedicated servers." msgstr "" -#: ../../mod/admin.php:459 +#: ../../mod/admin.php:462 msgid "Poll interval" msgstr "" -#: ../../mod/admin.php:459 +#: ../../mod/admin.php:462 msgid "" "Delay background polling processes by this many seconds to reduce system " "load. If 0, use delivery interval." msgstr "" -#: ../../mod/admin.php:460 +#: ../../mod/admin.php:463 msgid "Maximum Load Average" msgstr "" -#: ../../mod/admin.php:460 +#: ../../mod/admin.php:463 msgid "" "Maximum system load before delivery and poll processes are deferred - " "default 50." msgstr "" -#: ../../mod/admin.php:477 +#: ../../mod/admin.php:480 msgid "Update has been marked successful" msgstr "" -#: ../../mod/admin.php:487 -#, php-format -msgid "Executing %s failed. Check system logs." -msgstr "" - #: ../../mod/admin.php:490 #, php-format -msgid "Update %s was successfully applied." +msgid "Executing %s failed. Check system logs." msgstr "" -#: ../../mod/admin.php:494 +#: ../../mod/admin.php:493 #, php-format -msgid "Update %s did not return a status. Unknown if it succeeded." +msgid "Update %s was successfully applied." msgstr "" #: ../../mod/admin.php:497 #, php-format +msgid "Update %s did not return a status. Unknown if it succeeded." +msgstr "" + +#: ../../mod/admin.php:500 +#, php-format msgid "Update function %s could not be found." msgstr "" -#: ../../mod/admin.php:512 +#: ../../mod/admin.php:515 msgid "No failed updates." msgstr "" -#: ../../mod/admin.php:516 +#: ../../mod/admin.php:519 msgid "Failed Updates" msgstr "" -#: ../../mod/admin.php:517 +#: ../../mod/admin.php:520 msgid "" "This does not include updates prior to 1139, which did not return a status." msgstr "" -#: ../../mod/admin.php:518 +#: ../../mod/admin.php:521 msgid "Mark success (if update was manually applied)" msgstr "" -#: ../../mod/admin.php:519 +#: ../../mod/admin.php:522 msgid "Attempt to execute this update step automatically" msgstr "" -#: ../../mod/admin.php:544 +#: ../../mod/admin.php:547 #, php-format msgid "%s user blocked/unblocked" msgid_plural "%s users blocked/unblocked" msgstr[0] "" msgstr[1] "" -#: ../../mod/admin.php:551 +#: ../../mod/admin.php:554 #, php-format msgid "%s user deleted" msgid_plural "%s users deleted" msgstr[0] "" msgstr[1] "" -#: ../../mod/admin.php:590 +#: ../../mod/admin.php:593 #, php-format msgid "User '%s' deleted" msgstr "" -#: ../../mod/admin.php:598 +#: ../../mod/admin.php:601 #, php-format msgid "User '%s' unblocked" msgstr "" -#: ../../mod/admin.php:598 +#: ../../mod/admin.php:601 #, php-format msgid "User '%s' blocked" msgstr "" -#: ../../mod/admin.php:662 +#: ../../mod/admin.php:665 msgid "select all" msgstr "" -#: ../../mod/admin.php:663 +#: ../../mod/admin.php:666 msgid "User registrations waiting for confirm" msgstr "" -#: ../../mod/admin.php:664 +#: ../../mod/admin.php:667 msgid "Request date" msgstr "" -#: ../../mod/admin.php:664 ../../mod/admin.php:673 +#: ../../mod/admin.php:667 ../../mod/admin.php:676 #: ../../include/contact_selectors.php:79 msgid "Email" msgstr "" -#: ../../mod/admin.php:665 +#: ../../mod/admin.php:668 msgid "No registrations." msgstr "" -#: ../../mod/admin.php:667 +#: ../../mod/admin.php:670 msgid "Deny" msgstr "" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:676 msgid "Register date" msgstr "" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:676 msgid "Last login" msgstr "" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:676 msgid "Last item" msgstr "" -#: ../../mod/admin.php:673 +#: ../../mod/admin.php:676 msgid "Account" msgstr "" -#: ../../mod/admin.php:675 +#: ../../mod/admin.php:678 msgid "" "Selected users will be deleted!\\n\\nEverything these users had posted on " "this site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:676 +#: ../../mod/admin.php:679 msgid "" "The user {0} will be deleted!\\n\\nEverything this user has posted on this " "site will be permanently deleted!\\n\\nAre you sure?" msgstr "" -#: ../../mod/admin.php:717 +#: ../../mod/admin.php:720 #, php-format msgid "Plugin %s disabled." msgstr "" -#: ../../mod/admin.php:721 +#: ../../mod/admin.php:724 #, php-format msgid "Plugin %s enabled." msgstr "" -#: ../../mod/admin.php:731 ../../mod/admin.php:929 +#: ../../mod/admin.php:734 ../../mod/admin.php:932 msgid "Disable" msgstr "" -#: ../../mod/admin.php:733 ../../mod/admin.php:931 +#: ../../mod/admin.php:736 ../../mod/admin.php:934 msgid "Enable" msgstr "" -#: ../../mod/admin.php:755 ../../mod/admin.php:960 +#: ../../mod/admin.php:758 ../../mod/admin.php:963 msgid "Toggle" msgstr "" -#: ../../mod/admin.php:763 ../../mod/admin.php:970 +#: ../../mod/admin.php:766 ../../mod/admin.php:973 msgid "Author: " msgstr "" -#: ../../mod/admin.php:764 ../../mod/admin.php:971 +#: ../../mod/admin.php:767 ../../mod/admin.php:974 msgid "Maintainer: " msgstr "" -#: ../../mod/admin.php:893 +#: ../../mod/admin.php:896 msgid "No themes found." msgstr "" -#: ../../mod/admin.php:952 +#: ../../mod/admin.php:955 msgid "Screenshot" msgstr "" -#: ../../mod/admin.php:1000 +#: ../../mod/admin.php:1003 msgid "[Experimental]" msgstr "" -#: ../../mod/admin.php:1001 +#: ../../mod/admin.php:1004 msgid "[Unsupported]" msgstr "" -#: ../../mod/admin.php:1028 +#: ../../mod/admin.php:1031 msgid "Log settings updated." msgstr "" -#: ../../mod/admin.php:1084 +#: ../../mod/admin.php:1087 msgid "Clear" msgstr "" -#: ../../mod/admin.php:1090 +#: ../../mod/admin.php:1093 msgid "Debugging" msgstr "" -#: ../../mod/admin.php:1091 +#: ../../mod/admin.php:1094 msgid "Log file" msgstr "" -#: ../../mod/admin.php:1091 +#: ../../mod/admin.php:1094 msgid "" "Must be writable by web server. Relative to your Friendica top-level " "directory." msgstr "" -#: ../../mod/admin.php:1092 +#: ../../mod/admin.php:1095 msgid "Log level" msgstr "" -#: ../../mod/admin.php:1142 +#: ../../mod/admin.php:1145 msgid "Close" msgstr "" -#: ../../mod/admin.php:1148 +#: ../../mod/admin.php:1151 msgid "FTP Host" msgstr "" -#: ../../mod/admin.php:1149 +#: ../../mod/admin.php:1152 msgid "FTP Path" msgstr "" -#: ../../mod/admin.php:1150 +#: ../../mod/admin.php:1153 msgid "FTP User" msgstr "" -#: ../../mod/admin.php:1151 +#: ../../mod/admin.php:1154 msgid "FTP Password" msgstr "" @@ -3894,7 +3902,7 @@ msgstr "" msgid "link" msgstr "" -#: ../../mod/display.php:127 +#: ../../mod/display.php:128 msgid "Item has been removed." msgstr "" @@ -4218,8 +4226,8 @@ msgstr "" msgid "Edit visibility" msgstr "" -#: ../../mod/filer.php:29 ../../include/conversation.php:1070 -#: ../../include/conversation.php:1087 +#: ../../mod/filer.php:29 ../../include/conversation.php:1062 +#: ../../include/conversation.php:1079 msgid "Save to Folder:" msgstr "" @@ -8162,34 +8170,34 @@ msgstr "" msgid "stopped following" msgstr "" -#: ../../include/Contact.php:220 ../../include/conversation.php:967 +#: ../../include/Contact.php:220 ../../include/conversation.php:959 msgid "Poke" msgstr "" -#: ../../include/Contact.php:221 ../../include/conversation.php:961 +#: ../../include/Contact.php:221 ../../include/conversation.php:953 msgid "View Status" msgstr "" -#: ../../include/Contact.php:222 ../../include/conversation.php:962 +#: ../../include/Contact.php:222 ../../include/conversation.php:954 msgid "View Profile" msgstr "" -#: ../../include/Contact.php:223 ../../include/conversation.php:963 +#: ../../include/Contact.php:223 ../../include/conversation.php:955 msgid "View Photos" msgstr "" #: ../../include/Contact.php:224 ../../include/Contact.php:237 -#: ../../include/conversation.php:964 +#: ../../include/conversation.php:956 msgid "Network Posts" msgstr "" #: ../../include/Contact.php:225 ../../include/Contact.php:237 -#: ../../include/conversation.php:965 +#: ../../include/conversation.php:957 msgid "Edit Contact" msgstr "" #: ../../include/Contact.php:226 ../../include/Contact.php:237 -#: ../../include/conversation.php:966 +#: ../../include/conversation.php:958 msgid "Send PM" msgstr "" @@ -8207,106 +8215,106 @@ msgstr "" msgid "%1$s marked %2$s's %3$s as favorite" msgstr "" -#: ../../include/conversation.php:867 +#: ../../include/conversation.php:859 msgid "Delete Selected Items" msgstr "" -#: ../../include/conversation.php:1025 +#: ../../include/conversation.php:1017 #, php-format msgid "%s likes this." msgstr "" -#: ../../include/conversation.php:1025 +#: ../../include/conversation.php:1017 #, php-format msgid "%s doesn't like this." msgstr "" -#: ../../include/conversation.php:1029 +#: ../../include/conversation.php:1021 #, php-format msgid "<span %1$s>%2$d people</span> like this." msgstr "" -#: ../../include/conversation.php:1031 +#: ../../include/conversation.php:1023 #, php-format msgid "<span %1$s>%2$d people</span> don't like this." msgstr "" -#: ../../include/conversation.php:1037 +#: ../../include/conversation.php:1029 msgid "and" msgstr "" -#: ../../include/conversation.php:1040 +#: ../../include/conversation.php:1032 #, php-format msgid ", and %d other people" msgstr "" -#: ../../include/conversation.php:1041 +#: ../../include/conversation.php:1033 #, php-format msgid "%s like this." msgstr "" -#: ../../include/conversation.php:1041 +#: ../../include/conversation.php:1033 #, php-format msgid "%s don't like this." msgstr "" -#: ../../include/conversation.php:1065 ../../include/conversation.php:1082 +#: ../../include/conversation.php:1057 ../../include/conversation.php:1074 msgid "Visible to <strong>everybody</strong>" msgstr "" -#: ../../include/conversation.php:1067 ../../include/conversation.php:1084 +#: ../../include/conversation.php:1059 ../../include/conversation.php:1076 msgid "Please enter a video link/URL:" msgstr "" -#: ../../include/conversation.php:1068 ../../include/conversation.php:1085 +#: ../../include/conversation.php:1060 ../../include/conversation.php:1077 msgid "Please enter an audio link/URL:" msgstr "" -#: ../../include/conversation.php:1069 ../../include/conversation.php:1086 +#: ../../include/conversation.php:1061 ../../include/conversation.php:1078 msgid "Tag term:" msgstr "" -#: ../../include/conversation.php:1071 ../../include/conversation.php:1088 +#: ../../include/conversation.php:1063 ../../include/conversation.php:1080 msgid "Where are you right now?" msgstr "" -#: ../../include/conversation.php:1131 +#: ../../include/conversation.php:1123 msgid "upload photo" msgstr "" -#: ../../include/conversation.php:1133 +#: ../../include/conversation.php:1125 msgid "attach file" msgstr "" -#: ../../include/conversation.php:1135 +#: ../../include/conversation.php:1127 msgid "web link" msgstr "" -#: ../../include/conversation.php:1136 +#: ../../include/conversation.php:1128 msgid "Insert video link" msgstr "" -#: ../../include/conversation.php:1137 +#: ../../include/conversation.php:1129 msgid "video link" msgstr "" -#: ../../include/conversation.php:1138 +#: ../../include/conversation.php:1130 msgid "Insert audio link" msgstr "" -#: ../../include/conversation.php:1139 +#: ../../include/conversation.php:1131 msgid "audio link" msgstr "" -#: ../../include/conversation.php:1141 +#: ../../include/conversation.php:1133 msgid "set location" msgstr "" -#: ../../include/conversation.php:1143 +#: ../../include/conversation.php:1135 msgid "clear location" msgstr "" -#: ../../include/conversation.php:1150 +#: ../../include/conversation.php:1142 msgid "permissions" msgstr "" From 20be1778db11333e9eed5dfa2ea0ec72b5e1b70b Mon Sep 17 00:00:00 2001 From: friendica <info@friendica.com> Date: Fri, 10 Aug 2012 16:36:44 -0700 Subject: [PATCH 12/14] bring likes back - comment ordering is still a bit funky --- include/conversation.php | 23 +++++++++++++++-------- view/wall_thread.tpl | 17 ++++++++++------- view/wallwall_thread.tpl | 16 +++++++++------- 3 files changed, 34 insertions(+), 22 deletions(-) diff --git a/include/conversation.php b/include/conversation.php index 68aa1fa33..df076de3a 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -305,6 +305,9 @@ function localize_item(&$item){ function count_descendants($item) { $total = count($item['children']); + if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) + return 0; + if($total > 0) { foreach($item['children'] as $child) { $total += count_descendants($child); @@ -318,7 +321,7 @@ function count_descendants($item) { * Recursively prepare a thread for HTML */ -function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $profile_owner, $thread_level=1) { +function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $profile_owner, $alike, $dlike, $thread_level=1) { $result = array(); $wall_template = 'wall_thread.tpl'; @@ -335,11 +338,14 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr $nb_items--; continue; } + + if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) { + $nb_items --; + continue; + } $items_seen++; - $alike = array(); - $dlike = array(); $comment = ''; $template = $wall_template; $commentww = ''; @@ -410,9 +416,6 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr $tag = trim($tag); if ($tag!="") $tags[] = bbcode($tag); } - - like_puller($a,$item,$alike,'like'); - like_puller($a,$item,$dlike,'dislike'); $like = ((x($alike,$item['uri'])) ? format_like($alike[$item['uri']],$alike[$item['uri'] . '-l'],'like',$item['uri']) : ''); $dislike = ((x($dlike,$item['uri'])) ? format_like($dlike[$item['uri']],$dlike[$item['uri'] . '-l'],'dislike',$item['uri']) : ''); @@ -602,7 +605,7 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr $item_result['children'] = array(); if(count($item['children'])) { - $item_result['children'] = prepare_threads_body($a, $item['children'], $cmnt_tpl, $page_writeable, $mode, $profile_owner, ($thread_level + 1)); + $item_result['children'] = prepare_threads_body($a, $item['children'], $cmnt_tpl, $page_writeable, $mode, $profile_owner, $alike, $dlike, ($thread_level + 1)); } $item_result['private'] = $item['private']; $item_result['toplevel'] = ($toplevelpost ? 'toplevel_item' : ''); @@ -842,12 +845,16 @@ function conversation(&$a, $items, $mode, $update, $preview = false) { $threads = array(); foreach($items as $item) { + + like_puller($a,$item,$alike,'like'); + like_puller($a,$item,$dlike,'dislike'); + if($item['id'] == $item['parent']) { $threads[] = $item; } } - $threads = prepare_threads_body($a, $threads, $cmnt_tpl, $page_writeable, $mode, $profile_owner); + $threads = prepare_threads_body($a, $threads, $cmnt_tpl, $page_writeable, $mode, $profile_owner, $alike, $dlike); } } diff --git a/view/wall_thread.tpl b/view/wall_thread.tpl index 600f755b1..6f7ced7fe 100644 --- a/view/wall_thread.tpl +++ b/view/wall_thread.tpl @@ -73,18 +73,20 @@ </div> {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }} <div class="wall-item-delete-end"></div> - {{ if $item.threaded }} - {{ if $item.comment }} - <div class="wall-item-comment-wrapper" > - $item.comment - </div> - {{ endif }} - {{ endif }} </div> </div> <div class="wall-item-wrapper-end"></div> <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div> <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div> + + {{ if $item.threaded }} + {{ if $item.comment }} + <div class="wall-item-comment-wrapper$item.indent" > + $item.comment + </div> + {{ endif }} + {{ endif }} + <div class="wall-item-outside-wrapper-end$item.indent" ></div> </div> {{ for $item.children as $item }} @@ -98,3 +100,4 @@ {{ endif }} </div> {{if $item.comment_lastcollapsed}}</div>{{endif}} + diff --git a/view/wallwall_thread.tpl b/view/wallwall_thread.tpl index 89f121f21..63799664c 100644 --- a/view/wallwall_thread.tpl +++ b/view/wallwall_thread.tpl @@ -78,18 +78,20 @@ </div> {{ if $item.drop.dropping }}<input type="checkbox" onclick="checkboxhighlight(this);" title="$item.drop.select" class="item-select" name="itemselected[]" value="$item.id" />{{ endif }} <div class="wall-item-delete-end"></div> - {{ if $item.threaded }} - {{ if $item.comment }} - <div class="wall-item-comment-wrapper" > - $item.comment - </div> - {{ endif }} - {{ endif }} </div> </div> <div class="wall-item-wrapper-end"></div> <div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.like</div> <div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.dislike</div> + + {{ if $item.threaded }} + {{ if $item.comment }} + <div class="wall-item-comment-wrapper$item.indent" > + $item.comment + </div> + {{ endif }} + {{ endif }} + <div class="wall-item-outside-wrapper-end$item.indent" ></div> </div> {{ for $item.children as $item }} From 95bf9324b47ab6b18612980ed13554b8bb9a289a Mon Sep 17 00:00:00 2001 From: friendica <info@friendica.com> Date: Fri, 10 Aug 2012 23:42:45 -0700 Subject: [PATCH 13/14] fix child count --- include/conversation.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/conversation.php b/include/conversation.php index df076de3a..e6f998a9d 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -336,11 +336,13 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { // Don't count it as a visible item $nb_items--; + $total_children = $nb_items; continue; } if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) { $nb_items --; + $total_children = $nb_items; continue; } From d4b61883568b9d8271e1960f3a4a15a5413284be Mon Sep 17 00:00:00 2001 From: friendica <info@friendica.com> Date: Sat, 11 Aug 2012 01:26:10 -0700 Subject: [PATCH 14/14] getting comment counts correct in a threaded world --- include/conversation.php | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/include/conversation.php b/include/conversation.php index e6f998a9d..adc198412 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -305,11 +305,11 @@ function localize_item(&$item){ function count_descendants($item) { $total = count($item['children']); - if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) - return 0; - if($total > 0) { foreach($item['children'] as $child) { + if($child['verb'] === ACTIVITY_LIKE || $child['verb'] === ACTIVITY_DISLIKE) { + $total --; + } $total += count_descendants($child); } } @@ -332,17 +332,25 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr $total_children = $nb_items; foreach($items as $item) { - // prevent private email reply to public conversation from leaking. if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { // Don't count it as a visible item $nb_items--; - $total_children = $nb_items; + $total_children --; + } + if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) { + $nb_items --; + $total_children --; + + } + } + + foreach($items as $item) { + // prevent private email reply to public conversation from leaking. + if($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { continue; } if($item['verb'] === ACTIVITY_LIKE || $item['verb'] === ACTIVITY_DISLIKE) { - $nb_items --; - $total_children = $nb_items; continue; }