mirror of
https://git.tt-rss.org/git/tt-rss.git
synced 2025-12-27 13:11:28 +00:00
fix blank character after opening bracket in function calls
This commit is contained in:
@@ -19,12 +19,12 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
|
||||
$pwd_hash1 = encrypt_password($password);
|
||||
$pwd_hash2 = encrypt_password($password, $login);
|
||||
$login = db_escape_string( $login);
|
||||
$otp = db_escape_string( $_REQUEST["otp"]);
|
||||
$login = db_escape_string($login);
|
||||
$otp = db_escape_string($_REQUEST["otp"]);
|
||||
|
||||
if (get_schema_version() > 96) {
|
||||
if (!defined('AUTH_DISABLE_OTP') || !AUTH_DISABLE_OTP) {
|
||||
$result = db_query( "SELECT otp_enabled,salt FROM ttrss_users WHERE
|
||||
$result = db_query("SELECT otp_enabled,salt FROM ttrss_users WHERE
|
||||
login = '$login'");
|
||||
|
||||
if (db_num_rows($result) > 0) {
|
||||
@@ -74,7 +74,7 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
|
||||
if (get_schema_version() > 87) {
|
||||
|
||||
$result = db_query( "SELECT salt FROM ttrss_users WHERE
|
||||
$result = db_query("SELECT salt FROM ttrss_users WHERE
|
||||
login = '$login'");
|
||||
|
||||
if (db_num_rows($result) != 1) {
|
||||
@@ -92,7 +92,7 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
|
||||
// verify and upgrade password to new salt base
|
||||
|
||||
$result = db_query( $query);
|
||||
$result = db_query($query);
|
||||
|
||||
if (db_num_rows($result) == 1) {
|
||||
// upgrade password to MODE2
|
||||
@@ -100,7 +100,7 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
$salt = substr(bin2hex(get_random_bytes(125)), 0, 250);
|
||||
$pwd_hash = encrypt_password($password, $salt, true);
|
||||
|
||||
db_query( "UPDATE ttrss_users SET
|
||||
db_query("UPDATE ttrss_users SET
|
||||
pwd_hash = '$pwd_hash', salt = '$salt' WHERE login = '$login'");
|
||||
|
||||
$query = "SELECT id
|
||||
@@ -128,7 +128,7 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
pwd_hash = '$pwd_hash2')";
|
||||
}
|
||||
|
||||
$result = db_query( $query);
|
||||
$result = db_query($query);
|
||||
|
||||
if (db_num_rows($result) == 1) {
|
||||
return db_fetch_result($result, 0, "id");
|
||||
@@ -138,9 +138,9 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
}
|
||||
|
||||
function check_password($owner_uid, $password) {
|
||||
$owner_uid = db_escape_string( $owner_uid);
|
||||
$owner_uid = db_escape_string($owner_uid);
|
||||
|
||||
$result = db_query( "SELECT salt,login FROM ttrss_users WHERE
|
||||
$result = db_query("SELECT salt,login FROM ttrss_users WHERE
|
||||
id = '$owner_uid'");
|
||||
|
||||
$salt = db_fetch_result($result, 0, "salt");
|
||||
@@ -161,20 +161,20 @@ class Auth_Internal extends Plugin implements IAuthModule {
|
||||
id = '$owner_uid' AND pwd_hash = '$password_hash'";
|
||||
}
|
||||
|
||||
$result = db_query( $query);
|
||||
$result = db_query($query);
|
||||
|
||||
return db_num_rows($result) != 0;
|
||||
}
|
||||
|
||||
function change_password($owner_uid, $old_password, $new_password) {
|
||||
$owner_uid = db_escape_string( $owner_uid);
|
||||
$owner_uid = db_escape_string($owner_uid);
|
||||
|
||||
if ($this->check_password($owner_uid, $old_password)) {
|
||||
|
||||
$new_salt = substr(bin2hex(get_random_bytes(125)), 0, 250);
|
||||
$new_password_hash = encrypt_password($new_password, $new_salt, true);
|
||||
|
||||
db_query( "UPDATE ttrss_users SET
|
||||
db_query("UPDATE ttrss_users SET
|
||||
pwd_hash = '$new_password_hash', salt = '$new_salt', otp_enabled = false
|
||||
WHERE id = '$owner_uid'");
|
||||
|
||||
|
||||
@@ -19,15 +19,15 @@ class Auth_Remote extends Plugin implements IAuthModule {
|
||||
}
|
||||
|
||||
function get_login_by_ssl_certificate() {
|
||||
$cert_serial = db_escape_string( get_ssl_certificate_id());
|
||||
$cert_serial = db_escape_string(get_ssl_certificate_id());
|
||||
|
||||
if ($cert_serial) {
|
||||
$result = db_query( "SELECT login FROM ttrss_user_prefs, ttrss_users
|
||||
$result = db_query("SELECT login FROM ttrss_user_prefs, ttrss_users
|
||||
WHERE pref_name = 'SSL_CERT_SERIAL' AND value = '$cert_serial' AND
|
||||
owner_uid = ttrss_users.id");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
return db_escape_string( db_fetch_result($result, 0, "login"));
|
||||
return db_escape_string(db_fetch_result($result, 0, "login"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,10 +36,10 @@ class Auth_Remote extends Plugin implements IAuthModule {
|
||||
|
||||
|
||||
function authenticate($login, $password) {
|
||||
$try_login = db_escape_string( $_SERVER["REMOTE_USER"]);
|
||||
$try_login = db_escape_string($_SERVER["REMOTE_USER"]);
|
||||
|
||||
// php-cgi
|
||||
if (!$try_login) $try_login = db_escape_string( $_SERVER["REDIRECT_REMOTE_USER"]);
|
||||
if (!$try_login) $try_login = db_escape_string($_SERVER["REDIRECT_REMOTE_USER"]);
|
||||
|
||||
if (!$try_login) $try_login = $this->get_login_by_ssl_certificate();
|
||||
# if (!$try_login) $try_login = "test_qqq";
|
||||
@@ -58,15 +58,15 @@ class Auth_Remote extends Plugin implements IAuthModule {
|
||||
// update user name
|
||||
$fullname = $_SERVER['HTTP_USER_NAME'] ? $_SERVER['HTTP_USER_NAME'] : $_SERVER['AUTHENTICATE_CN'];
|
||||
if ($fullname){
|
||||
$fullname = db_escape_string( $fullname);
|
||||
db_query( "UPDATE ttrss_users SET full_name = '$fullname' WHERE id = " .
|
||||
$fullname = db_escape_string($fullname);
|
||||
db_query("UPDATE ttrss_users SET full_name = '$fullname' WHERE id = " .
|
||||
$user_id);
|
||||
}
|
||||
// update user mail
|
||||
$email = $_SERVER['HTTP_USER_MAIL'] ? $_SERVER['HTTP_USER_MAIL'] : $_SERVER['AUTHENTICATE_MAIL'];
|
||||
if ($email){
|
||||
$email = db_escape_string( $email);
|
||||
db_query( "UPDATE ttrss_users SET email = '$email' WHERE id = " .
|
||||
$email = db_escape_string($email);
|
||||
db_query("UPDATE ttrss_users SET email = '$email' WHERE id = " .
|
||||
$user_id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ class Close_Button extends Plugin {
|
||||
}
|
||||
|
||||
function hook_article_button($line) {
|
||||
if (!get_pref( "COMBINED_DISPLAY_MODE")) {
|
||||
if (!get_pref("COMBINED_DISPLAY_MODE")) {
|
||||
$rv = "<img src=\"plugins/close_button/button.png\"
|
||||
class='tagsPic' style=\"cursor : pointer\"
|
||||
onclick=\"closeArticlePanel()\"
|
||||
|
||||
@@ -41,13 +41,13 @@ class Digest extends Plugin implements IHandler {
|
||||
}
|
||||
|
||||
function digestgetcontents() {
|
||||
$article_id = db_escape_string( $_REQUEST['article_id']);
|
||||
$article_id = db_escape_string($_REQUEST['article_id']);
|
||||
|
||||
$result = db_query( "SELECT content,title,link,marked,published
|
||||
$result = db_query("SELECT content,title,link,marked,published
|
||||
FROM ttrss_entries, ttrss_user_entries
|
||||
WHERE id = '$article_id' AND ref_id = id AND owner_uid = ".$_SESSION['uid']);
|
||||
|
||||
$content = sanitize( db_fetch_result($result, 0, "content"));
|
||||
$content = sanitize(db_fetch_result($result, 0, "content"));
|
||||
$title = strip_tags(db_fetch_result($result, 0, "title"));
|
||||
$article_url = htmlspecialchars(db_fetch_result($result, 0, "link"));
|
||||
$marked = sql_bool_to_bool(db_fetch_result($result, 0, "marked"));
|
||||
@@ -55,15 +55,15 @@ class Digest extends Plugin implements IHandler {
|
||||
|
||||
print json_encode(array("article" =>
|
||||
array("id" => $article_id, "url" => $article_url,
|
||||
"tags" => get_article_tags( $article_id),
|
||||
"tags" => get_article_tags($article_id),
|
||||
"marked" => $marked, "published" => $published,
|
||||
"title" => $title, "content" => $content)));
|
||||
}
|
||||
|
||||
function digestupdate() {
|
||||
$feed_id = db_escape_string( $_REQUEST['feed_id']);
|
||||
$offset = db_escape_string( $_REQUEST['offset']);
|
||||
$seq = db_escape_string( $_REQUEST['seq']);
|
||||
$feed_id = db_escape_string($_REQUEST['feed_id']);
|
||||
$offset = db_escape_string($_REQUEST['offset']);
|
||||
$seq = db_escape_string($_REQUEST['seq']);
|
||||
|
||||
if (!$feed_id) $feed_id = -4;
|
||||
if (!$offset) $offset = 0;
|
||||
@@ -72,18 +72,18 @@ class Digest extends Plugin implements IHandler {
|
||||
|
||||
$reply['seq'] = $seq;
|
||||
|
||||
$headlines = API::api_get_headlines( $feed_id, 30, $offset,
|
||||
$headlines = API::api_get_headlines($feed_id, 30, $offset,
|
||||
'', ($feed_id == -4), true, false, "unread", "updated DESC", 0, 0);
|
||||
|
||||
$reply['headlines'] = array();
|
||||
$reply['headlines']['title'] = getFeedTitle( $feed_id);
|
||||
$reply['headlines']['title'] = getFeedTitle($feed_id);
|
||||
$reply['headlines']['content'] = $headlines;
|
||||
|
||||
print json_encode($reply);
|
||||
}
|
||||
|
||||
function digestinit() {
|
||||
$tmp_feeds = API::api_get_feeds( -4, true, false, 0);
|
||||
$tmp_feeds = API::api_get_feeds(-4, true, false, 0);
|
||||
|
||||
$params = array();
|
||||
$feeds = array();
|
||||
|
||||
@@ -34,9 +34,9 @@ class Embed_Original extends Plugin {
|
||||
}
|
||||
|
||||
function getUrl() {
|
||||
$id = db_escape_string( $_REQUEST['id']);
|
||||
$id = db_escape_string($_REQUEST['id']);
|
||||
|
||||
$result = db_query( "SELECT link
|
||||
$result = db_query("SELECT link
|
||||
FROM ttrss_entries, ttrss_user_entries
|
||||
WHERE id = '$id' AND ref_id = id AND owner_uid = " .$_SESSION['uid']);
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ class Example extends Plugin {
|
||||
}
|
||||
|
||||
function save() {
|
||||
$example_value = db_escape_string( $_POST["example_value"]);
|
||||
$example_value = db_escape_string($_POST["example_value"]);
|
||||
|
||||
$this->host->set($this, "example", $example_value);
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ class Example_VFeed extends Plugin {
|
||||
}
|
||||
|
||||
function get_headlines($feed_id, $options) {
|
||||
$qfh_ret = queryFeedHeadlines( -4,
|
||||
$qfh_ret = queryFeedHeadlines(-4,
|
||||
$options['limit'],
|
||||
$options['view_mode'], $options['cat_view'],
|
||||
$options['search'],
|
||||
|
||||
@@ -30,11 +30,11 @@ class GoogleReaderImport extends Plugin {
|
||||
|
||||
_debug("please enter your username:");
|
||||
|
||||
$username = db_escape_string( trim(read_stdin()));
|
||||
$username = db_escape_string(trim(read_stdin()));
|
||||
|
||||
_debug("looking up user: $username...");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_users
|
||||
$result = db_query("SELECT id FROM ttrss_users
|
||||
WHERE login = '$username'");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
@@ -111,19 +111,19 @@ class GoogleReaderImport extends Plugin {
|
||||
foreach ($doc['items'] as $item) {
|
||||
// print_r($item);
|
||||
|
||||
$guid = db_escape_string( mb_substr($item['id'], 0, 250));
|
||||
$title = db_escape_string( $item['title']);
|
||||
$guid = db_escape_string(mb_substr($item['id'], 0, 250));
|
||||
$title = db_escape_string($item['title']);
|
||||
$updated = date('Y-m-d h:i:s', $item['updated']);
|
||||
$link = '';
|
||||
$content = '';
|
||||
$author = db_escape_string( $item['author']);
|
||||
$author = db_escape_string($item['author']);
|
||||
$tags = array();
|
||||
$orig_feed_data = array();
|
||||
|
||||
if (is_array($item['alternate'])) {
|
||||
foreach ($item['alternate'] as $alt) {
|
||||
if (isset($alt['type']) && $alt['type'] == 'text/html') {
|
||||
$link = db_escape_string( $alt['href']);
|
||||
$link = db_escape_string($alt['href']);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -206,9 +206,9 @@ class GoogleReaderImport extends Plugin {
|
||||
|
||||
$content_hash = sha1($content);
|
||||
|
||||
if (filter_var( FILTER_VALIDATE_URL) === FALSE) return false;
|
||||
if (filter_var(FILTER_VALIDATE_URL) === FALSE) return false;
|
||||
|
||||
db_query( "BEGIN");
|
||||
db_query("BEGIN");
|
||||
|
||||
$feed_id = 'NULL';
|
||||
|
||||
@@ -254,18 +254,18 @@ class GoogleReaderImport extends Plugin {
|
||||
// locate archived entry to file entries in, we don't want to file them in actual feeds because of purging
|
||||
// maybe file marked in real feeds because eh
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_archived_feeds WHERE
|
||||
$result = db_query("SELECT id FROM ttrss_archived_feeds WHERE
|
||||
feed_url = '".$orig_feed_data['feed_url']."' AND owner_uid = $owner_uid");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
$orig_feed_id = db_fetch_result($result, 0, "id");
|
||||
} else {
|
||||
db_query( "INSERT INTO ttrss_archived_feeds
|
||||
db_query("INSERT INTO ttrss_archived_feeds
|
||||
(id, owner_uid, title, feed_url, site_url)
|
||||
SELECT id, owner_uid, title, feed_url, site_url from ttrss_feeds
|
||||
WHERE id = '$feed_id'");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_archived_feeds WHERE
|
||||
$result = db_query("SELECT id FROM ttrss_archived_feeds WHERE
|
||||
feed_url = '".$orig_feed_data['feed_url']."' AND owner_uid = $owner_uid");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
@@ -276,32 +276,32 @@ class GoogleReaderImport extends Plugin {
|
||||
|
||||
// delete temporarily inserted feed
|
||||
if ($feed_id && $feed_inserted) {
|
||||
db_query( "DELETE FROM ttrss_feeds WHERE id = $feed_id");
|
||||
db_query("DELETE FROM ttrss_feeds WHERE id = $feed_id");
|
||||
}
|
||||
|
||||
if (!$orig_feed_id) $orig_feed_id = 'NULL';
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_entries, ttrss_user_entries WHERE
|
||||
$result = db_query("SELECT id FROM ttrss_entries, ttrss_user_entries WHERE
|
||||
guid = '$guid' AND ref_id = id AND owner_uid = '$owner_uid' LIMIT 1");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
$result = db_query( "INSERT INTO ttrss_entries
|
||||
$result = db_query("INSERT INTO ttrss_entries
|
||||
(title, guid, link, updated, content, content_hash, date_entered, date_updated, author)
|
||||
VALUES
|
||||
('$title', '$guid', '$link', '$updated', '$content', '$content_hash', NOW(), NOW(), '$author')");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_entries WHERE guid = '$guid'");
|
||||
$result = db_query("SELECT id FROM ttrss_entries WHERE guid = '$guid'");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
$ref_id = db_fetch_result($result, 0, "id");
|
||||
|
||||
db_query( "INSERT INTO ttrss_user_entries
|
||||
db_query("INSERT INTO ttrss_user_entries
|
||||
(ref_id, uuid, feed_id, orig_feed_id, owner_uid, marked, tag_cache, label_cache,
|
||||
last_read, note, unread, last_marked)
|
||||
VALUES
|
||||
('$ref_id', '', NULL, $orig_feed_id, $owner_uid, $marked, '', '', NOW(), '', false, NOW())");
|
||||
|
||||
$result = db_query( "SELECT int_id FROM ttrss_user_entries, ttrss_entries
|
||||
$result = db_query("SELECT int_id FROM ttrss_user_entries, ttrss_entries
|
||||
WHERE owner_uid = $owner_uid AND ref_id = id AND ref_id = $ref_id");
|
||||
|
||||
if (db_num_rows($result) != 0 && is_array($tags)) {
|
||||
@@ -311,16 +311,16 @@ class GoogleReaderImport extends Plugin {
|
||||
|
||||
foreach ($tags as $tag) {
|
||||
|
||||
$tag = db_escape_string( sanitize_tag($tag));
|
||||
$tag = db_escape_string(sanitize_tag($tag));
|
||||
|
||||
if (!tag_is_valid($tag)) continue;
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_tags
|
||||
$result = db_query("SELECT id FROM ttrss_tags
|
||||
WHERE tag_name = '$tag' AND post_int_id = '$entry_int_id' AND
|
||||
owner_uid = '$owner_uid' LIMIT 1");
|
||||
|
||||
if ($result && db_num_rows($result) == 0) {
|
||||
db_query( "INSERT INTO ttrss_tags
|
||||
db_query("INSERT INTO ttrss_tags
|
||||
(owner_uid,tag_name,post_int_id)
|
||||
VALUES ('$owner_uid','$tag', '$entry_int_id')");
|
||||
}
|
||||
@@ -331,9 +331,9 @@ class GoogleReaderImport extends Plugin {
|
||||
/* update the cache */
|
||||
|
||||
$tags_to_cache = array_unique($tags_to_cache);
|
||||
$tags_str = db_escape_string( join(",", $tags_to_cache));
|
||||
$tags_str = db_escape_string(join(",", $tags_to_cache));
|
||||
|
||||
db_query( "UPDATE ttrss_user_entries
|
||||
db_query("UPDATE ttrss_user_entries
|
||||
SET tag_cache = '$tags_str' WHERE ref_id = '$ref_id'
|
||||
AND owner_uid = $owner_uid");
|
||||
}
|
||||
@@ -342,7 +342,7 @@ class GoogleReaderImport extends Plugin {
|
||||
}
|
||||
}
|
||||
|
||||
db_query( "COMMIT");
|
||||
db_query("COMMIT");
|
||||
|
||||
return $rc;
|
||||
}
|
||||
|
||||
@@ -26,11 +26,11 @@ class Import_Export extends Plugin implements IHandler {
|
||||
|
||||
_debug("please enter your username:");
|
||||
|
||||
$username = db_escape_string( trim(read_stdin()));
|
||||
$username = db_escape_string(trim(read_stdin()));
|
||||
|
||||
_debug("importing $filename for user $username...\n");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_users WHERE login = '$username'");
|
||||
$result = db_query("SELECT id FROM ttrss_users WHERE login = '$username'");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
print "error: could not find user $username.\n";
|
||||
@@ -39,11 +39,11 @@ class Import_Export extends Plugin implements IHandler {
|
||||
|
||||
$owner_uid = db_fetch_result($result, 0, "id");
|
||||
|
||||
$this->perform_data_import( $filename, $owner_uid);
|
||||
$this->perform_data_import($filename, $owner_uid);
|
||||
}
|
||||
|
||||
function save() {
|
||||
$example_value = db_escape_string( $_POST["example_value"]);
|
||||
$example_value = db_escape_string($_POST["example_value"]);
|
||||
|
||||
echo "Value set to $example_value (not really)";
|
||||
}
|
||||
@@ -117,12 +117,12 @@ class Import_Export extends Plugin implements IHandler {
|
||||
}
|
||||
|
||||
function exportrun() {
|
||||
$offset = (int) db_escape_string( $_REQUEST['offset']);
|
||||
$offset = (int) db_escape_string($_REQUEST['offset']);
|
||||
$exported = 0;
|
||||
$limit = 250;
|
||||
|
||||
if ($offset < 10000 && is_writable(CACHE_DIR . "/export")) {
|
||||
$result = db_query( "SELECT
|
||||
$result = db_query("SELECT
|
||||
ttrss_entries.guid,
|
||||
ttrss_entries.title,
|
||||
content,
|
||||
@@ -181,7 +181,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
print json_encode(array("exported" => $exported));
|
||||
}
|
||||
|
||||
function perform_data_import( $filename, $owner_uid) {
|
||||
function perform_data_import($filename, $owner_uid) {
|
||||
|
||||
$num_imported = 0;
|
||||
$num_processed = 0;
|
||||
@@ -234,7 +234,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
|
||||
foreach ($article_node->childNodes as $child) {
|
||||
if ($child->nodeName != 'label_cache')
|
||||
$article[$child->nodeName] = db_escape_string( $child->nodeValue);
|
||||
$article[$child->nodeName] = db_escape_string($child->nodeValue);
|
||||
else
|
||||
$article[$child->nodeName] = $child->nodeValue;
|
||||
}
|
||||
@@ -245,11 +245,11 @@ class Import_Export extends Plugin implements IHandler {
|
||||
|
||||
++$num_processed;
|
||||
|
||||
//db_query( "BEGIN");
|
||||
//db_query("BEGIN");
|
||||
|
||||
//print 'GUID:' . $article['guid'] . "\n";
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_entries
|
||||
$result = db_query("SELECT id FROM ttrss_entries
|
||||
WHERE guid = '".$article['guid']."'");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
@@ -282,7 +282,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
'0',
|
||||
'')");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_entries
|
||||
$result = db_query("SELECT id FROM ttrss_entries
|
||||
WHERE guid = '".$article['guid']."'");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
@@ -303,7 +303,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
$feed = 'NULL';
|
||||
|
||||
if ($feed_url && $feed_title) {
|
||||
$result = db_query( "SELECT id FROM ttrss_feeds
|
||||
$result = db_query("SELECT id FROM ttrss_feeds
|
||||
WHERE feed_url = '$feed_url' AND owner_uid = '$owner_uid'");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
@@ -311,10 +311,10 @@ class Import_Export extends Plugin implements IHandler {
|
||||
} else {
|
||||
// try autocreating feed in Uncategorized...
|
||||
|
||||
$result = db_query( "INSERT INTO ttrss_feeds (owner_uid,
|
||||
$result = db_query("INSERT INTO ttrss_feeds (owner_uid,
|
||||
feed_url, title) VALUES ($owner_uid, '$feed_url', '$feed_title')");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_feeds
|
||||
$result = db_query("SELECT id FROM ttrss_feeds
|
||||
WHERE feed_url = '$feed_url' AND owner_uid = '$owner_uid'");
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
@@ -332,7 +332,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
|
||||
//print "$ref_id / $feed / " . $article['title'] . "\n";
|
||||
|
||||
$result = db_query( "SELECT int_id FROM ttrss_user_entries
|
||||
$result = db_query("SELECT int_id FROM ttrss_user_entries
|
||||
WHERE ref_id = '$ref_id' AND owner_uid = '$owner_uid' AND $feed_qpart");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
@@ -342,7 +342,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
$score = (int) $article['score'];
|
||||
|
||||
$tag_cache = $article['tag_cache'];
|
||||
$label_cache = db_escape_string( $article['label_cache']);
|
||||
$label_cache = db_escape_string($article['label_cache']);
|
||||
$note = $article['note'];
|
||||
|
||||
//print "Importing " . $article['title'] . "<br/>";
|
||||
@@ -362,15 +362,15 @@ class Import_Export extends Plugin implements IHandler {
|
||||
if (is_array($label_cache) && $label_cache["no-labels"] != 1) {
|
||||
foreach ($label_cache as $label) {
|
||||
|
||||
label_create( $label[1],
|
||||
label_create($label[1],
|
||||
$label[2], $label[3], $owner_uid);
|
||||
|
||||
label_add_article( $ref_id, $label[1], $owner_uid);
|
||||
label_add_article($ref_id, $label[1], $owner_uid);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//db_query( "COMMIT");
|
||||
//db_query("COMMIT");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -438,7 +438,7 @@ class Import_Export extends Plugin implements IHandler {
|
||||
}
|
||||
|
||||
if (is_file($tmp_file)) {
|
||||
$this->perform_data_import( $tmp_file, $_SESSION['uid']);
|
||||
$this->perform_data_import($tmp_file, $_SESSION['uid']);
|
||||
unlink($tmp_file);
|
||||
} else {
|
||||
print_error(__('No file uploaded.'));
|
||||
|
||||
@@ -37,7 +37,7 @@ class Instances extends Plugin implements IHandler {
|
||||
// 2 - did not receive valid data
|
||||
// >10 - server error, code + 10 (e.g. 16 means server error 6)
|
||||
|
||||
function get_linked_feeds( $instance_id = false) {
|
||||
function get_linked_feeds($instance_id = false) {
|
||||
if ($instance_id)
|
||||
$instance_qpart = "id = '$instance_id' AND ";
|
||||
else
|
||||
@@ -49,7 +49,7 @@ class Instances extends Plugin implements IHandler {
|
||||
$date_qpart = "last_connected < DATE_SUB(NOW(), INTERVAL 6 HOUR)";
|
||||
}
|
||||
|
||||
$result = db_query( "SELECT id, access_key, access_url FROM ttrss_linked_instances
|
||||
$result = db_query("SELECT id, access_key, access_url FROM ttrss_linked_instances
|
||||
WHERE $instance_qpart $date_qpart ORDER BY last_connected");
|
||||
|
||||
while ($line = db_fetch_assoc($result)) {
|
||||
@@ -77,7 +77,7 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
// access denied
|
||||
if ($status == 16) {
|
||||
db_query( "DELETE FROM ttrss_linked_feeds
|
||||
db_query("DELETE FROM ttrss_linked_feeds
|
||||
WHERE instance_id = '$id'");
|
||||
}
|
||||
} else {
|
||||
@@ -85,16 +85,16 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
if (count($feeds['feeds']) > 0) {
|
||||
|
||||
db_query( "DELETE FROM ttrss_linked_feeds
|
||||
db_query("DELETE FROM ttrss_linked_feeds
|
||||
WHERE instance_id = '$id'");
|
||||
|
||||
foreach ($feeds['feeds'] as $feed) {
|
||||
$feed_url = db_escape_string( $feed['feed_url']);
|
||||
$title = db_escape_string( $feed['title']);
|
||||
$subscribers = db_escape_string( $feed['subscribers']);
|
||||
$site_url = db_escape_string( $feed['site_url']);
|
||||
$feed_url = db_escape_string($feed['feed_url']);
|
||||
$title = db_escape_string($feed['title']);
|
||||
$subscribers = db_escape_string($feed['subscribers']);
|
||||
$site_url = db_escape_string($feed['site_url']);
|
||||
|
||||
db_query( "INSERT INTO ttrss_linked_feeds
|
||||
db_query("INSERT INTO ttrss_linked_feeds
|
||||
(feed_url, site_url, title, subscribers, instance_id, created, updated)
|
||||
VALUES
|
||||
('$feed_url', '$site_url', '$title', '$subscribers', '$id', NOW(), NOW())");
|
||||
@@ -119,7 +119,7 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
_debug("Status: $status");
|
||||
|
||||
db_query( "UPDATE ttrss_linked_instances SET
|
||||
db_query("UPDATE ttrss_linked_instances SET
|
||||
last_status_out = '$status', last_connected = NOW() WHERE id = '$id'");
|
||||
|
||||
}
|
||||
@@ -127,7 +127,7 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
|
||||
function get_feeds() {
|
||||
$this->get_linked_feeds( false);
|
||||
$this->get_linked_feeds(false);
|
||||
}
|
||||
|
||||
function get_prefs_js() {
|
||||
@@ -164,37 +164,37 @@ class Instances extends Plugin implements IHandler {
|
||||
}
|
||||
|
||||
function remove() {
|
||||
$ids = db_escape_string( $_REQUEST['ids']);
|
||||
$ids = db_escape_string($_REQUEST['ids']);
|
||||
|
||||
db_query( "DELETE FROM ttrss_linked_instances WHERE
|
||||
db_query("DELETE FROM ttrss_linked_instances WHERE
|
||||
id IN ($ids)");
|
||||
}
|
||||
|
||||
function add() {
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$access_url = db_escape_string( $_REQUEST["access_url"]);
|
||||
$access_key = db_escape_string( $_REQUEST["access_key"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$access_url = db_escape_string($_REQUEST["access_url"]);
|
||||
$access_key = db_escape_string($_REQUEST["access_key"]);
|
||||
|
||||
db_query( "BEGIN");
|
||||
db_query("BEGIN");
|
||||
|
||||
$result = db_query( "SELECT id FROM ttrss_linked_instances
|
||||
$result = db_query("SELECT id FROM ttrss_linked_instances
|
||||
WHERE access_url = '$access_url'");
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
db_query( "INSERT INTO ttrss_linked_instances
|
||||
db_query("INSERT INTO ttrss_linked_instances
|
||||
(access_url, access_key, last_connected, last_status_in, last_status_out)
|
||||
VALUES
|
||||
('$access_url', '$access_key', '1970-01-01', -1, -1)");
|
||||
|
||||
}
|
||||
|
||||
db_query( "COMMIT");
|
||||
db_query("COMMIT");
|
||||
}
|
||||
|
||||
function edit() {
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
|
||||
$result = db_query( "SELECT * FROM ttrss_linked_instances WHERE
|
||||
$result = db_query("SELECT * FROM ttrss_linked_instances WHERE
|
||||
id = '$id'");
|
||||
|
||||
print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"id\" value=\"$id\">";
|
||||
@@ -250,11 +250,11 @@ class Instances extends Plugin implements IHandler {
|
||||
}
|
||||
|
||||
function editSave() {
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$access_url = db_escape_string( $_REQUEST["access_url"]);
|
||||
$access_key = db_escape_string( $_REQUEST["access_key"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$access_url = db_escape_string($_REQUEST["access_url"]);
|
||||
$access_key = db_escape_string($_REQUEST["access_key"]);
|
||||
|
||||
db_query( "UPDATE ttrss_linked_instances SET
|
||||
db_query("UPDATE ttrss_linked_instances SET
|
||||
access_key = '$access_key', access_url = '$access_url',
|
||||
last_connected = '1970-01-01'
|
||||
WHERE id = '$id'");
|
||||
@@ -274,7 +274,7 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
print "<div id=\"pref-instance-toolbar\" dojoType=\"dijit.Toolbar\">";
|
||||
|
||||
$sort = db_escape_string( $_REQUEST["sort"]);
|
||||
$sort = db_escape_string($_REQUEST["sort"]);
|
||||
|
||||
if (!$sort || $sort == "undefined") {
|
||||
$sort = "access_url";
|
||||
@@ -295,7 +295,7 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
print "</div>"; #toolbar
|
||||
|
||||
$result = db_query( "SELECT *,
|
||||
$result = db_query("SELECT *,
|
||||
(SELECT COUNT(*) FROM ttrss_linked_feeds
|
||||
WHERE instance_id = ttrss_linked_instances.id) AS num_feeds
|
||||
FROM ttrss_linked_instances
|
||||
@@ -324,7 +324,7 @@ class Instances extends Plugin implements IHandler {
|
||||
$id = $line['id'];
|
||||
$this_row_id = "id=\"LIRR-$id\"";
|
||||
|
||||
$line["last_connected"] = make_local_datetime( $line["last_connected"], false);
|
||||
$line["last_connected"] = make_local_datetime($line["last_connected"], false);
|
||||
|
||||
print "<tr class=\"$class\" $this_row_id>";
|
||||
|
||||
@@ -361,17 +361,17 @@ class Instances extends Plugin implements IHandler {
|
||||
|
||||
function fbexport() {
|
||||
|
||||
$access_key = db_escape_string( $_POST["key"]);
|
||||
$access_key = db_escape_string($_POST["key"]);
|
||||
|
||||
// TODO: rate limit checking using last_connected
|
||||
$result = db_query( "SELECT id FROM ttrss_linked_instances
|
||||
$result = db_query("SELECT id FROM ttrss_linked_instances
|
||||
WHERE access_key = '$access_key'");
|
||||
|
||||
if (db_num_rows($result) == 1) {
|
||||
|
||||
$instance_id = db_fetch_result($result, 0, "id");
|
||||
|
||||
$result = db_query( "SELECT feed_url, site_url, title, subscribers
|
||||
$result = db_query("SELECT feed_url, site_url, title, subscribers
|
||||
FROM ttrss_feedbrowser_cache ORDER BY subscribers DESC LIMIT 100");
|
||||
|
||||
$feeds = array();
|
||||
@@ -380,7 +380,7 @@ class Instances extends Plugin implements IHandler {
|
||||
array_push($feeds, $line);
|
||||
}
|
||||
|
||||
db_query( "UPDATE ttrss_linked_instances SET
|
||||
db_query("UPDATE ttrss_linked_instances SET
|
||||
last_status_in = 1 WHERE id = '$instance_id'");
|
||||
|
||||
print json_encode(array("feeds" => $feeds));
|
||||
|
||||
@@ -28,13 +28,13 @@ class Mail extends Plugin {
|
||||
|
||||
function emailArticle() {
|
||||
|
||||
$param = db_escape_string( $_REQUEST['param']);
|
||||
$param = db_escape_string($_REQUEST['param']);
|
||||
|
||||
print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"op\" value=\"pluginhandler\">";
|
||||
print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"plugin\" value=\"mail\">";
|
||||
print "<input dojoType=\"dijit.form.TextBox\" style=\"display : none\" name=\"method\" value=\"sendEmail\">";
|
||||
|
||||
$result = db_query( "SELECT email, full_name FROM ttrss_users WHERE
|
||||
$result = db_query("SELECT email, full_name FROM ttrss_users WHERE
|
||||
id = " . $_SESSION["uid"]);
|
||||
|
||||
$user_email = htmlspecialchars(db_fetch_result($result, 0, "email"));
|
||||
@@ -56,7 +56,7 @@ class Mail extends Plugin {
|
||||
$tpl->setVariable('USER_EMAIL', $user_email, true);
|
||||
$tpl->setVariable('TTRSS_HOST', $_SERVER["HTTP_HOST"], true);
|
||||
|
||||
$result = db_query( "SELECT link, content, title
|
||||
$result = db_query("SELECT link, content, title
|
||||
FROM ttrss_user_entries, ttrss_entries WHERE id = ref_id AND
|
||||
id IN ($param) AND owner_uid = " . $_SESSION["uid"]);
|
||||
|
||||
@@ -147,7 +147,7 @@ class Mail extends Plugin {
|
||||
if (!$rc) {
|
||||
$reply['error'] = $mail->ErrorInfo;
|
||||
} else {
|
||||
save_email_address( db_escape_string($destination));
|
||||
save_email_address(db_escape_string($destination));
|
||||
$reply['message'] = "UPDATE_COUNTERS";
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ class Mail extends Plugin {
|
||||
}
|
||||
|
||||
function completeEmails() {
|
||||
$search = db_escape_string( $_REQUEST["search"]);
|
||||
$search = db_escape_string($_REQUEST["search"]);
|
||||
|
||||
print "<ul>";
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ class MailTo extends Plugin {
|
||||
|
||||
function emailArticle() {
|
||||
|
||||
$param = db_escape_string( $_REQUEST['param']);
|
||||
$param = db_escape_string($_REQUEST['param']);
|
||||
|
||||
require_once "lib/MiniTemplator.class.php";
|
||||
|
||||
@@ -41,7 +41,7 @@ class MailTo extends Plugin {
|
||||
$tpl->setVariable('TTRSS_HOST', $_SERVER["HTTP_HOST"], true);
|
||||
|
||||
|
||||
$result = db_query( "SELECT link, content, title
|
||||
$result = db_query("SELECT link, content, title
|
||||
FROM ttrss_user_entries, ttrss_entries WHERE id = ref_id AND
|
||||
id IN ($param) AND owner_uid = " . $_SESSION["uid"]);
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ class Mark_Button extends Plugin {
|
||||
$marked_pic = "";
|
||||
$id = $line["id"];
|
||||
|
||||
if (get_pref( "COMBINED_DISPLAY_MODE")) {
|
||||
if (get_pref("COMBINED_DISPLAY_MODE")) {
|
||||
if (sql_bool_to_bool($line["marked"])) {
|
||||
$marked_pic = "<img
|
||||
src=\"images/mark_set.svg\"
|
||||
|
||||
@@ -20,13 +20,13 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$feed_id = db_escape_string( $_REQUEST["feed"]);
|
||||
$cat_id = db_escape_string( $_REQUEST["cat"]);
|
||||
$is_cat = db_escape_string( $_REQUEST["is_cat"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$feed_id = db_escape_string($_REQUEST["feed"]);
|
||||
$cat_id = db_escape_string($_REQUEST["cat"]);
|
||||
$is_cat = db_escape_string($_REQUEST["is_cat"]);
|
||||
|
||||
render_article( $id, $feed_id, $cat_id, $is_cat);
|
||||
render_article($id, $feed_id, $cat_id, $is_cat);
|
||||
?>
|
||||
|
||||
|
||||
@@ -31,28 +31,28 @@
|
||||
|
||||
switch ($op) {
|
||||
case "toggleMarked":
|
||||
$cmode = db_escape_string( $_REQUEST["mark"]);
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$cmode = db_escape_string($_REQUEST["mark"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
|
||||
markArticlesById( array($id), $cmode);
|
||||
markArticlesById(array($id), $cmode);
|
||||
break;
|
||||
case "togglePublished":
|
||||
$cmode = db_escape_string( $_REQUEST["pub"]);
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$cmode = db_escape_string($_REQUEST["pub"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
|
||||
publishArticlesById( array($id), $cmode);
|
||||
publishArticlesById(array($id), $cmode);
|
||||
break;
|
||||
case "toggleUnread":
|
||||
$cmode = db_escape_string( $_REQUEST["unread"]);
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$cmode = db_escape_string($_REQUEST["unread"]);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
|
||||
catchupArticlesById( array($id), $cmode);
|
||||
catchupArticlesById(array($id), $cmode);
|
||||
break;
|
||||
|
||||
case "setPref":
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$value = db_escape_string( $_REQUEST["to"]);
|
||||
mobile_set_pref( $id, $value);
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$value = db_escape_string($_REQUEST["to"]);
|
||||
mobile_set_pref($id, $value);
|
||||
print_r($_SESSION);
|
||||
break;
|
||||
default:
|
||||
|
||||
@@ -20,10 +20,10 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
|
||||
$cat_id = db_escape_string( $_REQUEST["id"]);
|
||||
$cat_id = db_escape_string($_REQUEST["id"]);
|
||||
|
||||
render_category( $cat_id);
|
||||
render_category($cat_id);
|
||||
?>
|
||||
|
||||
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
|
||||
$feed_id = db_escape_string( $_REQUEST["id"]);
|
||||
$cat_id = db_escape_string( $_REQUEST["cat"]);
|
||||
$offset = (int) db_escape_string( $_REQUEST["skip"]);
|
||||
$search = db_escape_string( $_REQUEST["search"]);
|
||||
$is_cat = (bool) db_escape_string( $_REQUEST["is_cat"]);
|
||||
$feed_id = db_escape_string($_REQUEST["id"]);
|
||||
$cat_id = db_escape_string($_REQUEST["cat"]);
|
||||
$offset = (int) db_escape_string($_REQUEST["skip"]);
|
||||
$search = db_escape_string($_REQUEST["search"]);
|
||||
$is_cat = (bool) db_escape_string($_REQUEST["is_cat"]);
|
||||
|
||||
render_headlines_list( $feed_id, $cat_id, $offset, $search, $is_cat);
|
||||
render_headlines_list($feed_id, $cat_id, $offset, $search, $is_cat);
|
||||
?>
|
||||
|
||||
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
|
||||
$use_cats = mobile_get_pref( 'ENABLE_CATS');
|
||||
$offset = (int) db_escape_string( $_REQUEST["skip"]);
|
||||
$use_cats = mobile_get_pref('ENABLE_CATS');
|
||||
$offset = (int) db_escape_string($_REQUEST["skip"]);
|
||||
|
||||
if ($use_cats) {
|
||||
render_categories_list($link);
|
||||
} else {
|
||||
render_flat_feed_list( $offset);
|
||||
render_flat_feed_list($offset);
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
@@ -76,13 +76,13 @@
|
||||
</div>
|
||||
|
||||
<?php
|
||||
$use_cats = mobile_get_pref( 'ENABLE_CATS');
|
||||
$offset = (int) db_escape_string( $_REQUEST["skip"]);
|
||||
$use_cats = mobile_get_pref('ENABLE_CATS');
|
||||
$offset = (int) db_escape_string($_REQUEST["skip"]);
|
||||
|
||||
if ($use_cats) {
|
||||
render_categories_list($link);
|
||||
} else {
|
||||
render_flat_feed_list( $offset);
|
||||
render_flat_feed_list($offset);
|
||||
}
|
||||
?>
|
||||
|
||||
|
||||
@@ -8,34 +8,34 @@
|
||||
|
||||
/* TODO replace with interface to db-prefs */
|
||||
|
||||
function mobile_pref_toggled( $id) {
|
||||
if (get_pref( "_MOBILE_$id"))
|
||||
function mobile_pref_toggled($id) {
|
||||
if (get_pref("_MOBILE_$id"))
|
||||
return "true";
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
||||
function mobile_get_pref( $id) {
|
||||
function mobile_get_pref($id) {
|
||||
//return $_SESSION["mobile-prefs"][$id];
|
||||
return get_pref( "_MOBILE_$id");
|
||||
return get_pref("_MOBILE_$id");
|
||||
}
|
||||
|
||||
function mobile_set_pref( $id, $value) {
|
||||
function mobile_set_pref($id, $value) {
|
||||
//$_SESSION["mobile-prefs"][$id] = $value;
|
||||
return set_pref( "_MOBILE_$id", $value);
|
||||
return set_pref("_MOBILE_$id", $value);
|
||||
}
|
||||
|
||||
function mobile_feed_has_icon($id) {
|
||||
return file_exists("../../".ICONS_DIR."/$id.ico");
|
||||
}
|
||||
|
||||
function render_flat_feed_list( $offset) {
|
||||
function render_flat_feed_list($offset) {
|
||||
$owner_uid = $_SESSION["uid"];
|
||||
$limit = 0;
|
||||
|
||||
if (!$offset) $offset = 0;
|
||||
|
||||
if (mobile_get_pref( "SORT_FEEDS_UNREAD")) {
|
||||
if (mobile_get_pref("SORT_FEEDS_UNREAD")) {
|
||||
$order_by = "unread DESC, title";
|
||||
} else {
|
||||
$order_by = "title";
|
||||
@@ -47,7 +47,7 @@
|
||||
$limit_qpart = "";
|
||||
}
|
||||
|
||||
$result = db_query( "SELECT id,
|
||||
$result = db_query("SELECT id,
|
||||
title,
|
||||
(SELECT COUNT(id) FROM ttrss_entries,ttrss_user_entries
|
||||
WHERE feed_id = ttrss_feeds.id AND unread = true
|
||||
@@ -85,7 +85,7 @@
|
||||
$icon_url = "../../images/blank_icon.gif";
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
print "<li class='$class'><a href='feed.php?id=$id'>" .
|
||||
"<img class='tinyIcon' src='$icon_url'/>".
|
||||
$line["title"] . "</a></li>";
|
||||
@@ -103,7 +103,7 @@
|
||||
|
||||
}
|
||||
|
||||
function render_category( $cat_id, $offset) {
|
||||
function render_category($cat_id, $offset) {
|
||||
$owner_uid = $_SESSION["uid"];
|
||||
|
||||
if ($cat_id >= 0) {
|
||||
@@ -114,13 +114,13 @@
|
||||
$cat_query = "cat_id IS NULL";
|
||||
}
|
||||
|
||||
if (mobile_get_pref( "SORT_FEEDS_UNREAD")) {
|
||||
if (mobile_get_pref("SORT_FEEDS_UNREAD")) {
|
||||
$order_by = "unread DESC, title";
|
||||
} else {
|
||||
$order_by = "title";
|
||||
}
|
||||
|
||||
$result = db_query( "SELECT id,
|
||||
$result = db_query("SELECT id,
|
||||
title,
|
||||
(SELECT COUNT(id) FROM ttrss_entries,ttrss_user_entries
|
||||
WHERE feed_id = ttrss_feeds.id AND unread = true
|
||||
@@ -132,7 +132,7 @@
|
||||
$cat_query
|
||||
ORDER BY $order_by");
|
||||
|
||||
$title = getCategoryTitle( $cat_id);
|
||||
$title = getCategoryTitle($cat_id);
|
||||
|
||||
print "<ul id='cat-$cat_id' title='$title' myBackLabel='".__("Home")."'
|
||||
myBackHref='home.php'>";
|
||||
@@ -158,7 +158,7 @@
|
||||
$icon_url = "../../images/blank_icon.gif";
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
print "<li class='$class'><a href='feed.php?id=$id&cat=$cat_id'>" .
|
||||
"<img class='tinyIcon' src='$icon_url'/>".
|
||||
$line["title"] . "</a></li>";
|
||||
@@ -174,8 +174,8 @@
|
||||
myBackHref='home.php'>";
|
||||
|
||||
foreach (array(-4, -3, -1, -2, 0) as $id) {
|
||||
$title = getFeedTitle( $id);
|
||||
$unread = getFeedUnread( $id, false);
|
||||
$title = getFeedTitle($id);
|
||||
$unread = getFeedUnread($id, false);
|
||||
$icon = getFeedIcon($id);
|
||||
|
||||
if ($unread > 0) {
|
||||
@@ -185,7 +185,7 @@
|
||||
$class = 'oldItem';
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
print "<li class='$class'>
|
||||
<a href='feed.php?id=$id&cat=-1'>
|
||||
<img class='tinyIcon' src='../$icon'/>$title</a></li>";
|
||||
@@ -200,7 +200,7 @@
|
||||
print "<ul id='cat--2' title='$title' myBackLabel='".__("Home")."'
|
||||
myBackHref='home.php'>";
|
||||
|
||||
$result = db_query( "SELECT id, caption FROM ttrss_labels2
|
||||
$result = db_query("SELECT id, caption FROM ttrss_labels2
|
||||
WHERE owner_uid = '$owner_uid'");
|
||||
|
||||
$label_data = array();
|
||||
@@ -209,7 +209,7 @@
|
||||
|
||||
$id = label_to_feed_id($line["id"]);
|
||||
|
||||
$unread = getFeedUnread( $id);
|
||||
$unread = getFeedUnread($id);
|
||||
$title = $line["caption"];
|
||||
|
||||
if ($unread > 0) {
|
||||
@@ -219,7 +219,7 @@
|
||||
$class = 'oldItem';
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
print "<li class='$class'>
|
||||
<a href='feed.php?id=$id&cat=-2'>$title</a></li>";
|
||||
}
|
||||
@@ -231,7 +231,7 @@
|
||||
function render_categories_list($link) {
|
||||
$owner_uid = $_SESSION["uid"];
|
||||
|
||||
$cat_browse = mobile_get_pref( "BROWSE_CATS");
|
||||
$cat_browse = mobile_get_pref("BROWSE_CATS");
|
||||
|
||||
print '<ul id="home" title="'.__('Home').'" selected="true"
|
||||
myBackLabel="'.__('Logout').'" myBackHref="logout.php" myBackTarget="_self">';
|
||||
@@ -239,8 +239,8 @@
|
||||
// print "<li><a href='#searchForm'>Search...</a></li>";
|
||||
|
||||
foreach (array(-1, -2) as $id) {
|
||||
$title = getCategoryTitle( $id);
|
||||
$unread = getFeedUnread( $id, true);
|
||||
$title = getCategoryTitle($id);
|
||||
$unread = getFeedUnread($id, true);
|
||||
if ($unread > 0) {
|
||||
$title = $title . " ($unread)";
|
||||
$class = '';
|
||||
@@ -254,7 +254,7 @@
|
||||
print "<li class='$class'><a href='feed.php?id=$id&is_cat=true'>$title</a></li>";
|
||||
}
|
||||
|
||||
$result = db_query( "SELECT
|
||||
$result = db_query("SELECT
|
||||
ttrss_feed_categories.id,
|
||||
ttrss_feed_categories.title,
|
||||
COUNT(ttrss_feeds.id) AS num_feeds
|
||||
@@ -269,7 +269,7 @@
|
||||
|
||||
if ($line["num_feeds"] > 0) {
|
||||
|
||||
$unread = getFeedUnread( $line["id"], true);
|
||||
$unread = getFeedUnread($line["id"], true);
|
||||
$id = $line["id"];
|
||||
|
||||
if ($unread > 0) {
|
||||
@@ -279,7 +279,7 @@
|
||||
$class = 'oldItem';
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
|
||||
if ($cat_browse)
|
||||
print "<li class='$class'><a href='cat.php?id=$id'>" .
|
||||
@@ -292,13 +292,13 @@
|
||||
}
|
||||
|
||||
|
||||
$result = db_query( "SELECT COUNT(*) AS nf FROM ttrss_feeds WHERE
|
||||
$result = db_query("SELECT COUNT(*) AS nf FROM ttrss_feeds WHERE
|
||||
cat_id IS NULL and owner_uid = '$owner_uid'");
|
||||
|
||||
$num_feeds = db_fetch_result($result, 0, "nf");
|
||||
|
||||
if ($num_feeds > 0) {
|
||||
$unread = getFeedUnread( 0, true);
|
||||
$unread = getFeedUnread(0, true);
|
||||
$title = "Uncategorized";
|
||||
|
||||
if ($unread > 0) {
|
||||
@@ -308,7 +308,7 @@
|
||||
$class = 'oldItem';
|
||||
}
|
||||
|
||||
if ($unread > 0 || !mobile_get_pref( "HIDE_READ")) {
|
||||
if ($unread > 0 || !mobile_get_pref("HIDE_READ")) {
|
||||
if ($cat_browse)
|
||||
print "<li class='$class'><a href='cat.php?id=0'>$title</a></li>";
|
||||
else
|
||||
@@ -320,14 +320,14 @@
|
||||
print "</ul>";
|
||||
}
|
||||
|
||||
function render_headlines_list( $feed_id, $cat_id, $offset, $search,
|
||||
function render_headlines_list($feed_id, $cat_id, $offset, $search,
|
||||
$is_cat = false) {
|
||||
|
||||
$feed_id = $feed_id;
|
||||
$limit = 15;
|
||||
$filter = '';
|
||||
|
||||
if (!mobile_get_pref( "HIDE_READ"))
|
||||
if (!mobile_get_pref("HIDE_READ"))
|
||||
$view_mode = "all_articles";
|
||||
else
|
||||
$view_mode = 'adaptive';
|
||||
@@ -338,9 +338,9 @@
|
||||
$search_mode = '';
|
||||
}
|
||||
|
||||
$qfh_ret = queryFeedHeadlines( $feed_id, $limit,
|
||||
$qfh_ret = queryFeedHeadlines($feed_id, $limit,
|
||||
$view_mode, $is_cat, $search, $search_mode,
|
||||
"score DESC, date_entered ".(mobile_get_pref( 'REVERSE_HEADLINES') ? 'ASC' : 'DESC'), $offset);
|
||||
"score DESC, date_entered ".(mobile_get_pref('REVERSE_HEADLINES') ? 'ASC' : 'DESC'), $offset);
|
||||
|
||||
$result = $qfh_ret[0];
|
||||
$feed_title = $qfh_ret[1];
|
||||
@@ -364,7 +364,7 @@
|
||||
</form>";
|
||||
|
||||
if ($cat_id) {
|
||||
$cat_title = getCategoryTitle( $cat_id);
|
||||
$cat_title = getCategoryTitle($cat_id);
|
||||
|
||||
print "<ul id=\"feed-$feed_id\" title=\"$feed_title\" selected=\"true\"
|
||||
myBackLabel='$cat_title' myBackHref='cat.php?id=$cat_id'>";
|
||||
@@ -413,7 +413,7 @@
|
||||
// print "<a target='_replace' href='feed.php?id=$feed_id&cat=$cat_id&skip=0'>Next $limit articles...</a>";
|
||||
|
||||
$next_offset = $offset + $num_headlines;
|
||||
$num_unread = getFeedUnread( $feed_id, $is_cat);
|
||||
$num_unread = getFeedUnread($feed_id, $is_cat);
|
||||
|
||||
/* FIXME needs normal implementation */
|
||||
|
||||
@@ -435,7 +435,7 @@
|
||||
|
||||
}
|
||||
|
||||
function render_article( $id, $feed_id, $cat_id, $is_cat) {
|
||||
function render_article($id, $feed_id, $cat_id, $is_cat) {
|
||||
|
||||
$query = "SELECT title,link,content,feed_id,comments,int_id,
|
||||
marked,unread,published,
|
||||
@@ -445,33 +445,33 @@
|
||||
WHERE id = '$id' AND ref_id = id AND owner_uid = " .
|
||||
$_SESSION["uid"] ;
|
||||
|
||||
$result = db_query( $query);
|
||||
$result = db_query($query);
|
||||
|
||||
if (db_num_rows($result) != 0) {
|
||||
|
||||
$line = db_fetch_assoc($result);
|
||||
|
||||
$tmp_result = db_query( "UPDATE ttrss_user_entries
|
||||
$tmp_result = db_query("UPDATE ttrss_user_entries
|
||||
SET unread = false,last_read = NOW()
|
||||
WHERE ref_id = '$id'
|
||||
AND owner_uid = " . $_SESSION["uid"]);
|
||||
|
||||
$updated_fmt = make_local_datetime( $line['updated'], false);
|
||||
$updated_fmt = make_local_datetime($line['updated'], false);
|
||||
|
||||
$title = $line["title"];
|
||||
$article_link = $line["link"];
|
||||
|
||||
if (!$is_cat)
|
||||
$feed_title = getFeedTitle( $feed_id);
|
||||
$feed_title = getFeedTitle($feed_id);
|
||||
else
|
||||
$feed_title = getCategoryTitle( $feed_id);
|
||||
$feed_title = getCategoryTitle($feed_id);
|
||||
|
||||
print "<div class=\"panel\" id=\"article-$id\" title=\"$title\"
|
||||
selected=\"true\"
|
||||
myBackLabel='$feed_title' myBackHref='feed.php?id=$feed_id&cat=$cat_id&is_cat=$is_cat'>";
|
||||
|
||||
if ($line['feed_id'] != $feed_id) {
|
||||
$real_feed_title = getFeedTitle( $line['feed_id']);
|
||||
$real_feed_title = getFeedTitle($line['feed_id']);
|
||||
$real_feed_id = $line['feed_id'];
|
||||
$feed_link = "(<a href=\"feed.php?id=$real_feed_id\">$real_feed_title</a>)";
|
||||
}
|
||||
@@ -497,10 +497,10 @@
|
||||
|
||||
// print "</fieldset>";
|
||||
|
||||
$content = sanitize( $line["content"]);
|
||||
$content = sanitize($line["content"]);
|
||||
$content = preg_replace("/href=/i", "target=\"_blank\" href=", $content);
|
||||
|
||||
if (!mobile_get_pref( "SHOW_IMAGES")) {
|
||||
if (!mobile_get_pref("SHOW_IMAGES")) {
|
||||
$content = preg_replace('/<img[^>]+>/is', '', $content);
|
||||
}
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
init_plugins($link);
|
||||
|
||||
login_sequence( true);
|
||||
login_sequence(true);
|
||||
?>
|
||||
|
||||
<div class="panel" id="prefs" selected="yes" title="Preferences"
|
||||
@@ -32,33 +32,33 @@
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Enable categories') ?></label>
|
||||
<div class="toggle" id="ENABLE_CATS" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "ENABLE_CATS") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="ENABLE_CATS" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("ENABLE_CATS") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Browse categories like folders') ?></label>
|
||||
<div class="toggle" id="BROWSE_CATS" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "BROWSE_CATS") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="BROWSE_CATS" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("BROWSE_CATS") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Show images in posts') ?></label>
|
||||
<div class="toggle" id="SHOW_IMAGES" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "SHOW_IMAGES") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="SHOW_IMAGES" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("SHOW_IMAGES") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Hide read articles and feeds') ?></label>
|
||||
<div class="toggle" id="HIDE_READ" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "HIDE_READ") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="HIDE_READ" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("HIDE_READ") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Sort feeds by unread count') ?></label>
|
||||
<div class="toggle" id="SORT_FEEDS_UNREAD" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "SORT_FEEDS_UNREAD") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="SORT_FEEDS_UNREAD" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("SORT_FEEDS_UNREAD") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<label><?php echo __('Reverse headline order (oldest first)') ?></label>
|
||||
<div class="toggle" id="REVERSE_HEADLINES" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled( "REVERSE_HEADLINES") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
<div class="toggle" id="REVERSE_HEADLINES" onclick="setPref(this)" toggled="<?php echo mobile_pref_toggled("REVERSE_HEADLINES") ?>"><span class="thumb"></span><span class="toggleOn"><?php echo __('ON') ?></span><span class="toggleOff"><?php echo __('OFF') ?></span></div>
|
||||
</div>
|
||||
|
||||
</fieldset>
|
||||
|
||||
@@ -27,9 +27,9 @@ class Note extends Plugin {
|
||||
}
|
||||
|
||||
function edit() {
|
||||
$param = db_escape_string( $_REQUEST['param']);
|
||||
$param = db_escape_string($_REQUEST['param']);
|
||||
|
||||
$result = db_query( "SELECT note FROM ttrss_user_entries WHERE
|
||||
$result = db_query("SELECT note FROM ttrss_user_entries WHERE
|
||||
ref_id = '$param' AND owner_uid = " . $_SESSION['uid']);
|
||||
|
||||
$note = db_fetch_result($result, 0, "note");
|
||||
@@ -56,10 +56,10 @@ class Note extends Plugin {
|
||||
}
|
||||
|
||||
function setNote() {
|
||||
$id = db_escape_string( $_REQUEST["id"]);
|
||||
$note = trim(strip_tags(db_escape_string( $_REQUEST["note"])));
|
||||
$id = db_escape_string($_REQUEST["id"]);
|
||||
$note = trim(strip_tags(db_escape_string($_REQUEST["note"])));
|
||||
|
||||
db_query( "UPDATE ttrss_user_entries SET note = '$note'
|
||||
db_query("UPDATE ttrss_user_entries SET note = '$note'
|
||||
WHERE ref_id = '$id' AND owner_uid = " . $_SESSION["uid"]);
|
||||
|
||||
$formatted_note = format_article_note($id, $note);
|
||||
|
||||
@@ -88,7 +88,7 @@ class NSFW extends Plugin {
|
||||
}
|
||||
|
||||
function save() {
|
||||
$tags = explode(",", db_escape_string( $_POST["tags"]));
|
||||
$tags = explode(",", db_escape_string($_POST["tags"]));
|
||||
$tags = array_map("trim", $tags);
|
||||
$tags = array_map("mb_strtolower", $tags);
|
||||
$tags = join(", ", $tags);
|
||||
|
||||
@@ -26,9 +26,9 @@ class Share extends Plugin {
|
||||
}
|
||||
|
||||
function shareArticle() {
|
||||
$param = db_escape_string( $_REQUEST['param']);
|
||||
$param = db_escape_string($_REQUEST['param']);
|
||||
|
||||
$result = db_query( "SELECT uuid, ref_id FROM ttrss_user_entries WHERE int_id = '$param'
|
||||
$result = db_query("SELECT uuid, ref_id FROM ttrss_user_entries WHERE int_id = '$param'
|
||||
AND owner_uid = " . $_SESSION['uid']);
|
||||
|
||||
if (db_num_rows($result) == 0) {
|
||||
@@ -39,8 +39,8 @@ class Share extends Plugin {
|
||||
$ref_id = db_fetch_result($result, 0, "ref_id");
|
||||
|
||||
if (!$uuid) {
|
||||
$uuid = db_escape_string( sha1(uniqid(rand(), true)));
|
||||
db_query( "UPDATE ttrss_user_entries SET uuid = '$uuid' WHERE int_id = '$param'
|
||||
$uuid = db_escape_string(sha1(uniqid(rand(), true)));
|
||||
db_query("UPDATE ttrss_user_entries SET uuid = '$uuid' WHERE int_id = '$param'
|
||||
AND owner_uid = " . $_SESSION['uid']);
|
||||
}
|
||||
|
||||
@@ -53,10 +53,10 @@ class Share extends Plugin {
|
||||
print "<a id='pub_opml_url' href='$url_path' target='_blank'>$url_path</a>";
|
||||
print "</div>";
|
||||
|
||||
/* if (!label_find_id( __('Shared'), $_SESSION["uid"]))
|
||||
label_create( __('Shared'), $_SESSION["uid"]);
|
||||
/* if (!label_find_id(__('Shared'), $_SESSION["uid"]))
|
||||
label_create(__('Shared'), $_SESSION["uid"]);
|
||||
|
||||
label_add_article( $ref_id, __('Shared'), $_SESSION['uid']); */
|
||||
label_add_article($ref_id, __('Shared'), $_SESSION['uid']); */
|
||||
}
|
||||
|
||||
print "<div align='center'>";
|
||||
|
||||
@@ -20,7 +20,7 @@ class Updater extends Plugin {
|
||||
$this);
|
||||
}
|
||||
|
||||
function update_self_step( $step, $params, $force = false) {
|
||||
function update_self_step($step, $params, $force = false) {
|
||||
// __FILE__ is in plugins/updater so we need to go one level up
|
||||
$work_dir = dirname(dirname(dirname(__FILE__)));
|
||||
$parent_dir = dirname($work_dir);
|
||||
@@ -277,13 +277,13 @@ class Updater extends Plugin {
|
||||
return array("step" => $step, "stop" => $stop, "params" => $params, "log" => $log);
|
||||
}
|
||||
|
||||
function update_self_cli( $force = false) {
|
||||
function update_self_cli($force = false) {
|
||||
$step = 0;
|
||||
$stop = false;
|
||||
$params = array();
|
||||
|
||||
while (!$stop) {
|
||||
$rc = $this->update_self_step( $step, $params, $force);
|
||||
$rc = $this->update_self_step($step, $params, $force);
|
||||
|
||||
$params = $rc['params'];
|
||||
$stop = $rc['stop'];
|
||||
@@ -307,7 +307,7 @@ class Updater extends Plugin {
|
||||
if ($input != 'yes' && $input != 'force')
|
||||
exit;
|
||||
|
||||
$this->update_self_cli( $input == 'force');
|
||||
$this->update_self_cli($input == 'force');
|
||||
}
|
||||
|
||||
function get_prefs_js() {
|
||||
@@ -376,7 +376,7 @@ class Updater extends Plugin {
|
||||
$force = (bool) $_REQUEST["force"];
|
||||
|
||||
if (($_SESSION["access_level"] >= 10 || SINGLE_USER_MODE) && CHECK_FOR_NEW_VERSION) {
|
||||
print json_encode($this->update_self_step( $step, $params, $force));
|
||||
print json_encode($this->update_self_step($step, $params, $force));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user