X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fnotes.php;h=f83195ff1ccdb1e1a16f75375d8df20bd1b27ad9;hb=c17adaf3333b356d0c7b19226b29cd733a43017b;hp=3b46df07da000ba02c2b4c1c35d1547fcc8981c1;hpb=29f7ebe307c22b275466390937b82ccb3820fb1c;p=friendica.git diff --git a/mod/notes.php b/mod/notes.php index 3b46df07da..f83195ff1c 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -2,10 +2,13 @@ /** * @file mod/notes.php */ + use Friendica\App; use Friendica\Content\Nav; use Friendica\Core\L10n; +use Friendica\Database\DBA; use Friendica\Database\DBM; +use Friendica\Model\Item; use Friendica\Model\Profile; function notes_init(App $a) @@ -26,37 +29,21 @@ function notes_init(App $a) function notes_content(App $a, $update = false) { - if (! local_user()) { + if (!local_user()) { notice(L10n::t('Permission denied.') . EOL); return; } require_once 'include/security.php'; require_once 'include/conversation.php'; - require_once 'include/acl_selectors.php'; - $groups = []; - - - $o = ''; - - $remote_contact = false; - - $contact_id = $_SESSION['cid']; - $contact = $a->contact; - - $is_owner = true; - $o =""; - $o .= Profile::getTabs($a, true); + $o = Profile::getTabs($a, true); if (!$update) { $o .= '

' . L10n::t('Personal Notes') . '

'; - $commpage = false; - $commvisitor = false; - $x = [ - 'is_owner' => $is_owner, + 'is_owner' => true, 'allow_location' => (($a->user['allow_location']) ? true : false), 'default_location' => $a->user['default-location'], 'nickname' => $a->user['nickname'], @@ -72,67 +59,31 @@ function notes_content(App $a, $update = false) $o .= status_editor($a, $x, $a->contact['id']); } - // Construct permissions - - // default permissions - anonymous user + $condition = ['uid' => local_user(), 'post-type' => Item::PT_PERSONAL_NOTE, 'gravity' => GRAVITY_PARENT, + 'wall' => false, 'allow_cid' => '<' . $a->contact['id'] . '>', 'contact-id'=> $a->contact['id']]; - $sql_extra = " AND `item`.`allow_cid` = '<" . $a->contact['id'] . ">' "; + $a->set_pager_itemspage(40); - $r = q("SELECT COUNT(*) AS `total` - FROM `item` %s - WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note' - AND `contact`.`self` AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall` - $sql_extra ", - item_joins(), - item_condition(), - intval(local_user()) - ); + $params = ['order' => ['created' => true], + 'limit' => [$a->pager['start'], $a->pager['itemspage']]]; + $r = Item::selectForUser(local_user(), ['id'], $condition, $params); if (DBM::is_result($r)) { - $a->set_pager_total($r[0]['total']); - $a->set_pager_itemspage(40); - } - - $r = q("SELECT `item`.`id` AS `item_id` FROM `item` %s - WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note' - AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall` - $sql_extra - ORDER BY `item`.`created` DESC LIMIT %d ,%d ", - item_joins(), - item_condition(), - intval(local_user()), - intval($a->pager['start']), - intval($a->pager['itemspage']) + $parents_arr = []; - ); - - $parents_arr = []; - $parents_str = ''; - - if (DBM::is_result($r)) { - foreach ($r as $rr) { - $parents_arr[] = $rr['item_id']; + while ($rr = Item::fetch($r)) { + $parents_arr[] = $rr['id']; } - $parents_str = implode(', ', $parents_arr); - - $r = q("SELECT %s FROM `item` %s - WHERE %s AND `item`.`uid` = %d AND `item`.`parent` IN (%s) - $sql_extra - ORDER BY `parent` DESC, `gravity` ASC, `item`.`id` ASC ", - item_fieldlists(), - item_joins(), - item_condition(), - intval(local_user()), - dbesc($parents_str) - ); - - if (DBM::is_result($r)) { - $items = conv_sort($r, "`commented`"); + DBA::close($r); + $condition = ['uid' => local_user(), 'parent' => $parents_arr]; + $result = Item::selectForUser(local_user(), [], $condition); + if (DBM::is_result($result)) { + $items = conv_sort(Item::inArray($result), 'commented'); $o .= conversation($a, $items, 'notes', $update); } } - $o .= paginate($a); + $o .= alt_pager($a, count($r)); return $o; }