-
Notifications
You must be signed in to change notification settings - Fork 0
/
post.php
148 lines (136 loc) · 4.09 KB
/
post.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<?php
/**
* @package Joomla.Platform
* @subpackage Facebook
*
* @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
defined('JPATH_PLATFORM') or die();
/**
* Facebook API Post class for the Joomla Platform.
*
* @package Joomla.Platform
* @subpackage Facebook
*
* @see http://developers.facebook.com/docs/reference/api/post/
* @since 13.1
*/
class JFacebookPost extends JFacebookObject
{
/**
* Method to get a post. Requires authentication and read_stream permission for all data.
*
* @param string $post The post id.
*
* @return mixed The decoded JSON response or false if the client is not authenticated.
*
* @since 13.1
*/
public function getPost($post)
{
return $this->get($post);
}
/**
* Method to delete a post if it was created by this application. Requires authentication and publish_stream permission
*
* @param string $post The post id.
*
* @return boolean Returns true if successful, and false otherwise.
*
* @since 13.1
*/
public function deletePost($post)
{
return $this->deleteConnection($post);
}
/**
* Method to get a post's comments. Requires authentication and read_stream permission.
*
* @param string $post The post id.
* @param integer $limit The number of objects per page.
* @param integer $offset The object's number on the page.
* @param string $until A unix timestamp or any date accepted by strtotime.
* @param string $since A unix timestamp or any date accepted by strtotime.
*
* @return mixed The decoded JSON response or false if the client is not authenticated.
*
* @since 13.1
*/
public function getComments($post, $limit = 0, $offset = 0, $until = null, $since = null)
{
return $this->getConnection($post, 'comments', '', $limit, $offset, $until, $since);
}
/**
* Method to comment on a post. Requires authentication and publish_stream permission
*
* @param string $post The post id.
* @param string $message The comment's text.
*
* @return mixed The decoded JSON response or false if the client is not authenticated.
*
* @since 13.1
*/
public function createComment($post, $message)
{
// Set POST request parameters.
$data['message'] = $message;
return $this->createConnection($post, 'comments', $data);
}
/**
* Method to delete a comment. Requires authentication and publish_stream permission
*
* @param string $comment The comment's id.
*
* @return boolean Returns true if successful, and false otherwise.
*
* @since 13.1
*/
public function deleteComment($comment)
{
return $this->deleteConnection($comment);
}
/**
* Method to get post's likes. Requires authentication and read_stream permission.
*
* @param string $post The post id.
* @param integer $limit The number of objects per page.
* @param integer $offset The object's number on the page.
* @param string $until A unix timestamp or any date accepted by strtotime.
* @param string $since A unix timestamp or any date accepted by strtotime.
*
* @return mixed The decoded JSON response or false if the client is not authenticated.
*
* @since 13.1
*/
public function getLikes($post, $limit = 0, $offset = 0, $until = null, $since = null)
{
return $this->getConnection($post, 'likes', '', $limit, $offset, $until, $since);
}
/**
* Method to like a post. Requires authentication and publish_stream permission
*
* @param string $post The post id.
*
* @return boolean Returns true if successful, and false otherwise.
*
* @since 13.1
*/
public function createLike($post)
{
return $this->createConnection($post, 'likes');
}
/**
* Method to unlike a post. Requires authentication and publish_stream permission
*
* @param string $post The post id.
*
* @return boolean Returns true if successful, and false otherwise.
*
* @since 13.1
*/
public function deleteLike($post)
{
return $this->deleteConnection($post, 'likes');
}
}