X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fnotes.php;h=b5bdbf870f8c2031031620c57a792c9eedb354ec;hb=7ce97459d437a98ece0077b28bb36771aa36ed82;hp=c02f0a759e298e2dd37cf5cb3808d4449a4e408a;hpb=0f546f7f0f8b41bd7510bd3644419c002746ce34;p=friendica.git diff --git a/mod/notes.php b/mod/notes.php index c02f0a759e..b5bdbf870f 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -1,137 +1,93 @@ . + * */ + use Friendica\App; use Friendica\Content\Nav; -use Friendica\Database\DBM; -use Friendica\Model\Profile; - -function notes_init(App $a) { - +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()) { return; } - $profile = 0; - - $which = $a->user['nickname']; - Nav::setSelected('home'); - - //Profile::load($a, $which, $profile); - } -function notes_content(App $a, $update = false) { - - if (! local_user()) { - notice( t('Permission denied.') . EOL); +function notes_content(App $a, $update = false) +{ + if (!local_user()) { + notice(DI::l10n()->t('Permission denied.')); return; } - require_once("include/bbcode.php"); - require_once('include/security.php'); - require_once('include/conversation.php'); - require_once('include/acl_selectors.php'); - $groups = []; - + $o = BaseProfile::getTabsHTML($a, 'notes', true, $a->getLoggedInUserNickname(), false); - $o = ''; - - $remote_contact = false; - - $contact_id = $_SESSION['cid']; - $contact = $a->contact; - - $is_owner = true; - - $o =""; - $o .= Profile::getTabs($a, true); - - if(! $update) { - $o .= '

' . t('Personal Notes') . '

'; - - $commpage = false; - $commvisitor = false; + if (!$update) { + $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' => t('Save'), + 'acl' => \Friendica\Core\ACL::getSelfOnlyHTML(local_user(), 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()); } - // Construct permissions + $condition = ['uid' => local_user(), 'post-type' => Item::PT_PERSONAL_NOTE, 'gravity' => GRAVITY_PARENT, + 'contact-id'=> $a->getContactId()]; - // default permissions - anonymous user + if (DI::mode()->isMobile()) { + $itemsPerPage = DI::pConfig()->get(local_user(), 'system', 'itemspage_mobile_network', + DI::config()->get('system', 'itemspage_network_mobile')); + } else { + $itemsPerPage = DI::pConfig()->get(local_user(), 'system', 'itemspage_network', + DI::config()->get('system', 'itemspage_network')); + } - $sql_extra = " AND `item`.`allow_cid` = '<" . $a->contact['id'] . ">' "; + $pager = new Pager(DI::l10n(), DI::args()->getQueryString(), $itemsPerPage); - $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' => [$pager->getStart(), $pager->getItemsPerPage()]]; + $r = Post::selectThreadForUser(local_user(), ['uri-id'], $condition, $params); - ); + $count = 0; - if (DBM::is_result($r)) { - $a->set_pager_total($r[0]['total']); - $a->set_pager_itemspage(40); - } + if (DBA::isResult($r)) { + $notes = Post::toArray($r); + + $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(), 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(), 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 .= $pager->renderMinimal($count); - $o .= paginate($a); return $o; }