@@ -35,7 +35,7 @@ discard block |
||
35 | 35 | // LC_MESSAGES is not available if php-gettext is not loaded |
36 | 36 | // while the other constants are already available from session extension. |
37 | 37 | if (!defined('LC_MESSAGES')) { |
38 | - define('LC_MESSAGES', 5); |
|
38 | + define('LC_MESSAGES', 5); |
|
39 | 39 | } |
40 | 40 | |
41 | 41 | require('streams.php'); |
@@ -77,7 +77,7 @@ discard block |
||
77 | 77 | if (preg_match("/^(?P<lang>[a-z]{2,3})" // language code |
78 | 78 | ."(?:_(?P<country>[A-Z]{2}))?" // country code |
79 | 79 | ."(?:\.(?P<charset>[-A-Za-z0-9_]+))?" // charset |
80 | - ."(?:@(?P<modifier>[-A-Za-z0-9_]+))?$/", // @ modifier |
|
80 | + ."(?:@(?P<modifier>[-A-Za-z0-9_]+))?$/", // @ modifier |
|
81 | 81 | $locale, $matches)) { |
82 | 82 | |
83 | 83 | if (isset($matches["lang"])) $lang = $matches["lang"]; |
@@ -113,7 +113,7 @@ discard block |
||
113 | 113 | /** |
114 | 114 | * Utility function to get a StreamReader for the given text domain. |
115 | 115 | */ |
116 | -function _get_reader($domain=null, $category=5, $enable_cache=true) { |
|
116 | +function _get_reader($domain = null, $category = 5, $enable_cache = true) { |
|
117 | 117 | global $text_domains, $default_domain, $LC_CATEGORIES; |
118 | 118 | if (!isset($domain)) $domain = $default_domain; |
119 | 119 | if (!isset($text_domains[$domain]->l10n)) { |
@@ -121,12 +121,12 @@ discard block |
||
121 | 121 | $locale = _setlocale(LC_MESSAGES, 0); |
122 | 122 | $bound_path = isset($text_domains[$domain]->path) ? |
123 | 123 | $text_domains[$domain]->path : './'; |
124 | - $subpath = $LC_CATEGORIES[$category] ."/$domain.mo"; |
|
124 | + $subpath = $LC_CATEGORIES[$category]."/$domain.mo"; |
|
125 | 125 | |
126 | 126 | $locale_names = get_list_of_locales($locale); |
127 | 127 | $input = null; |
128 | 128 | foreach ($locale_names as $locale) { |
129 | - $full_path = $bound_path . $locale . "/" . $subpath; |
|
129 | + $full_path = $bound_path.$locale."/".$subpath; |
|
130 | 130 | if (file_exists($full_path)) { |
131 | 131 | $input = new FileReader($full_path); |
132 | 132 | break; |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | /** |
155 | 155 | * Checks if the current locale is supported on this system. |
156 | 156 | */ |
157 | -function _check_locale_and_function($function=false) { |
|
157 | +function _check_locale_and_function($function = false) { |
|
158 | 158 | global $EMULATEGETTEXT; |
159 | 159 | if ($function and !function_exists($function)) |
160 | 160 | return false; |
@@ -164,10 +164,10 @@ discard block |
||
164 | 164 | /** |
165 | 165 | * Get the codeset for the given domain. |
166 | 166 | */ |
167 | -function _get_codeset($domain=null) { |
|
167 | +function _get_codeset($domain = null) { |
|
168 | 168 | global $text_domains, $default_domain, $LC_CATEGORIES; |
169 | 169 | if (!isset($domain)) $domain = $default_domain; |
170 | - return (isset($text_domains[$domain]->codeset))? $text_domains[$domain]->codeset : ini_get('mbstring.internal_encoding'); |
|
170 | + return (isset($text_domains[$domain]->codeset)) ? $text_domains[$domain]->codeset : ini_get('mbstring.internal_encoding'); |
|
171 | 171 | } |
172 | 172 | |
173 | 173 | /** |
@@ -241,10 +241,10 @@ discard block |
||
241 | 241 | global $text_domains; |
242 | 242 | // ensure $path ends with a slash ('/' should work for both, but lets still play nice) |
243 | 243 | if (substr(php_uname(), 0, 7) == "Windows") { |
244 | - if ($path[strlen($path)-1] != '\\' and $path[strlen($path)-1] != '/') |
|
244 | + if ($path[strlen($path) - 1] != '\\' and $path[strlen($path) - 1] != '/') |
|
245 | 245 | $path .= '\\'; |
246 | 246 | } else { |
247 | - if ($path[strlen($path)-1] != '/') |
|
247 | + if ($path[strlen($path) - 1] != '/') |
|
248 | 248 | $path .= '/'; |
249 | 249 | } |
250 | 250 | if (!array_key_exists($domain, $text_domains)) { |
@@ -49,7 +49,7 @@ discard block |
||
49 | 49 | var $_pos; |
50 | 50 | var $_str; |
51 | 51 | |
52 | - function StringReader($str='') { |
|
52 | + function StringReader($str = '') { |
|
53 | 53 | $this->_str = $str; |
54 | 54 | $this->_pos = 0; |
55 | 55 | } |
@@ -57,7 +57,7 @@ discard block |
||
57 | 57 | function read($bytes) { |
58 | 58 | $data = substr($this->_str, $this->_pos, $bytes); |
59 | 59 | $this->_pos += $bytes; |
60 | - if (strlen($this->_str)<$this->_pos) |
|
60 | + if (strlen($this->_str) < $this->_pos) |
|
61 | 61 | $this->_pos = strlen($this->_str); |
62 | 62 | |
63 | 63 | return $data; |
@@ -65,7 +65,7 @@ discard block |
||
65 | 65 | |
66 | 66 | function seekto($pos) { |
67 | 67 | $this->_pos = $pos; |
68 | - if (strlen($this->_str)<$this->_pos) |
|
68 | + if (strlen($this->_str) < $this->_pos) |
|
69 | 69 | $this->_pos = strlen($this->_str); |
70 | 70 | return $this->_pos; |
71 | 71 | } |
@@ -89,9 +89,9 @@ discard block |
||
89 | 89 | function FileReader($filename) { |
90 | 90 | if (file_exists($filename)) { |
91 | 91 | |
92 | - $this->_length=filesize($filename); |
|
92 | + $this->_length = filesize($filename); |
|
93 | 93 | $this->_pos = 0; |
94 | - $this->_fd = fopen($filename,'rb'); |
|
94 | + $this->_fd = fopen($filename, 'rb'); |
|
95 | 95 | if (!$this->_fd) { |
96 | 96 | $this->error = 3; // Cannot read file, probably permissions |
97 | 97 | return false; |
@@ -146,8 +146,8 @@ discard block |
||
146 | 146 | function CachedFileReader($filename) { |
147 | 147 | if (file_exists($filename)) { |
148 | 148 | |
149 | - $length=filesize($filename); |
|
150 | - $fd = fopen($filename,'rb'); |
|
149 | + $length = filesize($filename); |
|
150 | + $fd = fopen($filename, 'rb'); |
|
151 | 151 | |
152 | 152 | if (!$fd) { |
153 | 153 | $this->error = 3; // Cannot read file, probably permissions |
@@ -12,11 +12,11 @@ |
||
12 | 12 | // we need a separate check here because functions.php might get parsed |
13 | 13 | // incorrectly before 5.3 because of :: syntax. |
14 | 14 | if (version_compare(PHP_VERSION, '5.6.0', '<')) { |
15 | - print "<b>Fatal Error</b>: PHP version 5.6.0 or newer required. You're using " . PHP_VERSION . ".\n"; |
|
15 | + print "<b>Fatal Error</b>: PHP version 5.6.0 or newer required. You're using ".PHP_VERSION.".\n"; |
|
16 | 16 | exit; |
17 | 17 | } |
18 | 18 | |
19 | - set_include_path(dirname(__FILE__) ."/include" . PATH_SEPARATOR . |
|
19 | + set_include_path(dirname(__FILE__)."/include".PATH_SEPARATOR. |
|
20 | 20 | get_include_path()); |
21 | 21 | |
22 | 22 | require_once "autoload.php"; |
@@ -6,10 +6,10 @@ |
||
6 | 6 | |
7 | 7 | $ERRORS[0] = ""; |
8 | 8 | |
9 | -$ERRORS[1] = __("This program requires XmlHttpRequest " . |
|
9 | +$ERRORS[1] = __("This program requires XmlHttpRequest ". |
|
10 | 10 | "to function properly. Your browser doesn't seem to support it."); |
11 | 11 | |
12 | -$ERRORS[2] = __("This program requires cookies " . |
|
12 | +$ERRORS[2] = __("This program requires cookies ". |
|
13 | 13 | "to function properly. Your browser doesn't seem to support them."); |
14 | 14 | |
15 | 15 | $ERRORS[3] = __("Backend sanity check failed."); |
@@ -237,7 +237,7 @@ discard block |
||
237 | 237 | $new_feed_id = $row['id']; |
238 | 238 | } else { |
239 | 239 | $row = $this->pdo->query("SELECT MAX(id) AS id FROM ttrss_archived_feeds")->fetch(); |
240 | - $new_feed_id = (int)$row['id'] + 1; |
|
240 | + $new_feed_id = (int) $row['id'] + 1; |
|
241 | 241 | |
242 | 242 | $sth = $this->pdo->prepare("INSERT INTO ttrss_archived_feeds |
243 | 243 | (id, owner_uid, title, feed_url, site_url, created) |
@@ -287,7 +287,7 @@ discard block |
||
287 | 287 | /* GET["cmode"] = 0 - mark as read, 1 - as unread, 2 - toggle */ |
288 | 288 | public function catchupSelected() { |
289 | 289 | $ids = explode(",", clean($_REQUEST["ids"])); |
290 | - $cmode = (int)clean($_REQUEST["cmode"]); |
|
290 | + $cmode = (int) clean($_REQUEST["cmode"]); |
|
291 | 291 | |
292 | 292 | Article::catchupArticlesById($ids, $cmode); |
293 | 293 | |
@@ -296,7 +296,7 @@ discard block |
||
296 | 296 | |
297 | 297 | public function markSelected() { |
298 | 298 | $ids = explode(",", clean($_REQUEST["ids"])); |
299 | - $cmode = (int)clean($_REQUEST["cmode"]); |
|
299 | + $cmode = (int) clean($_REQUEST["cmode"]); |
|
300 | 300 | |
301 | 301 | $this->markArticlesById($ids, $cmode); |
302 | 302 | |
@@ -305,7 +305,7 @@ discard block |
||
305 | 305 | |
306 | 306 | public function publishSelected() { |
307 | 307 | $ids = explode(",", clean($_REQUEST["ids"])); |
308 | - $cmode = (int)clean($_REQUEST["cmode"]); |
|
308 | + $cmode = (int) clean($_REQUEST["cmode"]); |
|
309 | 309 | |
310 | 310 | $this->publishArticlesById($ids, $cmode); |
311 | 311 | |
@@ -342,7 +342,7 @@ discard block |
||
342 | 342 | |
343 | 343 | print "<ul>"; |
344 | 344 | while ($line = $sth->fetch()) { |
345 | - print "<li>" . $line["caption"] . "</li>"; |
|
345 | + print "<li>".$line["caption"]."</li>"; |
|
346 | 346 | } |
347 | 347 | print "</ul>"; |
348 | 348 | } |
@@ -578,7 +578,7 @@ discard block |
||
578 | 578 | |
579 | 579 | if ($msg) { |
580 | 580 | Logger::get()->log_error(E_USER_WARNING, |
581 | - $msg, 'client-js:' . $file, $line, $context); |
|
581 | + $msg, 'client-js:'.$file, $line, $context); |
|
582 | 582 | |
583 | 583 | echo json_encode(array("message" => "HOST_ERROR_LOGGED")); |
584 | 584 | } else { |
@@ -602,7 +602,7 @@ discard block |
||
602 | 602 | $content = json_decode($content, true); |
603 | 603 | |
604 | 604 | if ($content && isset($content["changeset"])) { |
605 | - if ($git_timestamp < (int)$content["changeset"]["timestamp"] && |
|
605 | + if ($git_timestamp < (int) $content["changeset"]["timestamp"] && |
|
606 | 606 | $git_commit != $content["changeset"]["id"]) { |
607 | 607 | |
608 | 608 | $rv = $content["changeset"]; |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | public static function create_published_article($title, $url, $content, $labels_str, |
31 | 31 | $owner_uid) { |
32 | 32 | |
33 | - $guid = 'SHA1:' . sha1("ttshared:" . $url . $owner_uid); // include owner_uid to prevent global GUID clash |
|
33 | + $guid = 'SHA1:'.sha1("ttshared:".$url.$owner_uid); // include owner_uid to prevent global GUID clash |
|
34 | 34 | |
35 | 35 | if (!$content) { |
36 | 36 | $pluginhost = new PluginHost(); |
@@ -85,12 +85,12 @@ discard block |
||
85 | 85 | content = ?, content_hash = ? WHERE id = ?"); |
86 | 86 | $sth->execute([$content, $content_hash, $ref_id]); |
87 | 87 | |
88 | - if (DB_TYPE == "pgsql"){ |
|
88 | + if (DB_TYPE == "pgsql") { |
|
89 | 89 | $sth = $pdo->prepare("UPDATE ttrss_entries |
90 | 90 | SET tsvector_combined = to_tsvector( :ts_content) |
91 | 91 | WHERE id = :id"); |
92 | 92 | $params = [ |
93 | - ":ts_content" => mb_substr(strip_tags($content ), 0, 900000), |
|
93 | + ":ts_content" => mb_substr(strip_tags($content), 0, 900000), |
|
94 | 94 | ":id" => $ref_id]; |
95 | 95 | $sth->execute($params); |
96 | 96 | } |
@@ -130,12 +130,12 @@ discard block |
||
130 | 130 | |
131 | 131 | if ($row = $sth->fetch()) { |
132 | 132 | $ref_id = $row["id"]; |
133 | - if (DB_TYPE == "pgsql"){ |
|
133 | + if (DB_TYPE == "pgsql") { |
|
134 | 134 | $sth = $pdo->prepare("UPDATE ttrss_entries |
135 | 135 | SET tsvector_combined = to_tsvector( :ts_content) |
136 | 136 | WHERE id = :id"); |
137 | 137 | $params = [ |
138 | - ":ts_content" => mb_substr(strip_tags($content ), 0, 900000), |
|
138 | + ":ts_content" => mb_substr(strip_tags($content), 0, 900000), |
|
139 | 139 | ":id" => $ref_id]; |
140 | 140 | $sth->execute($params); |
141 | 141 | } |
@@ -173,7 +173,7 @@ discard block |
||
173 | 173 | print_hidden("op", "article"); |
174 | 174 | print_hidden("method", "setArticleTags"); |
175 | 175 | |
176 | - print "<header class='horizontal'>" . __("Tags for this article (separated by commas):")."</header>"; |
|
176 | + print "<header class='horizontal'>".__("Tags for this article (separated by commas):")."</header>"; |
|
177 | 177 | |
178 | 178 | print "<section>"; |
179 | 179 | print "<textarea dojoType='dijit.form.SimpleTextarea' rows='4' |
@@ -194,7 +194,7 @@ discard block |
||
194 | 194 | |
195 | 195 | public function setScore() { |
196 | 196 | $ids = explode(",", clean($_REQUEST['id'])); |
197 | - $score = (int)clean($_REQUEST['score']); |
|
197 | + $score = (int) clean($_REQUEST['score']); |
|
198 | 198 | |
199 | 199 | $ids_qmarks = arr_qmarks($ids); |
200 | 200 | |
@@ -203,7 +203,7 @@ discard block |
||
203 | 203 | |
204 | 204 | $sth->execute(array_merge([$score], $ids, [$_SESSION['uid']])); |
205 | 205 | |
206 | - print json_encode(["id" => $ids, "score" => (int)$score]); |
|
206 | + print json_encode(["id" => $ids, "score" => (int) $score]); |
|
207 | 207 | } |
208 | 208 | |
209 | 209 | public function getScore() { |
@@ -215,7 +215,7 @@ discard block |
||
215 | 215 | |
216 | 216 | $score = $row['score']; |
217 | 217 | |
218 | - print json_encode(["id" => $id, "score" => (int)$score]); |
|
218 | + print json_encode(["id" => $id, "score" => (int) $score]); |
|
219 | 219 | } |
220 | 220 | |
221 | 221 | |
@@ -293,7 +293,7 @@ discard block |
||
293 | 293 | |
294 | 294 | print "<ul>"; |
295 | 295 | while ($line = $sth->fetch()) { |
296 | - print "<li>" . $line["tag_name"] . "</li>"; |
|
296 | + print "<li>".$line["tag_name"]."</li>"; |
|
297 | 297 | } |
298 | 298 | print "</ul>"; |
299 | 299 | } |
@@ -432,21 +432,21 @@ discard block |
||
432 | 432 | if (!$hide_images) { |
433 | 433 | $encsize = ''; |
434 | 434 | if ($entry['height'] > 0) |
435 | - $encsize .= ' height="' . intval($entry['height']) . '"'; |
|
435 | + $encsize .= ' height="'.intval($entry['height']).'"'; |
|
436 | 436 | if ($entry['width'] > 0) |
437 | - $encsize .= ' width="' . intval($entry['width']) . '"'; |
|
437 | + $encsize .= ' width="'.intval($entry['width']).'"'; |
|
438 | 438 | $rv .= "<p><img |
439 | 439 | alt=\"".htmlspecialchars($entry["filename"])."\" |
440 | - src=\"" .htmlspecialchars($entry["url"]) . "\" |
|
441 | - " . $encsize . " /></p>"; |
|
440 | + src=\"" .htmlspecialchars($entry["url"])."\" |
|
441 | + " . $encsize." /></p>"; |
|
442 | 442 | } else { |
443 | 443 | $rv .= "<p><a target=\"_blank\" rel=\"noopener noreferrer\" |
444 | 444 | href=\"".htmlspecialchars($entry["url"])."\" |
445 | - >" .htmlspecialchars($entry["url"]) . "</a></p>"; |
|
445 | + >" .htmlspecialchars($entry["url"])."</a></p>"; |
|
446 | 446 | } |
447 | 447 | |
448 | 448 | if ($entry['title']) { |
449 | - $rv.= "<div class=\"enclosure_title\">${entry['title']}</div>"; |
|
449 | + $rv .= "<div class=\"enclosure_title\">${entry['title']}</div>"; |
|
450 | 450 | } |
451 | 451 | } |
452 | 452 | } |
@@ -461,13 +461,13 @@ discard block |
||
461 | 461 | } |
462 | 462 | |
463 | 463 | $rv .= "<div class=\"attachments\" dojoType=\"fox.form.DropDownButton\">". |
464 | - "<span>" . __('Attachments')."</span>"; |
|
464 | + "<span>".__('Attachments')."</span>"; |
|
465 | 465 | |
466 | 466 | $rv .= "<div dojoType=\"dijit.Menu\" style=\"display: none;\">"; |
467 | 467 | |
468 | 468 | foreach ($entries as $entry) { |
469 | 469 | if ($entry["title"]) |
470 | - $title = " — " . truncate_string($entry["title"], 30); |
|
470 | + $title = " — ".truncate_string($entry["title"], 30); |
|
471 | 471 | else |
472 | 472 | $title = ""; |
473 | 473 | |
@@ -477,7 +477,7 @@ discard block |
||
477 | 477 | $filename = ""; |
478 | 478 | |
479 | 479 | $rv .= "<div onclick='popupOpenUrl(\"".htmlspecialchars($entry["url"])."\")' |
480 | - dojoType=\"dijit.MenuItem\">".$filename . $title."</div>"; |
|
480 | + dojoType=\"dijit.MenuItem\">".$filename.$title."</div>"; |
|
481 | 481 | |
482 | 482 | }; |
483 | 483 | |
@@ -546,10 +546,10 @@ discard block |
||
546 | 546 | $tags_str = ""; |
547 | 547 | |
548 | 548 | for ($i = 0; $i < $maxtags; $i++) { |
549 | - $tags_str .= "<a class=\"tag\" href=\"#\" onclick=\"Feeds.open({feed:'".$tags[$i]."'})\">" . $tags[$i] . "</a>, "; |
|
549 | + $tags_str .= "<a class=\"tag\" href=\"#\" onclick=\"Feeds.open({feed:'".$tags[$i]."'})\">".$tags[$i]."</a>, "; |
|
550 | 550 | } |
551 | 551 | |
552 | - $tags_str = mb_substr($tags_str, 0, mb_strlen($tags_str)-2); |
|
552 | + $tags_str = mb_substr($tags_str, 0, mb_strlen($tags_str) - 2); |
|
553 | 553 | |
554 | 554 | if (count($tags) > $maxtags) |
555 | 555 | $tags_str .= ", …"; |
@@ -741,7 +741,7 @@ discard block |
||
741 | 741 | if (!$article_image && !$article_stream) { |
742 | 742 | $tmpdoc = new DOMDocument(); |
743 | 743 | |
744 | - if (@$tmpdoc->loadHTML('<?xml encoding="UTF-8">' . mb_substr($content, 0, 131070))) { |
|
744 | + if (@$tmpdoc->loadHTML('<?xml encoding="UTF-8">'.mb_substr($content, 0, 131070))) { |
|
745 | 745 | $tmpxpath = new DOMXPath($tmpdoc); |
746 | 746 | $elems = $tmpxpath->query('(//img[@src]|//video[@poster]|//iframe[contains(@src , "youtube.com/embed/")])'); |
747 | 747 | |
@@ -749,8 +749,8 @@ discard block |
||
749 | 749 | if ($e->nodeName == "iframe") { |
750 | 750 | $matches = []; |
751 | 751 | if (preg_match("/\/embed\/([\w-]+)/", $e->getAttribute("src"), $matches)) { |
752 | - $article_image = "https://img.youtube.com/vi/" . $matches[1] . "/hqdefault.jpg"; |
|
753 | - $article_stream = "https://youtu.be/" . $matches[1]; |
|
752 | + $article_image = "https://img.youtube.com/vi/".$matches[1]."/hqdefault.jpg"; |
|
753 | + $article_stream = "https://youtu.be/".$matches[1]; |
|
754 | 754 | break; |
755 | 755 | } |
756 | 756 | } else if ($e->nodeName == "video") { |
@@ -74,11 +74,11 @@ discard block |
||
74 | 74 | } |
75 | 75 | |
76 | 76 | if (get_pref("ENABLE_API_ACCESS", $uid)) { |
77 | - if (authenticate_user($login, $password, false, Auth_Base::AUTH_SERVICE_API)) { // try login with normal password |
|
77 | + if (authenticate_user($login, $password, false, Auth_Base::AUTH_SERVICE_API)) { // try login with normal password |
|
78 | 78 | $this->wrap(self::STATUS_OK, array("session_id" => session_id(), |
79 | 79 | "api_level" => self::API_LEVEL)); |
80 | 80 | } else if (authenticate_user($login, $password_base64, false, Auth_Base::AUTH_SERVICE_API)) { // else try with base64_decoded password |
81 | - $this->wrap(self::STATUS_OK, array("session_id" => session_id(), |
|
81 | + $this->wrap(self::STATUS_OK, array("session_id" => session_id(), |
|
82 | 82 | "api_level" => self::API_LEVEL)); |
83 | 83 | } else { // else we are not logged in |
84 | 84 | user_error("Failed login attempt for $login from {$_SERVER['REMOTE_ADDR']}", E_USER_WARNING); |
@@ -169,7 +169,7 @@ discard block |
||
169 | 169 | } |
170 | 170 | } |
171 | 171 | |
172 | - foreach (array(-2,-1,0) as $cat_id) { |
|
172 | + foreach (array(-2, -1, 0) as $cat_id) { |
|
173 | 173 | if ($include_empty || !$this->isCategoryEmpty($cat_id)) { |
174 | 174 | $unread = getFeedUnread($cat_id, true); |
175 | 175 | |
@@ -190,11 +190,11 @@ discard block |
||
190 | 190 | |
191 | 191 | if (is_numeric($feed_id)) $feed_id = (int) $feed_id; |
192 | 192 | |
193 | - $limit = (int)clean($_REQUEST["limit"]); |
|
193 | + $limit = (int) clean($_REQUEST["limit"]); |
|
194 | 194 | |
195 | 195 | if (!$limit || $limit >= 200) $limit = 200; |
196 | 196 | |
197 | - $offset = (int)clean($_REQUEST["skip"]); |
|
197 | + $offset = (int) clean($_REQUEST["skip"]); |
|
198 | 198 | $filter = clean($_REQUEST["filter"]); |
199 | 199 | $is_cat = API::param_to_bool(clean($_REQUEST["is_cat"])); |
200 | 200 | $show_excerpt = API::param_to_bool(clean($_REQUEST["show_excerpt"])); |
@@ -202,14 +202,14 @@ discard block |
||
202 | 202 | /* all_articles, unread, adaptive, marked, updated */ |
203 | 203 | $view_mode = clean($_REQUEST["view_mode"]); |
204 | 204 | $include_attachments = API::param_to_bool(clean($_REQUEST["include_attachments"])); |
205 | - $since_id = (int)clean($_REQUEST["since_id"]); |
|
205 | + $since_id = (int) clean($_REQUEST["since_id"]); |
|
206 | 206 | $include_nested = API::param_to_bool(clean($_REQUEST["include_nested"])); |
207 | 207 | $sanitize_content = !isset($_REQUEST["sanitize"]) || |
208 | 208 | API::param_to_bool($_REQUEST["sanitize"]); |
209 | 209 | $force_update = API::param_to_bool(clean($_REQUEST["force_update"])); |
210 | 210 | $has_sandbox = API::param_to_bool(clean($_REQUEST["has_sandbox"])); |
211 | - $excerpt_length = (int)clean($_REQUEST["excerpt_length"]); |
|
212 | - $check_first_id = (int)clean($_REQUEST["check_first_id"]); |
|
211 | + $excerpt_length = (int) clean($_REQUEST["excerpt_length"]); |
|
212 | + $check_first_id = (int) clean($_REQUEST["check_first_id"]); |
|
213 | 213 | $include_header = API::param_to_bool(clean($_REQUEST["include_header"])); |
214 | 214 | |
215 | 215 | $_SESSION['hasSandbox'] = $has_sandbox; |
@@ -253,7 +253,7 @@ discard block |
||
253 | 253 | $article_ids = explode(",", clean($_REQUEST["article_ids"])); |
254 | 254 | $mode = (int) clean($_REQUEST["mode"]); |
255 | 255 | $data = clean($_REQUEST["data"]); |
256 | - $field_raw = (int)clean($_REQUEST["field"]); |
|
256 | + $field_raw = (int) clean($_REQUEST["field"]); |
|
257 | 257 | |
258 | 258 | $field = ""; |
259 | 259 | $set_to = ""; |
@@ -360,7 +360,7 @@ discard block |
||
360 | 360 | "updated" => (int) strtotime($line["updated"]), |
361 | 361 | "feed_id" => $line["feed_id"], |
362 | 362 | "attachments" => $attachments, |
363 | - "score" => (int)$line["score"], |
|
363 | + "score" => (int) $line["score"], |
|
364 | 364 | "feed_title" => $line["feed_title"], |
365 | 365 | "note" => $line["note"], |
366 | 366 | "lang" => $line["lang"] |
@@ -434,7 +434,7 @@ discard block |
||
434 | 434 | } |
435 | 435 | |
436 | 436 | public function getLabels() { |
437 | - $article_id = (int)clean($_REQUEST['article_id']); |
|
437 | + $article_id = (int) clean($_REQUEST['article_id']); |
|
438 | 438 | |
439 | 439 | $rv = array(); |
440 | 440 | |
@@ -459,7 +459,7 @@ discard block |
||
459 | 459 | } |
460 | 460 | |
461 | 461 | array_push($rv, array( |
462 | - "id" => (int)Labels::label_to_feed_id($line['id']), |
|
462 | + "id" => (int) Labels::label_to_feed_id($line['id']), |
|
463 | 463 | "caption" => $line['caption'], |
464 | 464 | "fg_color" => $line['fg_color'], |
465 | 465 | "bg_color" => $line['bg_color'], |
@@ -644,10 +644,10 @@ discard block |
||
644 | 644 | $row = array( |
645 | 645 | "feed_url" => $line["feed_url"], |
646 | 646 | "title" => $line["title"], |
647 | - "id" => (int)$line["id"], |
|
648 | - "unread" => (int)$unread, |
|
647 | + "id" => (int) $line["id"], |
|
648 | + "unread" => (int) $unread, |
|
649 | 649 | "has_icon" => $has_icon, |
650 | - "cat_id" => (int)$line["cat_id"], |
|
650 | + "cat_id" => (int) $line["cat_id"], |
|
651 | 651 | "last_updated" => (int) strtotime($line["last_updated"]), |
652 | 652 | "order_id" => (int) $line["order_id"], |
653 | 653 | ); |
@@ -748,12 +748,12 @@ discard block |
||
748 | 748 | if (!is_array($labels)) $labels = Article::get_article_labels($line["id"]); |
749 | 749 | |
750 | 750 | $headline_row = array( |
751 | - "id" => (int)$line["id"], |
|
751 | + "id" => (int) $line["id"], |
|
752 | 752 | "guid" => $line["guid"], |
753 | 753 | "unread" => API::param_to_bool($line["unread"]), |
754 | 754 | "marked" => API::param_to_bool($line["marked"]), |
755 | 755 | "published" => API::param_to_bool($line["published"]), |
756 | - "updated" => (int)strtotime($line["updated"]), |
|
756 | + "updated" => (int) strtotime($line["updated"]), |
|
757 | 757 | "is_updated" => $is_updated, |
758 | 758 | "title" => $line["title"], |
759 | 759 | "link" => $line["link"], |
@@ -786,17 +786,16 @@ discard block |
||
786 | 786 | |
787 | 787 | $headline_row["labels"] = $labels; |
788 | 788 | |
789 | - $headline_row["feed_title"] = $line["feed_title"] ? $line["feed_title"] : |
|
790 | - $feed_title; |
|
789 | + $headline_row["feed_title"] = $line["feed_title"] ? $line["feed_title"] : $feed_title; |
|
791 | 790 | |
792 | - $headline_row["comments_count"] = (int)$line["num_comments"]; |
|
791 | + $headline_row["comments_count"] = (int) $line["num_comments"]; |
|
793 | 792 | $headline_row["comments_link"] = $line["comments"]; |
794 | 793 | |
795 | 794 | $headline_row["always_display_attachments"] = API::param_to_bool($line["always_display_enclosures"]); |
796 | 795 | |
797 | 796 | $headline_row["author"] = $line["author"]; |
798 | 797 | |
799 | - $headline_row["score"] = (int)$line["score"]; |
|
798 | + $headline_row["score"] = (int) $line["score"]; |
|
800 | 799 | $headline_row["note"] = $line["note"]; |
801 | 800 | $headline_row["lang"] = $line["lang"]; |
802 | 801 | |
@@ -858,7 +857,7 @@ discard block |
||
858 | 857 | $_REQUEST['mode'] = 2; |
859 | 858 | $_REQUEST['force_show_empty'] = $include_empty; |
860 | 859 | |
861 | - if ($pf){ |
|
860 | + if ($pf) { |
|
862 | 861 | $data = $pf->makefeedtree(); |
863 | 862 | $this->wrap(self::STATUS_OK, array("categories" => $data)); |
864 | 863 | } else { |
@@ -2,8 +2,8 @@ discard block |
||
2 | 2 | require_once "colors.php"; |
3 | 3 | |
4 | 4 | class Feeds extends Handler_Protected { |
5 | - const NEVER_GROUP_FEEDS = [ -6, 0 ]; |
|
6 | - const NEVER_GROUP_BY_DATE = [ -2, -1, -3 ]; |
|
5 | + const NEVER_GROUP_FEEDS = [ -6, 0]; |
|
6 | + const NEVER_GROUP_BY_DATE = [ -2, -1, -3]; |
|
7 | 7 | |
8 | 8 | private $params; |
9 | 9 | |
@@ -27,7 +27,7 @@ discard block |
||
27 | 27 | |
28 | 28 | $reply = ""; |
29 | 29 | |
30 | - $rss_link = htmlspecialchars(get_self_url_prefix() . |
|
30 | + $rss_link = htmlspecialchars(get_self_url_prefix(). |
|
31 | 31 | "/public.php?op=rss&id=$feed_id$cat_q$search_q"); |
32 | 32 | |
33 | 33 | $reply .= "<span class='left'>"; |
@@ -49,7 +49,7 @@ discard block |
||
49 | 49 | } |
50 | 50 | |
51 | 51 | if ($error) |
52 | - $reply .= " <i title=\"" . htmlspecialchars($error) . "\" class='material-icons icon-error'>error</i>"; |
|
52 | + $reply .= " <i title=\"".htmlspecialchars($error)."\" class='material-icons icon-error'>error</i>"; |
|
53 | 53 | |
54 | 54 | $reply .= "</span>"; |
55 | 55 | $reply .= "<span id='feed_current_unread' style='display: none'></span>"; |
@@ -139,7 +139,7 @@ discard block |
||
139 | 139 | $sth->execute([$feed]); |
140 | 140 | } |
141 | 141 | |
142 | - if ($method_split[0] == "MarkAllReadGR") { |
|
142 | + if ($method_split[0] == "MarkAllReadGR") { |
|
143 | 143 | $this->catchup_feed($method_split[1], false); |
144 | 144 | } |
145 | 145 | |
@@ -243,7 +243,7 @@ discard block |
||
243 | 243 | if (!get_pref('SHOW_CONTENT_PREVIEW')) { |
244 | 244 | $line["content_preview"] = ""; |
245 | 245 | } else { |
246 | - $line["content_preview"] = "— " . truncate_string(strip_tags($line["content"]), 250); |
|
246 | + $line["content_preview"] = "— ".truncate_string(strip_tags($line["content"]), 250); |
|
247 | 247 | |
248 | 248 | foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_QUERY_HEADLINES) as $p) { |
249 | 249 | $line = $p->hook_query_headlines($line, 250, false); |
@@ -322,10 +322,10 @@ discard block |
||
322 | 322 | if (!get_pref("CDM_EXPANDED")) { |
323 | 323 | $line["cdm_excerpt"] = "<span class='collapse'> |
324 | 324 | <i class='material-icons' onclick='return Article.cdmUnsetActive(event)' |
325 | - title=\"" . __("Collapse article") . "\">remove_circle</i></span>"; |
|
325 | + title=\"" . __("Collapse article")."\">remove_circle</i></span>"; |
|
326 | 326 | |
327 | 327 | if (get_pref('SHOW_CONTENT_PREVIEW')) { |
328 | - $line["cdm_excerpt"] .= "<span class='excerpt'>" . $line["content_preview"] . "</span>"; |
|
328 | + $line["cdm_excerpt"] .= "<span class='excerpt'>".$line["content_preview"]."</span>"; |
|
329 | 329 | } |
330 | 330 | } |
331 | 331 | |
@@ -339,11 +339,11 @@ discard block |
||
339 | 339 | $ofgh->execute([$line["orig_feed_id"], $_SESSION['uid']]); |
340 | 340 | |
341 | 341 | if ($tmp_line = $ofgh->fetch()) { |
342 | - $line["orig_feed"] = [ $tmp_line["title"], $tmp_line["site_url"], $tmp_line["feed_url"] ]; |
|
342 | + $line["orig_feed"] = [$tmp_line["title"], $tmp_line["site_url"], $tmp_line["feed_url"]]; |
|
343 | 343 | } |
344 | 344 | } |
345 | 345 | |
346 | - $line["updated_long"] = make_local_datetime($line["updated"],true); |
|
346 | + $line["updated_long"] = make_local_datetime($line["updated"], true); |
|
347 | 347 | $line["updated"] = make_local_datetime($line["updated"], false, false, false, true); |
348 | 348 | |
349 | 349 | |
@@ -377,7 +377,7 @@ discard block |
||
377 | 377 | } |
378 | 378 | |
379 | 379 | if (isset($rgba_cache[$feed_id])) { |
380 | - $line['feed_bg_color'] = 'rgba(' . implode(",", $rgba_cache[$feed_id]) . ',0.3)'; |
|
380 | + $line['feed_bg_color'] = 'rgba('.implode(",", $rgba_cache[$feed_id]).',0.3)'; |
|
381 | 381 | } |
382 | 382 | |
383 | 383 | /* we don't need those */ |
@@ -421,7 +421,7 @@ discard block |
||
421 | 421 | |
422 | 422 | $reply['content'] .= "<p><span class=\"text-muted\">"; |
423 | 423 | |
424 | - $sth = $this->pdo->prepare("SELECT " . SUBSTRING_FOR_DATE . "(MAX(last_updated), 1, 19) AS last_updated FROM ttrss_feeds |
|
424 | + $sth = $this->pdo->prepare("SELECT ".SUBSTRING_FOR_DATE."(MAX(last_updated), 1, 19) AS last_updated FROM ttrss_feeds |
|
425 | 425 | WHERE owner_uid = ?"); |
426 | 426 | $sth->execute([$_SESSION['uid']]); |
427 | 427 | $row = $sth->fetch(); |
@@ -439,8 +439,8 @@ discard block |
||
439 | 439 | |
440 | 440 | if ($num_errors > 0) { |
441 | 441 | $reply['content'] .= "<br/>"; |
442 | - $reply['content'] .= "<a class=\"text-muted\" href=\"#\" onclick=\"CommonDialogs.showFeedsWithErrors()\">" . |
|
443 | - __('Some feeds have update errors (click for details)') . "</a>"; |
|
442 | + $reply['content'] .= "<a class=\"text-muted\" href=\"#\" onclick=\"CommonDialogs.showFeedsWithErrors()\">". |
|
443 | + __('Some feeds have update errors (click for details)')."</a>"; |
|
444 | 444 | } |
445 | 445 | $reply['content'] .= "</span></p></div>"; |
446 | 446 | |
@@ -635,7 +635,7 @@ discard block |
||
635 | 635 | $reply['headlines']['is_cat'] = false; |
636 | 636 | |
637 | 637 | $reply['headlines']['toolbar'] = ''; |
638 | - $reply['headlines']['content'] = "<div class='whiteBox'>". $error . "</div>"; |
|
638 | + $reply['headlines']['content'] = "<div class='whiteBox'>".$error."</div>"; |
|
639 | 639 | |
640 | 640 | $reply['headlines-info'] = array("count" => 0, |
641 | 641 | "unread" => 0, |
@@ -669,7 +669,7 @@ discard block |
||
669 | 669 | print "<fieldset>"; |
670 | 670 | |
671 | 671 | if (get_pref('ENABLE_FEED_CATS')) { |
672 | - print "<label class='inline'>" . __('Place in category:') . "</label> "; |
|
672 | + print "<label class='inline'>".__('Place in category:')."</label> "; |
|
673 | 673 | print_feed_cat_select("cat", false, 'dojoType="fox.form.Select"'); |
674 | 674 | } |
675 | 675 | |
@@ -678,7 +678,7 @@ discard block |
||
678 | 678 | print "</section>"; |
679 | 679 | |
680 | 680 | print '<div id="feedDlg_feedsContainer" style="display : none"> |
681 | - <header>' . __('Available feeds') . '</header> |
|
681 | + <header>' . __('Available feeds').'</header> |
|
682 | 682 | <section> |
683 | 683 | <fieldset> |
684 | 684 | <select id="feedDlg_feedContainerSelect" |
@@ -743,7 +743,7 @@ discard block |
||
743 | 743 | |
744 | 744 | if (DB_TYPE == "pgsql") { |
745 | 745 | print "<fieldset>"; |
746 | - print "<label class='inline'>" . __("Language:") . "</label>"; |
|
746 | + print "<label class='inline'>".__("Language:")."</label>"; |
|
747 | 747 | print_select("search_language", get_pref('DEFAULT_SEARCH_LANGUAGE'), Pref_Feeds::get_ts_languages(), |
748 | 748 | "dojoType='fox.form.Select' title=\"".__('Used for word stemming')."\""); |
749 | 749 | print "</fieldset>"; |
@@ -772,7 +772,7 @@ discard block |
||
772 | 772 | Debug::set_enabled(true); |
773 | 773 | Debug::set_loglevel($_REQUEST["xdebug"]); |
774 | 774 | |
775 | - $feed_id = (int)$_REQUEST["feed_id"]; |
|
775 | + $feed_id = (int) $_REQUEST["feed_id"]; |
|
776 | 776 | @$do_update = $_REQUEST["action"] == "do_update"; |
777 | 777 | $csrf_token = $_REQUEST["csrf_token"]; |
778 | 778 | |
@@ -811,7 +811,7 @@ discard block |
||
811 | 811 | </script> |
812 | 812 | |
813 | 813 | <div class="container"> |
814 | - <h1>Feed Debugger: <?php echo "$feed_id: " . $this->getFeedTitle($feed_id) ?></h1> |
|
814 | + <h1>Feed Debugger: <?php echo "$feed_id: ".$this->getFeedTitle($feed_id) ?></h1> |
|
815 | 815 | <div class="content"> |
816 | 816 | <form method="GET" action=""> |
817 | 817 | <input type="hidden" name="op" value="feeds"> |
@@ -1074,7 +1074,7 @@ discard block |
||
1074 | 1074 | } else if ($n_feed >= 0) { |
1075 | 1075 | |
1076 | 1076 | if ($n_feed != 0) { |
1077 | - $match_part = "feed_id = " . (int)$n_feed; |
|
1077 | + $match_part = "feed_id = ".(int) $n_feed; |
|
1078 | 1078 | } else { |
1079 | 1079 | $match_part = "feed_id IS NULL"; |
1080 | 1080 | } |
@@ -1184,7 +1184,7 @@ discard block |
||
1184 | 1184 | (owner_uid,feed_url,title,cat_id, auth_login,auth_pass,update_method,auth_pass_encrypted) |
1185 | 1185 | VALUES (?, ?, ?, ?, ?, ?, 0, false)"); |
1186 | 1186 | |
1187 | - $sth->execute([$_SESSION['uid'], $url, "[Unknown]", $cat_id, (string)$auth_login, (string)$auth_pass]); |
|
1187 | + $sth->execute([$_SESSION['uid'], $url, "[Unknown]", $cat_id, (string) $auth_login, (string) $auth_pass]); |
|
1188 | 1188 | |
1189 | 1189 | $sth = $pdo->prepare("SELECT id FROM ttrss_feeds WHERE feed_url = ? |
1190 | 1190 | AND owner_uid = ?"); |
@@ -1203,11 +1203,11 @@ discard block |
||
1203 | 1203 | } |
1204 | 1204 | |
1205 | 1205 | public static function getIconFile($feed_id) { |
1206 | - return ICONS_DIR . "/$feed_id.ico"; |
|
1206 | + return ICONS_DIR."/$feed_id.ico"; |
|
1207 | 1207 | } |
1208 | 1208 | |
1209 | 1209 | public static function feedHasIcon($id) { |
1210 | - return is_file(ICONS_DIR . "/$id.ico") && filesize(ICONS_DIR . "/$id.ico") > 0; |
|
1210 | + return is_file(ICONS_DIR."/$id.ico") && filesize(ICONS_DIR."/$id.ico") > 0; |
|
1211 | 1211 | } |
1212 | 1212 | |
1213 | 1213 | public static function getFeedIcon($id) { |
@@ -1231,7 +1231,7 @@ discard block |
||
1231 | 1231 | $icon = self::getIconFile($id); |
1232 | 1232 | |
1233 | 1233 | if ($icon && file_exists($icon)) { |
1234 | - return ICONS_URL . "/" . basename($icon) . "?" . filemtime($icon); |
|
1234 | + return ICONS_URL."/".basename($icon)."?".filemtime($icon); |
|
1235 | 1235 | } |
1236 | 1236 | } |
1237 | 1237 | } |
@@ -1303,7 +1303,7 @@ discard block |
||
1303 | 1303 | |
1304 | 1304 | $cat_feeds = array(); |
1305 | 1305 | while ($line = $sth->fetch()) { |
1306 | - array_push($cat_feeds, "feed_id = " . (int)$line["id"]); |
|
1306 | + array_push($cat_feeds, "feed_id = ".(int) $line["id"]); |
|
1307 | 1307 | } |
1308 | 1308 | |
1309 | 1309 | if (count($cat_feeds) == 0) return 0; |
@@ -1517,7 +1517,7 @@ discard block |
||
1517 | 1517 | } |
1518 | 1518 | |
1519 | 1519 | if ($limit > 0) { |
1520 | - $limit_query_part = "LIMIT " . (int)$limit; |
|
1520 | + $limit_query_part = "LIMIT ".(int) $limit; |
|
1521 | 1521 | } |
1522 | 1522 | |
1523 | 1523 | $allow_archived = false; |
@@ -1544,7 +1544,7 @@ discard block |
||
1544 | 1544 | implode(",", $subcats).")"; |
1545 | 1545 | |
1546 | 1546 | } else { |
1547 | - $query_strategy_part = "cat_id = " . $pdo->quote($feed); |
|
1547 | + $query_strategy_part = "cat_id = ".$pdo->quote($feed); |
|
1548 | 1548 | } |
1549 | 1549 | |
1550 | 1550 | } else { |
@@ -1554,7 +1554,7 @@ discard block |
||
1554 | 1554 | $vfeed_query_part = "ttrss_feeds.title AS feed_title,"; |
1555 | 1555 | |
1556 | 1556 | } else { |
1557 | - $query_strategy_part = "feed_id = " . $pdo->quote($feed); |
|
1557 | + $query_strategy_part = "feed_id = ".$pdo->quote($feed); |
|
1558 | 1558 | } |
1559 | 1559 | } else if ($feed == 0 && !$cat_view) { // archive virtual feed |
1560 | 1560 | $query_strategy_part = "feed_id IS NULL"; |
@@ -1676,7 +1676,7 @@ discard block |
||
1676 | 1676 | $content_query_part = "content, "; |
1677 | 1677 | |
1678 | 1678 | if ($limit_query_part) { |
1679 | - $offset_query_part = "OFFSET " . (int)$offset; |
|
1679 | + $offset_query_part = "OFFSET ".(int) $offset; |
|
1680 | 1680 | } else { |
1681 | 1681 | $offset_query_part = ""; |
1682 | 1682 | } |
@@ -1765,7 +1765,7 @@ discard block |
||
1765 | 1765 | $res = $pdo->query($query); |
1766 | 1766 | |
1767 | 1767 | if ($row = $res->fetch()) { |
1768 | - $first_id = (int)$row["id"]; |
|
1768 | + $first_id = (int) $row["id"]; |
|
1769 | 1769 | |
1770 | 1770 | if ($offset > 0 && $first_id && $check_first_id && $first_id != $check_first_id) { |
1771 | 1771 | return array(-1, $feed_title, $feed_site_url, $last_error, $last_updated, $search_words, $first_id, $vfeed_query_part != "", $query_error_override); |
@@ -1912,9 +1912,9 @@ discard block |
||
1912 | 1912 | } |
1913 | 1913 | |
1914 | 1914 | function color_of($name) { |
1915 | - $colormap = [ "#1cd7d7","#d91111","#1212d7","#8e16e5","#7b7b7b", |
|
1916 | - "#39f110","#0bbea6","#ec0e0e","#1534f2","#b9e416", |
|
1917 | - "#479af2","#f36b14","#10c7e9","#1e8fe7","#e22727" ]; |
|
1915 | + $colormap = ["#1cd7d7", "#d91111", "#1212d7", "#8e16e5", "#7b7b7b", |
|
1916 | + "#39f110", "#0bbea6", "#ec0e0e", "#1534f2", "#b9e416", |
|
1917 | + "#479af2", "#f36b14", "#10c7e9", "#1e8fe7", "#e22727"]; |
|
1918 | 1918 | |
1919 | 1919 | $sum = 0; |
1920 | 1920 | |
@@ -1978,13 +1978,13 @@ discard block |
||
1978 | 1978 | |
1979 | 1979 | // support schema-less urls |
1980 | 1980 | if (strpos($url, '//') === 0) { |
1981 | - $url = 'https:' . $url; |
|
1981 | + $url = 'https:'.$url; |
|
1982 | 1982 | } |
1983 | 1983 | |
1984 | 1984 | if (strpos($url, '://') === false) { |
1985 | - $url = 'http://' . $url; |
|
1985 | + $url = 'http://'.$url; |
|
1986 | 1986 | } else if (substr($url, 0, 5) == 'feed:') { |
1987 | - $url = 'http:' . substr($url, 5); |
|
1987 | + $url = 'http:'.substr($url, 5); |
|
1988 | 1988 | } |
1989 | 1989 | |
1990 | 1990 | //prepend slash if the URL has no slash in it |
@@ -2034,7 +2034,7 @@ discard block |
||
2034 | 2034 | |
2035 | 2035 | $sth = $pdo->prepare("INSERT INTO ttrss_feed_categories (owner_uid,title,parent_cat,order_id) |
2036 | 2036 | VALUES (?, ?, ?, ?)"); |
2037 | - $sth->execute([$_SESSION['uid'], $feed_cat, $parent_cat_id, (int)$order_id]); |
|
2037 | + $sth->execute([$_SESSION['uid'], $feed_cat, $parent_cat_id, (int) $order_id]); |
|
2038 | 2038 | |
2039 | 2039 | if (!$tr_in_progress) $pdo->commit(); |
2040 | 2040 | |
@@ -2134,7 +2134,7 @@ discard block |
||
2134 | 2134 | $sth->execute([$feed_id]); |
2135 | 2135 | |
2136 | 2136 | } else { |
2137 | - $sth = $pdo->prepare("DELETE FROM ttrss_user_entries |
|
2137 | + $sth = $pdo->prepare("DELETE FROM ttrss_user_entries |
|
2138 | 2138 | USING ttrss_user_entries, ttrss_entries |
2139 | 2139 | WHERE ttrss_entries.id = ref_id AND |
2140 | 2140 | marked = false AND |
@@ -2204,7 +2204,7 @@ discard block |
||
2204 | 2204 | case "title": |
2205 | 2205 | if ($commandpair[1]) { |
2206 | 2206 | array_push($query_keywords, "($not (LOWER(ttrss_entries.title) LIKE ". |
2207 | - $pdo->quote('%' . mb_strtolower($commandpair[1]) . '%') ."))"); |
|
2207 | + $pdo->quote('%'.mb_strtolower($commandpair[1]).'%')."))"); |
|
2208 | 2208 | } else { |
2209 | 2209 | array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') |
2210 | 2210 | OR UPPER(ttrss_entries.content) $not LIKE UPPER(".$pdo->quote("%$k%")."))"); |
@@ -2214,7 +2214,7 @@ discard block |
||
2214 | 2214 | case "author": |
2215 | 2215 | if ($commandpair[1]) { |
2216 | 2216 | array_push($query_keywords, "($not (LOWER(author) LIKE ". |
2217 | - $pdo->quote('%' . mb_strtolower($commandpair[1]) . '%')."))"); |
|
2217 | + $pdo->quote('%'.mb_strtolower($commandpair[1]).'%')."))"); |
|
2218 | 2218 | } else { |
2219 | 2219 | array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') |
2220 | 2220 | OR UPPER(ttrss_entries.content) $not LIKE UPPER(".$pdo->quote("%$k%")."))"); |
@@ -2229,7 +2229,7 @@ discard block |
||
2229 | 2229 | array_push($query_keywords, "($not (note IS NULL OR note = ''))"); |
2230 | 2230 | else |
2231 | 2231 | array_push($query_keywords, "($not (LOWER(note) LIKE ". |
2232 | - $pdo->quote('%' . mb_strtolower($commandpair[1]) . '%')."))"); |
|
2232 | + $pdo->quote('%'.mb_strtolower($commandpair[1]).'%')."))"); |
|
2233 | 2233 | } else { |
2234 | 2234 | array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER(".$pdo->quote("%$k%").") |
2235 | 2235 | OR UPPER(ttrss_entries.content) $not LIKE UPPER(".$pdo->quote("%$k%")."))"); |
@@ -2306,7 +2306,7 @@ discard block |
||
2306 | 2306 | |
2307 | 2307 | // if there's no joiners consider this a "simple" search and |
2308 | 2308 | // concatenate everything with &, otherwise don't try to mess with tsquery syntax |
2309 | - if (preg_match("/[&|]/", implode(" " , $search_query_leftover))) { |
|
2309 | + if (preg_match("/[&|]/", implode(" ", $search_query_leftover))) { |
|
2310 | 2310 | $tsquery = $pdo->quote(implode(" ", $search_query_leftover)); |
2311 | 2311 | } else { |
2312 | 2312 | $tsquery = $pdo->quote(implode(" & ", $search_query_leftover)); |
@@ -82,7 +82,7 @@ discard block |
||
82 | 82 | "ENABLE_API_ACCESS" => array(__("Enable API"), __("Allows accessing this account through the API")), |
83 | 83 | "ENABLE_FEED_CATS" => array(__("Enable categories")), |
84 | 84 | "FEEDS_SORT_BY_UNREAD" => array(__("Sort feeds by unread articles count"), ""), |
85 | - "FRESH_ARTICLE_MAX_AGE" => array(__("Maximum age of fresh articles"), "<strong>" . __("hours") . "</strong>"), |
|
85 | + "FRESH_ARTICLE_MAX_AGE" => array(__("Maximum age of fresh articles"), "<strong>".__("hours")."</strong>"), |
|
86 | 86 | "HIDE_READ_FEEDS" => array(__("Hide read feeds")), |
87 | 87 | "HIDE_READ_SHOWS_SPECIAL" => array(__("Always show special feeds"), __("While hiding read feeds")), |
88 | 88 | "LONG_DATE_FORMAT" => array(__("Long date format"), __("Syntax is identical to PHP <a href='http://php.net/manual/function.date.php'>date()</a> function.")), |
@@ -403,7 +403,7 @@ discard block |
||
403 | 403 | |
404 | 404 | if ($_SESSION["auth_module"] == "auth_internal") { |
405 | 405 | |
406 | - print "<div dojoType='dijit.layout.ContentPane' title=\"" . __('App passwords') . "\">"; |
|
406 | + print "<div dojoType='dijit.layout.ContentPane' title=\"".__('App passwords')."\">"; |
|
407 | 407 | |
408 | 408 | print_notice("You can create separate passwords for API clients. Using one is required if you enable OTP."); |
409 | 409 | |
@@ -415,11 +415,11 @@ discard block |
||
415 | 415 | |
416 | 416 | print "<button style='float : left' class='alt-primary' dojoType='dijit.form.Button' |
417 | 417 | onclick=\"Helpers.AppPasswords.generate()\">" . |
418 | - __('Generate new password') . "</button> "; |
|
418 | + __('Generate new password')."</button> "; |
|
419 | 419 | |
420 | 420 | print "<button style='float : left' class='alt-danger' dojoType='dijit.form.Button' |
421 | 421 | onclick=\"Helpers.AppPasswords.removeSelected()\">" . |
422 | - __('Remove selected passwords') . "</button>"; |
|
422 | + __('Remove selected passwords')."</button>"; |
|
423 | 423 | |
424 | 424 | print "</div>"; # content pane |
425 | 425 | } |
@@ -474,13 +474,13 @@ discard block |
||
474 | 474 | print_notice("You will need to generate app passwords for the API clients if you enable OTP."); |
475 | 475 | |
476 | 476 | if (function_exists("imagecreatefromstring")) { |
477 | - print "<h3>" . __("Scan the following code by the Authenticator application or copy the key manually") . "</h3>"; |
|
477 | + print "<h3>".__("Scan the following code by the Authenticator application or copy the key manually")."</h3>"; |
|
478 | 478 | |
479 | 479 | $csrf_token = $_SESSION["csrf_token"]; |
480 | 480 | print "<img alt='otp qr-code' src='backend.php?op=pref-prefs&method=otpqrcode&csrf_token=$csrf_token'>"; |
481 | 481 | } else { |
482 | 482 | print_error("PHP GD functions are required to generate QR codes."); |
483 | - print "<h3>" . __("Use the following OTP key with a compatible Authenticator application") . "</h3>"; |
|
483 | + print "<h3>".__("Use the following OTP key with a compatible Authenticator application")."</h3>"; |
|
484 | 484 | } |
485 | 485 | |
486 | 486 | print "<form dojoType='dijit.form.Form' id='changeOtpForm'>"; |
@@ -647,7 +647,7 @@ discard block |
||
647 | 647 | print "<fieldset class='prefs'>"; |
648 | 648 | |
649 | 649 | print "<label for='CB_$pref_name'>"; |
650 | - print $item['short_desc'] . ":"; |
|
650 | + print $item['short_desc'].":"; |
|
651 | 651 | print "</label>"; |
652 | 652 | |
653 | 653 | $value = $item['value']; |
@@ -684,7 +684,7 @@ discard block |
||
684 | 684 | print "</select>"; |
685 | 685 | |
686 | 686 | print " <button dojoType=\"dijit.form.Button\" class='alt-info' |
687 | - onclick=\"Helpers.customizeCSS()\">" . __('Customize') . "</button>"; |
|
687 | + onclick=\"Helpers.customizeCSS()\">" . __('Customize')."</button>"; |
|
688 | 688 | |
689 | 689 | print " <button dojoType='dijit.form.Button' onclick='window.open(\"https://tt-rss.org/wiki/Themes\")'> |
690 | 690 | <i class='material-icons'>open_in_new</i> ".__("More themes...")."</button>"; |
@@ -747,12 +747,12 @@ discard block |
||
747 | 747 | $has_serial = ($cert_serial) ? "false" : "true"; |
748 | 748 | |
749 | 749 | print "<button dojoType='dijit.form.Button' disabled='$has_serial' |
750 | - onclick=\"dijit.byId('SSL_CERT_SERIAL').attr('value', '$cert_serial')\">" . |
|
751 | - __('Register') . "</button>"; |
|
750 | + onclick=\"dijit.byId('SSL_CERT_SERIAL').attr('value', '$cert_serial')\">". |
|
751 | + __('Register')."</button>"; |
|
752 | 752 | |
753 | 753 | print "<button dojoType='dijit.form.Button' class='alt-danger' |
754 | 754 | onclick=\"dijit.byId('SSL_CERT_SERIAL').attr('value', '')\">" . |
755 | - __('Clear') . "</button>"; |
|
755 | + __('Clear')."</button>"; |
|
756 | 756 | |
757 | 757 | print "<button dojoType='dijit.form.Button' class='alt-info' |
758 | 758 | onclick='window.open(\"https://tt-rss.org/wiki/SSL%20Certificate%20Authentication\")'> |
@@ -763,7 +763,7 @@ discard block |
||
763 | 763 | id=\"$pref_name\" regexp=\"[012]?\d:\d\d\" placeHolder=\"12:00\" |
764 | 764 | name=\"$pref_name\" value=\"$value\">"; |
765 | 765 | |
766 | - $item['help_text'] .= ". " . T_sprintf("Current server time: %s", date("H:i")); |
|
766 | + $item['help_text'] .= ". ".T_sprintf("Current server time: %s", date("H:i")); |
|
767 | 767 | } else { |
768 | 768 | $regexp = ($type_name == 'integer') ? 'regexp="^\d*$"' : ''; |
769 | 769 | |
@@ -849,7 +849,7 @@ discard block |
||
849 | 849 | print_warning("Your PHP configuration has open_basedir restrictions enabled. Some plugins relying on CURL for functionality may not work correctly."); |
850 | 850 | } |
851 | 851 | |
852 | - $feed_handler_whitelist = [ "Af_Comics" ]; |
|
852 | + $feed_handler_whitelist = ["Af_Comics"]; |
|
853 | 853 | |
854 | 854 | $feed_handlers = array_merge( |
855 | 855 | PluginHost::getInstance()->get_hooks(PluginHost::HOOK_FEED_FETCHED), |
@@ -861,9 +861,9 @@ discard block |
||
861 | 861 | |
862 | 862 | if (count($feed_handlers) > 0) { |
863 | 863 | print_error( |
864 | - T_sprintf("The following plugins use per-feed content hooks. This may cause excessive data usage and origin server load resulting in a ban of your instance: <b>%s</b>" , |
|
864 | + T_sprintf("The following plugins use per-feed content hooks. This may cause excessive data usage and origin server load resulting in a ban of your instance: <b>%s</b>", |
|
865 | 865 | implode(", ", array_map(function($plugin) { return get_class($plugin); }, $feed_handlers)) |
866 | - ) . " (<a href='https://tt-rss.org/wiki/FeedHandlerPlugins' target='_blank'>".__("More info...")."</a>)" |
|
866 | + )." (<a href='https://tt-rss.org/wiki/FeedHandlerPlugins' target='_blank'>".__("More info...")."</a>)" |
|
867 | 867 | ); |
868 | 868 | } |
869 | 869 | |
@@ -892,7 +892,7 @@ discard block |
||
892 | 892 | <label class='checkbox description text-muted' id='PLABEL-$name'> |
893 | 893 | <input disabled='1' |
894 | 894 | dojoType='dijit.form.CheckBox' $checked type='checkbox'> |
895 | - ".htmlspecialchars($about[1]). "</label>"; |
|
895 | + ".htmlspecialchars($about[1])."</label>"; |
|
896 | 896 | |
897 | 897 | if (@$about[4]) { |
898 | 898 | print "<button dojoType='dijit.form.Button' class='alt-info' |
@@ -1154,7 +1154,7 @@ discard block |
||
1154 | 1154 | print "<div dojoType='fox.Toolbar'>"; |
1155 | 1155 | |
1156 | 1156 | print "<div dojoType='fox.form.DropDownButton'>". |
1157 | - "<span>" . __('Select')."</span>"; |
|
1157 | + "<span>".__('Select')."</span>"; |
|
1158 | 1158 | print "<div dojoType='dijit.Menu' style='display: none'>"; |
1159 | 1159 | print "<div onclick=\"Tables.select('pref-profiles-list', true)\" |
1160 | 1160 | dojoType='dijit.MenuItem'>".__('All')."</div>"; |
@@ -1192,7 +1192,7 @@ discard block |
||
1192 | 1192 | $is_active = ""; |
1193 | 1193 | } |
1194 | 1194 | |
1195 | - print "<td width='100%'><span>" . __("Default profile") . " $is_active</span></td>"; |
|
1195 | + print "<td width='100%'><span>".__("Default profile")." $is_active</span></td>"; |
|
1196 | 1196 | |
1197 | 1197 | print "</tr>"; |
1198 | 1198 | |
@@ -1214,7 +1214,7 @@ discard block |
||
1214 | 1214 | |
1215 | 1215 | print "<td><span dojoType='dijit.InlineEditBox' |
1216 | 1216 | width='300px' autoSave='false' |
1217 | - profile-id='$profile_id'>" . $edit_title . |
|
1217 | + profile-id='$profile_id'>".$edit_title. |
|
1218 | 1218 | "<script type='dojo/method' event='onChange' args='item'> |
1219 | 1219 | var elem = this; |
1220 | 1220 | dojo.xhrPost({ |
@@ -1263,13 +1263,13 @@ discard block |
||
1263 | 1263 | |
1264 | 1264 | private function appPasswordList() { |
1265 | 1265 | print "<div dojoType='fox.Toolbar'>"; |
1266 | - print "<div dojoType='fox.form.DropDownButton'>" . |
|
1267 | - "<span>" . __('Select') . "</span>"; |
|
1266 | + print "<div dojoType='fox.form.DropDownButton'>". |
|
1267 | + "<span>".__('Select')."</span>"; |
|
1268 | 1268 | print "<div dojoType='dijit.Menu' style='display: none'>"; |
1269 | 1269 | print "<div onclick=\"Tables.select('app-password-list', true)\" |
1270 | - dojoType=\"dijit.MenuItem\">" . __('All') . "</div>"; |
|
1270 | + dojoType=\"dijit.MenuItem\">" . __('All')."</div>"; |
|
1271 | 1271 | print "<div onclick=\"Tables.select('app-password-list', false)\" |
1272 | - dojoType=\"dijit.MenuItem\">" . __('None') . "</div>"; |
|
1272 | + dojoType=\"dijit.MenuItem\">" . __('None')."</div>"; |
|
1273 | 1273 | print "</div></div>"; |
1274 | 1274 | print "</div>"; #toolbar |
1275 | 1275 | |
@@ -1294,7 +1294,7 @@ discard block |
||
1294 | 1294 | |
1295 | 1295 | print "<td align='center'> |
1296 | 1296 | <input onclick='Tables.onRowChecked(this)' dojoType='dijit.form.CheckBox' type='checkbox'></td>"; |
1297 | - print "<td>" . htmlspecialchars($row["title"]) . "</td>"; |
|
1297 | + print "<td>".htmlspecialchars($row["title"])."</td>"; |
|
1298 | 1298 | |
1299 | 1299 | print "<td align='right' class='text-muted'>"; |
1300 | 1300 | print make_local_datetime($row['created'], false); |
@@ -1314,7 +1314,7 @@ discard block |
||
1314 | 1314 | private function encryptAppPassword($password) { |
1315 | 1315 | $salt = substr(bin2hex(get_random_bytes(24)), 0, 24); |
1316 | 1316 | |
1317 | - return "SSHA-512:".hash('sha512', $salt . $password). ":$salt"; |
|
1317 | + return "SSHA-512:".hash('sha512', $salt.$password).":$salt"; |
|
1318 | 1318 | } |
1319 | 1319 | |
1320 | 1320 | public function deleteAppPassword() { |