X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=classes%2Fdlg.php;h=99cd7cffa7545de47446bd06b1226e47ef5b7298;hb=6322ac79a020ab584d412d782d62b2ee77d7c6cf;hp=55eb5e37e0a2223fba2f7e2eb8eb3fb870036ee1;hpb=7acc194b538ca38a59dcd3fc3fef448459703533;p=tt-rss.git
diff --git a/classes/dlg.php b/classes/dlg.php
index 55eb5e37..99cd7cff 100644
--- a/classes/dlg.php
+++ b/classes/dlg.php
@@ -1,68 +1,33 @@
param = db_escape_string($_REQUEST["param"]);
- print "";
+ function before($method) {
+ if (parent::before($method)) {
+ header("Content-Type: text/html"); # required for iframe
+
+ $this->param = db_escape_string( $_REQUEST["param"]);
return true;
}
return false;
}
- function after() {
- print " ";
- }
-
- function exportData() {
-
- print "
You need to prepare exported data first by clicking the button below.
";
-
- print "";
- print "".
- __('Prepare data')." ";
-
- print "".
- __('Close this window')." ";
-
- print "
";
-
-
- }
-
function importOpml() {
- header("Content-Type: text/html"); # required for iframe
-
print __("If you have imported labels and/or filters, you might need to reload preferences to see your new data.") . "";
print "";
$owner_uid = $_SESSION["uid"];
- db_query($this->link, "BEGIN");
-
- /* create Imported feeds category just in case */
+ db_query( "BEGIN");
- $result = db_query($this->link, "SELECT id FROM
- ttrss_feed_categories WHERE title = 'Imported feeds' AND
- owner_uid = '$owner_uid' LIMIT 1");
+ print "
";
- if (db_num_rows($result) == 0) {
- db_query($this->link, "INSERT INTO ttrss_feed_categories
- (title,owner_uid)
- VALUES ('Imported feeds', '$owner_uid')");
- }
+ $opml = new Opml( $_REQUEST);
- db_query($this->link, "COMMIT");
+ $opml->opml_import($_SESSION["uid"]);
- /* Handle OPML import by DOMXML/DOMDocument */
+ db_query( "COMMIT");
- print "";
- require_once "opml.php";
- opml_import_domdoc($this->link, $owner_uid);
print " ";
print " ";
@@ -77,112 +42,8 @@ class Dlg extends Protected_Handler {
//return;
}
- function editPrefProfiles() {
- print "";
-
- print "
- ".
- __('Create profile')."
";
-
- $result = db_query($this->link, "SELECT title,id FROM ttrss_settings_profiles
- WHERE owner_uid = ".$_SESSION["uid"]." ORDER BY title");
-
- print "";
-
- print "
";
- print "
";
-
- print "";
-
- }
-
function pubOPMLUrl() {
- print "".__('Public OPML URL')." ";
- print "link);
+ $url_path = Opml::opml_publish_url();
print __("Your Public OPML URL is:");
@@ -199,15 +60,11 @@ class Dlg extends Protected_Handler {
__('Close this window')."";
print "";
- print "]]> ";
//return;
}
function explainError() {
- print "".__('Notice')." ";
- print "";
if ($this->param == 1) {
@@ -236,489 +93,11 @@ class Dlg extends Protected_Handler {
__('Close this window')."";
print "";
- print "]]> ";
-
- //return;
- }
-
- function quickAddFeed() {
- print " ";
- print " ";
-
- print "".__("Feed")."
";
- print "";
-
- print " ";
-
- print "
";
-
- if (get_pref($this->link, 'ENABLE_FEED_CATS')) {
- print __('Place in category:') . " ";
- print_feed_cat_select($this->link, "cat", false, 'dojoType="dijit.form.Select"');
- }
-
- print "";
-
- print '
-
-
' . __('Available feeds') . '
-
'.
- '
-
- '.
- '
';
-
- print "";
-
-
- print "
-
- ".
- __('This feed requires authentication.')."
";
-
- print "";
-
- print "
- ".__('Subscribe')."
- ".__('More feeds')."
- ".__('Cancel')."
-
";
//return;
}
- function feedBrowser() {
- $browser_search = db_escape_string($_REQUEST["search"]);
-
- print " ";
- print " ";
-
- print "
-
-
-
-
".__('Search')."
-
";
-
- print "
- " . __('Popular feeds') . "
- " . __('Feed archive') . "
- ";
-
- print __("limit:");
-
- print "
";
-
- foreach (array(25, 50, 100, 200) as $l) {
- $issel = ($l == $limit) ? "selected=\"1\"" : "";
- print "$l ";
- }
-
- print " ";
-
- print "
";
-
- $owner_uid = $_SESSION["uid"];
-
- print "";
- print make_feed_browser($this->link, $search, 25);
- print " ";
-
- print "
- ".__('Subscribe')."
- ".__('Remove')."
- ".__('Cancel')."
";
-
- }
-
- function search() {
- $this->params = explode(":", db_escape_string($_REQUEST["param"]), 2);
-
- $active_feed_id = sprintf("%d", $this->params[0]);
- $is_cat = $this->params[1] != "false";
-
- print "".__('Look for')."
";
-
- print "";
-
- if (!SPHINX_ENABLED) {
-
- print " ";
-
- print " " . __('match on')." ";
-
- $search_fields = array(
- "title" => __("Title"),
- "content" => __("Content"),
- "both" => __("Title or content"));
-
- print_select_hash("match_on", 3, $search_fields,
- 'dojoType="dijit.form.Select"');
- } else {
- print " ";
- }
-
-
- print "
".__('Limit search to:')." ";
-
- print "
- ".__('All feeds')." ";
-
- $feed_title = getFeedTitle($this->link, $active_feed_id);
-
- if (!$is_cat) {
- $feed_cat_title = getFeedCatTitle($this->link, $active_feed_id);
- } else {
- $feed_cat_title = getCategoryTitle($this->link, $active_feed_id);
- }
-
- if ($active_feed_id && !$is_cat) {
- print "$feed_title ";
- } else {
- print "".__('This feed')." ";
- }
-
- if ($is_cat) {
- $cat_preselected = "selected=\"1\"";
- }
-
- if (get_pref($this->link, 'ENABLE_FEED_CATS') && ($active_feed_id > 0 || $is_cat)) {
- print "$feed_cat_title ";
- } else {
- //print "".__('This category')." ";
- }
-
- print " ";
-
- print "";
-
- print "";
- }
-
- function quickAddFilter() {
- $active_feed_id = db_escape_string($_REQUEST["param"]);
-
- print " ";
- print " ";
- print " ";
- print " ";
-
- $result = db_query($this->link, "SELECT id,description
- FROM ttrss_filter_types ORDER BY description");
-
- $filter_types = array();
-
- while ($line = db_fetch_assoc($result)) {
- //array_push($filter_types, $line["description"]);
- $filter_types[$line["id"]] = __($line["description"]);
- }
-
- print "".__("Match")."
";
-
- print "";
-
- print "";
-
- $filter_params = array(
- "before" => __("before"),
- "after" => __("after"));
-
- print_select_hash("filter_date_modifier", "before",
- $filter_params, 'dojoType="dijit.form.Select"');
-
- print " ";
-
- print " ";
-
- print "";
- print " ".
- __('Check it')." ";
- print " ";
-
- print "
" . __("on field") . " ";
- print_select_hash("filter_type", 1, $filter_types,
- 'onchange="filterDlgCheckType(this)" dojoType="dijit.form.Select"');
-
- print " ";
-
- print __("in") . " ";
-
- print "";
- print_feed_select($this->link, "feed_id", $active_feed_id,
- 'dojoType="dijit.form.FilteringSelect"');
- print " ";
-
- print "";
- print_feed_cat_select($this->link, "cat_id", $active_cat_id,
- 'dojoType="dijit.form.FilteringSelect"');
- print " ";
-
- print "";
-
- print "".__("Perform Action")."
";
-
- print "";
-
- print "";
-
- $result = db_query($this->link, "SELECT id,description FROM ttrss_filter_actions
- ORDER BY name");
-
- while ($line = db_fetch_assoc($result)) {
- printf("%s ", $line["id"], __($line["description"]));
- }
-
- print " ";
-
- print "";
- print " " . __("with parameters:") . " ";
- print " ";
-
- print_label_select($this->link, "action_param_label", $action_param,
- 'id="filterDlg_actionParamLabel" dojoType="dijit.form.Select"');
-
- print " ";
-
- print " "; // tiny layout hack
-
- print "
";
-
- print "".__("Options")."
";
- print "";
-
- print "
- ".__('Enabled')."
";
-
- print "
- ".__('Inverse match')." ";
-
- print "
- ".__('Apply to category')." ";
-
-
- print "";
-
- print "";
-
- print "".
- __('Test')." ";
-
- print "".
- __('Create')." ";
-
- print "".
- __('Cancel')." ";
-
- print "
";
- }
-
- function inactiveFeeds() {
-
- if (DB_TYPE == "pgsql") {
- $interval_qpart = "NOW() - INTERVAL '3 months'";
- } else {
- $interval_qpart = "DATE_SUB(NOW(), INTERVAL 3 MONTH)";
- }
-
- $result = db_query($this->link, "SELECT ttrss_feeds.title, ttrss_feeds.site_url,
- ttrss_feeds.feed_url, ttrss_feeds.id, MAX(updated) AS last_article
- FROM ttrss_feeds, ttrss_entries, ttrss_user_entries WHERE
- (SELECT MAX(updated) FROM ttrss_entries, ttrss_user_entries WHERE
- ttrss_entries.id = ref_id AND
- ttrss_user_entries.feed_id = ttrss_feeds.id) < $interval_qpart
- AND ttrss_feeds.owner_uid = ".$_SESSION["uid"]." AND
- ttrss_user_entries.feed_id = ttrss_feeds.id AND
- ttrss_entries.id = ref_id
- GROUP BY ttrss_feeds.title, ttrss_feeds.id, ttrss_feeds.site_url, ttrss_feeds.feed_url
- ORDER BY last_article");
-
- print __("These feeds have not been updated with new content for 3 months (oldest first):");
-
- print "";
-
- print "
";
- print "
";
-
- print "";
-
- }
-
- function feedsWithErrors() {
- print __("These feeds have not been updated because of errors:");
-
- $result = db_query($this->link, "SELECT id,title,feed_url,last_error,site_url
- FROM ttrss_feeds WHERE last_error != '' AND owner_uid = ".$_SESSION["uid"]);
-
- print "";
-
- print "
";
- print "
";
-
- print "";
- }
-
- function editArticleTags() {
-
- print __("Tags for this article (separated by commas):")." ";
-
- $tags = get_article_tags($this->link, $this->param);
-
- $tags_str = join(", ", $tags);
-
- print " param\">";
- print " ";
- print " ";
-
- print "";
-
- print "
-
";
-
- print "
";
-
- print "";
-
- print "".__('Save')." ";
- print "".__('Cancel')." ";
- print "
";
-
- }
-
function printTagCloud() {
- print "".__('Tag Cloud')." ";
- print "";
// from here: http://www.roscripts.com/Create_tag_cloud-71.html
@@ -727,7 +106,7 @@ class Dlg extends Protected_Handler {
FROM ttrss_tags WHERE owner_uid = ".$_SESSION["uid"]."
GROUP BY tag_name ORDER BY count DESC LIMIT 50";
- $result = db_query($this->link, $query);
+ $result = db_query( $query);
$tags = array();
@@ -780,21 +159,19 @@ class Dlg extends Protected_Handler {
__('Close this window')."";
print "";
- print "]]> ";
}
function printTagSelect() {
- print "" . __('Select item(s) by tags') . " ";
- print " Any ";
- print " All ";
- print " tags.";
+ " ";
+ print "".__("Any")." ";
+ print " ";
+ print " ";
+ print "".__("All tags.")."";
print "";
- $result = db_query($this->link, "SELECT DISTINCT tag_name FROM ttrss_tags WHERE owner_uid = ".$_SESSION['uid']."
+ $result = db_query( "SELECT DISTINCT tag_name FROM ttrss_tags WHERE owner_uid = ".$_SESSION['uid']."
AND LENGTH(tag_name) <= 30 ORDER BY tag_name ASC");
while ($row = db_fetch_assoc($result)) {
@@ -813,23 +190,19 @@ class Dlg extends Protected_Handler {
__('Close this window') . "";
print "";
- print "]]> ";
}
function generatedFeed() {
- print "".__('View as RSS')." ";
- print "params = explode(":", $this->param, 3);
- $feed_id = db_escape_string($this->params[0]);
+ $feed_id = db_escape_string( $this->params[0]);
$is_cat = (bool) $this->params[1];
- $key = get_feed_access_key($this->link, $feed_id, $is_cat);
+ $key = get_feed_access_key( $feed_id, $is_cat);
$url_path = htmlspecialchars($this->params[2]) . "&key=" . $key;
- print __("You can view this feed as RSS using the following URL:");
+ print "".__("You can view this feed as RSS using the following URL:")." ";
print "";
print "
$url_path ";
@@ -844,138 +217,56 @@ class Dlg extends Protected_Handler {
__('Close this window')."";
print "
";
- print "]]> ";
//return;
}
function newVersion() {
- $version_data = check_for_update($this->link);
+ $version_data = check_for_update();
$version = $version_data['version'];
$id = $version_data['version_id'];
- print "";
-
- print T_sprintf("New version of Tiny Tiny RSS is available (%s).",
- "$version ");
-
- print "
";
-
- $details = "http://tt-rss.org/redmine/versions/show/$id";
- $download = "http://tt-rss.org/#Download";
-
- print "";
- print "".__("Details")." ";
- print "".__("Download")." ";
- print "".
- __('Close this window')." ";
- print "
";
-
- }
-
- function customizeCSS() {
- $value = get_pref($this->link, "USER_STYLESHEET");
-
- $value = str_replace(" ", "\n", $value);
-
- print T_sprintf("You can override colors, fonts and layout of your currently selected theme with custom CSS declarations here. This file can be used as a baseline.", "tt-rss.css");
-
- print " ";
- print " ";
- print " ";
-
- print "";
-
- print "";
- print "".__('Save')." ";
- print "".__('Cancel')." ";
- print "
";
-
- }
-
- function addInstance() {
- print " ";
- print " ";
+ if ($version && $id) {
+ print "";
- print "
".__("Instance")."
";
+ print T_sprintf("New version of Tiny Tiny RSS is available (%s).",
+ "
$version ");
- print "
";
+ print "
";
- /* URL */
+ $details = "http://tt-rss.org/redmine/versions/$id";
+ $download = "http://tt-rss.org/#Download";
- print __("URL:") . " ";
+ print "
".__("You can update using built-in updater in the Preferences or by using update.php")."
";
- print "
";
+ print "
";
+ print "
".__("See the release notes")." ";
+ print "
".__("Download")." ";
+ print "
".
+ __('Close this window')." ";
- print "
";
-
- $access_key = sha1(uniqid(rand(), true));
-
- /* Access key */
-
- print __("Access key:") . " ";
-
- print "
";
-
- print "
" . __("Use one access key for both linked instances.");
-
- print "
";
-
- print "
";
-
- return;
- }
-
- function dataImport() {
- header("Content-Type: text/html"); # required for iframe
+ } else {
+ print "
";
- print "
";
+ print "
".__("Error receiving version information or no new version available.")."
";
- if (is_file($_FILES['export_file']['tmp_name'])) {
+ print "
";
- perform_data_import($this->link, $_FILES['export_file']['tmp_name'], $_SESSION['uid']);
-
- } else {
- print "
" . T_sprintf("Could not upload file. You might need to adjust upload_max_filesize
- in PHP.ini (current value = %s)", ini_get("upload_max_filesize")) . " or use CLI import tool.
";
+ print "
";
+ print "".
+ __('Close this window')." ";
+ print "
";
}
-
- print "
".
- __('Close this window')." ";
-
print "
";
}
+
}
?>