]> git.mxchange.org Git - friendica.git/blob - mod/notes.php
Update functions and calls
[friendica.git] / mod / notes.php
1 <?php
2 /**
3  * @file mod/notes.php
4  */
5 use Friendica\App;
6 use Friendica\Content\Nav;
7 use Friendica\Database\DBM;
8 use Friendica\Model\Profile;
9
10 function notes_init(App $a) {
11
12         if (! local_user()) {
13                 return;
14         }
15
16         $profile = 0;
17
18         $which = $a->user['nickname'];
19
20         Nav::setSelected('home');
21
22         //Profile::load($a, $which, $profile);
23
24 }
25
26
27 function notes_content(App $a, $update = false) {
28
29         if (! local_user()) {
30                 notice( t('Permission denied.') . EOL);
31                 return;
32         }
33
34         require_once("include/bbcode.php");
35         require_once('include/security.php');
36         require_once('include/conversation.php');
37         require_once('include/acl_selectors.php');
38         $groups = array();
39
40
41         $o = '';
42
43         $remote_contact = false;
44
45         $contact_id = $_SESSION['cid'];
46         $contact = $a->contact;
47
48         $is_owner = true;
49
50         $o ="";
51         $o .= Profile::getTabs($a, true);
52
53         if(! $update) {
54                 $o .= '<h3>' . t('Personal Notes') . '</h3>';
55
56                 $commpage = false;
57                 $commvisitor = false;
58
59                 $x = array(
60                         'is_owner' => $is_owner,
61                         'allow_location' => (($a->user['allow_location']) ? true : false),
62                         'default_location' => $a->user['default-location'],
63                         'nickname' => $a->user['nickname'],
64                         'lockstate' => 'lock',
65                         'acl' => '',
66                         'bang' => '',
67                         'visitor' => 'block',
68                         'profile_uid' => local_user(),
69                         'button' => t('Save'),
70                         'acl_data' => '',
71                 );
72
73                 $o .= status_editor($a,$x,$a->contact['id']);
74
75         }
76
77         // Construct permissions
78
79         // default permissions - anonymous user
80
81         $sql_extra = " AND `item`.`allow_cid` = '<" . $a->contact['id'] . ">' ";
82
83         $r = q("SELECT COUNT(*) AS `total`
84                 FROM `item` %s
85                 WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
86                 AND `contact`.`self` AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
87                 $sql_extra ",
88                 item_joins(), item_condition(),
89                 intval(local_user())
90
91         );
92
93         if (DBM::is_result($r)) {
94                 $a->set_pager_total($r[0]['total']);
95                 $a->set_pager_itemspage(40);
96         }
97
98         $r = q("SELECT `item`.`id` AS `item_id` FROM `item` %s
99                 WHERE %s AND `item`.`uid` = %d AND `item`.`type` = 'note'
100                 AND `item`.`id` = `item`.`parent` AND NOT `item`.`wall`
101                 $sql_extra
102                 ORDER BY `item`.`created` DESC LIMIT %d ,%d ",
103                 item_joins(), item_condition(),
104                 intval(local_user()),
105                 intval($a->pager['start']),
106                 intval($a->pager['itemspage'])
107
108         );
109
110         $parents_arr = array();
111         $parents_str = '';
112
113         if (DBM::is_result($r)) {
114                 foreach($r as $rr)
115                         $parents_arr[] = $rr['item_id'];
116                 $parents_str = implode(', ', $parents_arr);
117
118                 $r = q("SELECT %s FROM `item` %s
119                         WHERE %s AND `item`.`uid` = %d AND `item`.`parent` IN (%s)
120                         $sql_extra
121                         ORDER BY `parent` DESC, `gravity` ASC, `item`.`id` ASC ",
122                         item_fieldlists(), item_joins(), item_condition(),
123                         intval(local_user()),
124                         dbesc($parents_str)
125                 );
126
127                 if (DBM::is_result($r)) {
128                         $items = conv_sort($r,"`commented`");
129
130                         $o .= conversation($a,$items,'notes',$update);
131                 }
132         }
133
134
135         $o .= paginate($a);
136         return $o;
137 }