aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-11-28 18:45:11 -0800
committerfriendica <info@friendica.com>2012-11-28 18:45:11 -0800
commit05e08cb5d2967a12c479ab94187b1ef1bde0a094 (patch)
tree0b70e60b33da3985c5752d7caf0147f471408b91
parent7c047bea332efaa11af0d02878d91823c4bba1ad (diff)
downloadvolse-hubzilla-05e08cb5d2967a12c479ab94187b1ef1bde0a094.tar.gz
volse-hubzilla-05e08cb5d2967a12c479ab94187b1ef1bde0a094.tar.bz2
volse-hubzilla-05e08cb5d2967a12c479ab94187b1ef1bde0a094.zip
trace through the threaded conversation spaghetti to bring back a sane looking network page
-rw-r--r--include/ItemObject.php3
-rw-r--r--include/conversation.php27
-rw-r--r--js/main.js6
-rw-r--r--version.inc2
-rw-r--r--view/tpl/conv_item.tpl14
-rw-r--r--view/tpl/convobj.tpl4
6 files changed, 38 insertions, 18 deletions
diff --git a/include/ItemObject.php b/include/ItemObject.php
index b91145906..6767acd73 100644
--- a/include/ItemObject.php
+++ b/include/ItemObject.php
@@ -51,6 +51,7 @@ class Item extends BaseObject {
// FIXME - base this on observer permissions
$this->writable = ((local_user() && $channel['channel_hash'] === $item['owner_xchan']) ? true : false);
+
$ssl_state = ((local_user()) ? true : false);
$this->redirect_url = $a->get_baseurl($ssl_state) . '/redir/' . $this->get_data_value('cid') ;
@@ -474,6 +475,8 @@ class Item extends BaseObject {
private function is_writable() {
$conv = $this->get_conversation();
+ return true;
+
if($conv) {
// This will allow us to comment on wall-to-wall items owned by our friends
// and community forums even if somebody else wrote the post.
diff --git a/include/conversation.php b/include/conversation.php
index 07ecf7207..ab2d15b1e 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -660,7 +660,6 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr
'thread_level' => $thread_level,
);
- logger('tmp_item: ' . print_r($tmp_item,true));
$arr = array('item' => $item, 'output' => $tmp_item);
call_hooks('display_item', $arr);
@@ -803,6 +802,10 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
$page_dropping = ((local_user() && local_user() == $profile_owner) ? true : false);
+ if(! feature_enabled($profile_owner,'multi_delete'))
+ $page_dropping = false;
+
+
$channel = $a->get_channel();
$observer = $a->get_observer();
@@ -950,7 +953,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
'tags' => template_escape($tags),
'hashtags' => template_escape($hashtags),
'mentions' => template_escape($mentions),
- 'txt_cats' => t('Categories:'),
+ 'txt_cats' => t('Categories:'),
'txt_folders' => t('Filed under:'),
'has_cats' => ((count($categories)) ? 'true' : ''),
'has_folders' => ((count($folders)) ? 'true' : ''),
@@ -995,8 +998,6 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
{
// Normal View
- $page_template = get_markup_template("threaded_conversation.tpl");
-
require_once('include/ConversationObject.php');
require_once('include/ItemObject.php');
@@ -1023,8 +1024,13 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
continue;
}
+
+
+
$item['pagedrop'] = $page_dropping;
+
+
if($item['id'] == $item['parent']) {
$item_object = new Item($item);
$conv->add_thread($item_object);
@@ -1036,9 +1042,22 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
logger('[ERROR] conversation : Failed to get template data.', LOGGER_DEBUG);
$threads = array();
}
+
}
}
+
+ if($page_mode === 'traditional' || $page_mode === 'preview') {
+ $page_template = get_markup_template("threaded_conversation.tpl");
+ }
+ elseif($update) {
+ $page_template = get_markup_template("convobj.tpl");
+ }
+ else {
+ $page_template = get_markup_template("conv_frame.tpl");
+ $threads = null;
+ }
+
$o = replace_macros($page_template, array(
'$baseurl' => $a->get_baseurl($ssl_state),
'$live_update' => $live_update_div,
diff --git a/js/main.js b/js/main.js
index 1cc76c744..bb7e469a6 100644
--- a/js/main.js
+++ b/js/main.js
@@ -302,7 +302,7 @@ function updateConvItems(mode,data) {
if(mode === 'update') {
prev = 'threads-begin';
- $('.thread-wrapper',data).each(function() {
+ $('.thread-wrapper.toplevel_item',data).each(function() {
var ident = $(this).attr('id');
if($('#' + ident).length == 0 && profile_page == 1) {
@@ -331,7 +331,7 @@ function updateConvItems(mode,data) {
}
if(mode === 'append') {
next = 'threads-end';
- $('.thread-wrapper',data).each(function() {
+ $('.thread-wrapper.toplevel_item',data).each(function() {
var ident = $(this).attr('id');
if($('#' + ident).length == 0) {
@@ -359,7 +359,7 @@ function updateConvItems(mode,data) {
prev = 'threads-begin';
- $('.thread-wrapper',data).each(function() {
+ $('.thread-wrapper.toplevel_item',data).each(function() {
var ident = $(this).attr('id');
if($('#' + ident).length == 0 && profile_page == 1) {
diff --git a/version.inc b/version.inc
index c1d3aa69b..25a373fac 100644
--- a/version.inc
+++ b/version.inc
@@ -1 +1 @@
-2012-11-27.152
+2012-11-28.153
diff --git a/view/tpl/conv_item.tpl b/view/tpl/conv_item.tpl
index a5a3c4958..1c35feaad 100644
--- a/view/tpl/conv_item.tpl
+++ b/view/tpl/conv_item.tpl
@@ -98,24 +98,18 @@
<div class="wall-item-like $item.indent" id="wall-item-like-$item.id">$item.showlike</div>
<div class="wall-item-dislike $item.indent" id="wall-item-dislike-$item.id">$item.showdislike</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>
+{{ if $item.toplevel }}
{{ for $item.children as $item }}
{{ inc $item.template }}{{ endinc }}
{{ endfor }}
+{{ endif }}
-{{ if $item.flatten }}
<div class="wall-item-comment-wrapper" >
$item.comment
</div>
-{{ endif }}
+
+
</div>
{{if $item.comment_lastcollapsed}}</div>{{endif}}
diff --git a/view/tpl/convobj.tpl b/view/tpl/convobj.tpl
new file mode 100644
index 000000000..a35e232e2
--- /dev/null
+++ b/view/tpl/convobj.tpl
@@ -0,0 +1,4 @@
+{{ for $threads as $item }}
+{{ inc $item.template }}{{ endinc }}
+{{ endfor }}
+