Threaded comments are starting to work.
For now, only on normal view, and not during update
This commit is contained in:
parent
3484d3bc5f
commit
8ecf8167db
6 changed files with 781 additions and 331 deletions
File diff suppressed because it is too large
Load diff
|
@ -79,6 +79,7 @@ function item_post(&$a) {
|
||||||
// if this isn't the real parent of the conversation, find it
|
// if this isn't the real parent of the conversation, find it
|
||||||
if($r !== false && count($r)) {
|
if($r !== false && count($r)) {
|
||||||
$parid = $r[0]['parent'];
|
$parid = $r[0]['parent'];
|
||||||
|
$parent_uri = $r[0]['uri'];
|
||||||
if($r[0]['id'] != $r[0]['parent']) {
|
if($r[0]['id'] != $r[0]['parent']) {
|
||||||
$r = q("SELECT * FROM `item` WHERE `id` = `parent` AND `parent` = %d LIMIT 1",
|
$r = q("SELECT * FROM `item` WHERE `id` = `parent` AND `parent` = %d LIMIT 1",
|
||||||
intval($parid)
|
intval($parid)
|
||||||
|
@ -96,7 +97,7 @@ function item_post(&$a) {
|
||||||
$parent = $r[0]['id'];
|
$parent = $r[0]['id'];
|
||||||
|
|
||||||
// multi-level threading - preserve the info but re-parent to our single level threading
|
// multi-level threading - preserve the info but re-parent to our single level threading
|
||||||
if(($parid) && ($parid != $parent))
|
//if(($parid) && ($parid != $parent))
|
||||||
$thr_parent = $parent_uri;
|
$thr_parent = $parent_uri;
|
||||||
|
|
||||||
if($parent_item['contact-id'] && $uid) {
|
if($parent_item['contact-id'] && $uid) {
|
||||||
|
|
|
@ -687,7 +687,7 @@ function network_content(&$a, $update = 0) {
|
||||||
|
|
||||||
$mode = (($nouveau) ? 'network-new' : 'network');
|
$mode = (($nouveau) ? 'network-new' : 'network');
|
||||||
|
|
||||||
$o .= conversation($a,$items,$mode,$update);
|
$o .= conversation($a,$items,$mode,$update, false, true);
|
||||||
|
|
||||||
if(! $update) {
|
if(! $update) {
|
||||||
if(! get_pconfig(local_user(),'system','alt_pager')) {
|
if(! get_pconfig(local_user(),'system','alt_pager')) {
|
||||||
|
|
|
@ -935,8 +935,12 @@ input#dfrn-url {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.wall-item-content-wrapper.comment {
|
.tread-wrapper .tread-wrapper {
|
||||||
margin-left: 50px;
|
margin-left: 50px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wall-item-content-wrapper.comment {
|
||||||
|
# margin-left: 50px;
|
||||||
background: #EEEEEE;
|
background: #EEEEEE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
13
view/threaded_conversation.tpl
Normal file
13
view/threaded_conversation.tpl
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
{{ for $threads as $item }}
|
||||||
|
{{ inc $item.template }}{{ endinc }}
|
||||||
|
{{ endfor }}
|
||||||
|
|
||||||
|
<div id="conversation-end"></div>
|
||||||
|
|
||||||
|
{{ if $dropping }}
|
||||||
|
<div id="item-delete-selected" class="fakelink" onclick="deleteCheckedItems();">
|
||||||
|
<div id="item-delete-selected-icon" class="icon drophide" title="$dropping" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></div>
|
||||||
|
<div id="item-delete-selected-desc" >$dropping</div>
|
||||||
|
</div>
|
||||||
|
<div id="item-delete-selected-end"></div>
|
||||||
|
{{ endif }}
|
91
view/wall_thread.tpl
Normal file
91
view/wall_thread.tpl
Normal file
|
@ -0,0 +1,91 @@
|
||||||
|
<div id="tread-wrapper-$item.id" class="tread-wrapper">
|
||||||
|
{{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>
|
||||||
|
</div>
|
||||||
|
<div id="collapsed-comments-$item.id" class="collapsed-comments" style="display: none;">
|
||||||
|
{{endif}}
|
||||||
|
{{if $item.comment_lastcollapsed}}</div>{{endif}}
|
||||||
|
|
||||||
|
<a name="$item.id" ></a>
|
||||||
|
<div class="wall-item-outside-wrapper $item.indent$item.previewing" id="wall-item-outside-wrapper-$item.id" >
|
||||||
|
<div class="wall-item-content-wrapper $item.indent" id="wall-item-content-wrapper-$item.id" >
|
||||||
|
<div class="wall-item-info" id="wall-item-info-$item.id">
|
||||||
|
<div class="wall-item-photo-wrapper" id="wall-item-photo-wrapper-$item.id"
|
||||||
|
onmouseover="if (typeof t$item.id != 'undefined') clearTimeout(t$item.id); openMenu('wall-item-photo-menu-button-$item.id')"
|
||||||
|
onmouseout="t$item.id=setTimeout('closeMenu(\'wall-item-photo-menu-button-$item.id\'); closeMenu(\'wall-item-photo-menu-$item.id\');',200)">
|
||||||
|
<a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-photo-link" id="wall-item-photo-link-$item.id">
|
||||||
|
<img src="$item.thumb" class="wall-item-photo$item.sparkle" id="wall-item-photo-$item.id" style="height: 80px; width: 80px;" alt="$item.name" />
|
||||||
|
</a>
|
||||||
|
<span onclick="openClose('wall-item-photo-menu-$item.id');" class="fakelink wall-item-photo-menu-button" id="wall-item-photo-menu-button-$item.id">menu</span>
|
||||||
|
<div class="wall-item-photo-menu" id="wall-item-photo-menu-$item.id">
|
||||||
|
<ul>
|
||||||
|
$item.item_photo_menu
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="wall-item-photo-end"></div>
|
||||||
|
<div class="wall-item-wrapper" id="wall-item-wrapper-$item.id" >
|
||||||
|
{{ if $item.lock }}<div class="wall-item-lock"><img src="images/lock_icon.gif" class="lockview" alt="$item.lock" onclick="lockview(event,$item.id);" /></div>
|
||||||
|
{{ else }}<div class="wall-item-lock"></div>{{ endif }}
|
||||||
|
<div class="wall-item-location" id="wall-item-location-$item.id">$item.location</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="wall-item-author">
|
||||||
|
<a href="$item.profile_url" target="redir" title="$item.linktitle" class="wall-item-name-link"><span class="wall-item-name$item.sparkle" id="wall-item-name-$item.id" >$item.name</span></a>
|
||||||
|
<div class="wall-item-ago" id="wall-item-ago-$item.id" >$item.ago</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="wall-item-content" id="wall-item-content-$item.id" >
|
||||||
|
<div class="wall-item-title" id="wall-item-title-$item.id">$item.title</div>
|
||||||
|
<div class="wall-item-title-end"></div>
|
||||||
|
<div class="wall-item-body" id="wall-item-body-$item.id" >$item.body
|
||||||
|
<div class="body-tag">
|
||||||
|
{{ for $item.tags as $tag }}
|
||||||
|
<span class='tag'>$tag</span>
|
||||||
|
{{ endfor }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="wall-item-tools" id="wall-item-tools-$item.id">
|
||||||
|
{{ if $item.vote }}
|
||||||
|
<div class="wall-item-like-buttons" id="wall-item-like-buttons-$item.id">
|
||||||
|
<a href="#" class="icon like" title="$item.vote.like.0" onclick="dolike($item.id,'like'); return false"></a>
|
||||||
|
<a href="#" class="icon dislike" title="$item.vote.dislike.0" onclick="dolike($item.id,'dislike'); return false"></a>
|
||||||
|
{{ if $item.vote.share }}<a href="#" class="icon recycle wall-item-share-buttons" title="$item.vote.share.0" onclick="jotShare($item.id); return false"></a>{{ endif }}
|
||||||
|
<img id="like-rotator-$item.id" class="like-rotator" src="images/rotator.gif" alt="$item.wait" title="$item.wait" style="display: none;" />
|
||||||
|
</div>
|
||||||
|
{{ endif }}
|
||||||
|
{{ if $item.plink }}
|
||||||
|
<div class="wall-item-links-wrapper"><a href="$item.plink.href" title="$item.plink.title" target="external-link" class="icon remote-link$item.sparkle"></a></div>
|
||||||
|
{{ endif }}
|
||||||
|
{{ if $item.edpost }}
|
||||||
|
<a class="editpost icon pencil" href="$item.edpost.0" title="$item.edpost.1"></a>
|
||||||
|
{{ endif }}
|
||||||
|
|
||||||
|
{{ if $item.star }}
|
||||||
|
<a href="#" id="starred-$item.id" onclick="dostar($item.id); return false;" class="star-item icon $item.isstarred" title="$item.star.toggle"></a>
|
||||||
|
<a href="#" id="tagger-$item.id" onclick="itemTag($item.id); return false;" class="tag-item icon tagged" title="$item.star.tagger"></a>
|
||||||
|
{{ endif }}
|
||||||
|
{{ if $item.filer }}
|
||||||
|
<a href="#" id="filer-$item.id" onclick="itemFiler($item.id); return false;" class="filer-item filer-icon" title="$item.filer"></a>
|
||||||
|
{{ endif }}
|
||||||
|
<div class="wall-item-delete-wrapper" id="wall-item-delete-wrapper-$item.id" >
|
||||||
|
{{ if $item.drop.dropping }}<a href="item/drop/$item.id" onclick="return confirmDelete();" class="icon drophide" title="$item.drop.delete" onmouseover="imgbright(this);" onmouseout="imgdull(this);" ></a>{{ endif }}
|
||||||
|
</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>
|
||||||
|
</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>
|
||||||
|
<div class="wall-item-comment-wrapper" >
|
||||||
|
$item.comment
|
||||||
|
</div>
|
||||||
|
<div class="wall-item-outside-wrapper-end$item.indent" ></div>
|
||||||
|
</div>
|
||||||
|
{{ for $item.children as $item }}
|
||||||
|
{{ inc $item.template }}{{ endinc }}
|
||||||
|
{{ endfor }}
|
||||||
|
</div>
|
Loading…
Reference in a new issue