X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fnotes.php;h=39649d81f64a80bd025ade8f8d05d044f15861a6;hb=037e181f82a84718d1719db4777cb58429734c47;hp=96a28260893ea67651825bcd251b829224921c9b;hpb=71ab86d0c31a81e989d83e0eb68e656783214c03;p=friendica.git diff --git a/mod/notes.php b/mod/notes.php index 96a2826089..39649d81f6 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -1,137 +1,93 @@ . + * */ + use Friendica\App; use Friendica\Content\Nav; -use Friendica\Core\L10n; -use Friendica\Database\DBM; -use Friendica\Model\Profile; +use Friendica\Content\Pager; +use Friendica\Database\DBA; +use Friendica\DI; +use Friendica\Model\Item; +use Friendica\Model\Post; +use Friendica\Module\BaseProfile; function notes_init(App $a) { - if (! local_user()) { + if (! DI::userSession()->getLocalUserId()) { return; } - $profile = 0; - - $which = $a->user['nickname']; - Nav::setSelected('home'); - - //Profile::load($a, $which, $profile); } -function notes_content(App $a, $update = false) +function notes_content(App $a, bool $update = false) { - if (! local_user()) { - notice(L10n::t('Permission denied.') . EOL); + if (!DI::userSession()->getLocalUserId()) { + DI::sysmsg()->addNotice(DI::l10n()->t('Permission denied.')); return; } - require_once 'include/security.php'; - require_once 'include/conversation.php'; - $groups = []; - - - $o = ''; - - $remote_contact = false; - - $contact_id = $_SESSION['cid']; - $contact = $a->contact; - - $is_owner = true; - - $o =""; - $o .= Profile::getTabs($a, true); + $o = BaseProfile::getTabsHTML($a, 'notes', true, $a->getLoggedInUserNickname(), false); if (!$update) { - $o .= '

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

'; - - $commpage = false; - $commvisitor = false; + $o .= '

' . DI::l10n()->t('Personal Notes') . '

'; $x = [ - 'is_owner' => $is_owner, - 'allow_location' => (($a->user['allow_location']) ? true : false), - 'default_location' => $a->user['default-location'], - 'nickname' => $a->user['nickname'], 'lockstate' => 'lock', - 'acl' => '', - 'bang' => '', - 'visitor' => 'block', - 'profile_uid' => local_user(), - 'button' => L10n::t('Save'), + 'acl' => \Friendica\Core\ACL::getSelfOnlyHTML(DI::userSession()->getLocalUserId(), DI::l10n()->t('Personal notes are visible only by yourself.')), + 'button' => DI::l10n()->t('Save'), 'acl_data' => '', ]; - $o .= status_editor($a, $x, $a->contact['id']); + $o .= DI::conversation()->statusEditor($x, $a->getContactId()); + } + + $condition = ['uid' => DI::userSession()->getLocalUserId(), 'post-type' => Item::PT_PERSONAL_NOTE, 'gravity' => Item::GRAVITY_PARENT, + 'contact-id'=> $a->getContactId()]; + + if (DI::mode()->isMobile()) { + $itemsPerPage = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'system', 'itemspage_mobile_network', + DI::config()->get('system', 'itemspage_network_mobile')); + } else { + $itemsPerPage = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'system', 'itemspage_network', + DI::config()->get('system', 'itemspage_network')); } - // Construct permissions + $pager = new Pager(DI::l10n(), DI::args()->getQueryString(), $itemsPerPage); - // default permissions - anonymous user + $params = ['order' => ['created' => true], + 'limit' => [$pager->getStart(), $pager->getItemsPerPage()]]; + $r = Post::selectThreadForUser(DI::userSession()->getLocalUserId(), ['uri-id'], $condition, $params); - $sql_extra = " AND `item`.`allow_cid` = '<" . $a->contact['id'] . ">' "; + $count = 0; - $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(local_user()), - item_condition(), - intval(local_user()) - ); + if (DBA::isResult($r)) { + $notes = Post::toArray($r); - if (DBM::is_result($r)) { - $a->set_pager_total($r[0]['total']); - $a->set_pager_itemspage(40); - } + $count = count($notes); - $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(local_user()), - item_condition(), - intval(local_user()), - intval($a->pager['start']), - intval($a->pager['itemspage']) - - ); - - $parents_arr = []; - $parents_str = ''; - - if (DBM::is_result($r)) { - foreach ($r as $rr) { - $parents_arr[] = $rr['item_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(local_user()), - item_condition(), - intval(local_user()), - dbesc($parents_str) - ); - - if (DBM::is_result($r)) { - $items = conv_sort($r, "`commented`"); - - $o .= conversation($a, $items, 'notes', $update); - } + $o .= DI::conversation()->create($notes, 'notes', $update); } - $o .= paginate($a); + $o .= $pager->renderMinimal($count); + return $o; }