]> git.wh0rd.org - tt-rss.git/commitdiff
pref-prefs: don't use schema-defined help/desc/section names
authorAndrew Dolgov <fox@madoka.volgo-balt.ru>
Tue, 2 Apr 2013 12:20:06 +0000 (16:20 +0400)
committerAndrew Dolgov <fox@madoka.volgo-balt.ru>
Tue, 2 Apr 2013 12:20:43 +0000 (16:20 +0400)
classes/pref/prefs.php
include/localized_schema.php [deleted file]
utils/update-schema-translations.sh [deleted file]
utils/update-translations.sh

index fba9f70d8f758ec07c3f8855de7dbe60ff72570d..d4fad41ac5c996ad0e086affe3e84b5d27e410f5 100644 (file)
@@ -1,12 +1,63 @@
 <?php
+
 class Pref_Prefs extends Handler_Protected {
 
+       private $pref_help = array();
+       private $pref_sections = array();
+
        function csrf_ignore($method) {
                $csrf_ignored = array("index", "updateself", "customizecss", "editprefprofiles");
 
                return array_search($method, $csrf_ignored) !== false;
        }
 
+       function __construct($link, $args) {
+               parent::__construct($link, $args);
+
+               $this->pref_sections = array(
+                       1 => __('General'),
+                       2 => __('Interface'),
+                       3 => __('Advanced'),
+                       4 => __('Digest')
+               );
+
+               $this->pref_help = array(
+                       "ALLOW_DUPLICATE_POSTS" => array(__("Allow duplicate posts")),
+                       "AUTO_ASSIGN_LABELS" => array(__("Assign articles to labels automatically"), __("")),
+                       "BLACKLISTED_TAGS" => array(__("Blacklisted tags"), __("When auto-detecting tags in articles these tags will not be applied (comma-separated list)")),
+                       "CDM_AUTO_CATCHUP" => array(__("Automatically mark articles as read"), __("Mark articles as read automatically while you scroll article list.")),
+                       "CDM_EXPANDED" => array(__("Automatically expand articles in combined mode"), __("")),
+                       "COMBINED_DISPLAY_MODE" => array(__("Combined feed display"), __("Display expanded list of feed articles, instead of separate displays for headlines and article content")),
+                       "CONFIRM_FEED_CATCHUP" => array(__("Confirm marking feed as read"), __("")),
+                       "DEFAULT_ARTICLE_LIMIT" => array(__("Amount of articles to display at once"), __("")),
+                       "DEFAULT_UPDATE_INTERVAL" => array(__("Default feed update interval"), __("")),
+                       "DIGEST_CATCHUP" => array(__("Mark articles in e-mail digest as read"), __("")),
+                       "DIGEST_ENABLE" => array(__("Enable email digest"), __("This option enables sending daily digest of new (and unread) headlines on your configured e-mail address")),
+                       "DIGEST_PREFERRED_TIME" => array(__("Try to send digests around specified time"), __("Uses UTC timezone")),
+                       "ENABLE_API_ACCESS" => array(__("Enable external API"), __("")),
+                       "ENABLE_FEED_CATS" => array(__("Enable feed categories"), __("")),
+                       "FEEDS_SORT_BY_UNREAD" => array(__("Sort feeds by unread articles count"), __("")),
+                       "FRESH_ARTICLE_MAX_AGE" => array(__("Maximum age of fresh articles (in hours)"), __("")),
+                       "HIDE_READ_FEEDS" => array(__("Hide feeds with no unread articles"), __("")),
+                       "HIDE_READ_SHOWS_SPECIAL" => array(__("Show special feeds and labels when hiding read feeds"), __("")),
+                       "LONG_DATE_FORMAT" => array(__("Long date format"), __("")),
+                       "ON_CATCHUP_SHOW_NEXT_FEED" => array(__("On catchup show next feed"), __("Automatically open next feed with unread articles after marking one as read")),
+                       "PURGE_OLD_DAYS" => array(__("Purge articles after this number of days (0 - disables)"), __("")),
+                       "PURGE_UNREAD_ARTICLES" => array(__("Purge unread articles"), __("")),
+                       "REVERSE_HEADLINES" => array(__("Reverse headline order (oldest first)"), __("")),
+                       "SHORT_DATE_FORMAT" => array(__("Short date format"), __("")),
+                       "SHOW_CONTENT_PREVIEW" => array(__("Show content preview in headlines list"), __("")),
+                       "SORT_HEADLINES_BY_FEED_DATE" => array(__("Sort headlines by feed date"), __("Use feed-specified date to sort headlines instead of local import date.")),
+                       "SSL_CERT_SERIAL" => array(__("Login with an SSL certificate"), __("Click to register your SSL client certificate with tt-rss")),
+                       "STRIP_IMAGES" => array(__("Do not embed images in articles"), __("")),
+                       "STRIP_UNSAFE_TAGS" => array(__("Strip unsafe tags from articles"), __("Strip all but most common HTML tags when reading articles.")),
+                       "USER_CSS_THEME" => array(__("Select theme"), __("Select one of the available CSS themes")),
+                       "USER_STYLESHEET" => array(__("Customize stylesheet"), __("Customize CSS stylesheet to your liking")),
+                       "USER_TIMEZONE" => array(__("User timezone"), __("")),
+                       "VFEED_GROUP_BY_FEED" => array(__("Group headlines in virtual feeds"), __("When this option is enabled, headlines in Special feeds and Labels are grouped by feeds"))
+               );
+       }
+
        function changepassword() {
 
                $old_pw = $_POST["old_password"];
@@ -416,18 +467,17 @@ class Pref_Prefs extends Handler_Protected {
                $access_query = 'true';
 
                $result = db_query($this->link, "SELECT DISTINCT
-                       ttrss_user_prefs.pref_name,short_desc,help_text,value,type_name,
+                       ttrss_user_prefs.pref_name,value,type_name,
                        ttrss_prefs_sections.order_id,
-                       section_name,def_value,section_id
+                       def_value,section_id
                        FROM ttrss_prefs,ttrss_prefs_types,ttrss_prefs_sections,ttrss_user_prefs
                        WHERE type_id = ttrss_prefs_types.id AND
                                $profile_qpart AND
                                section_id = ttrss_prefs_sections.id AND
                                ttrss_user_prefs.pref_name = ttrss_prefs.pref_name AND
                                $access_query AND
-                               short_desc != '' AND
                                owner_uid = ".$_SESSION["uid"]."
-                       ORDER BY ttrss_prefs_sections.order_id,short_desc");
+                       ORDER BY ttrss_prefs_sections.order_id,pref_name");
 
                $lnum = 0;
 
@@ -441,12 +491,22 @@ class Pref_Prefs extends Handler_Protected {
                                continue;
                        }
 
+                       $type_name = $line["type_name"];
+                       $pref_name = $line["pref_name"];
+                       $section_name = $this->getSectionName($line["section_id"]);
+                       $value = $line["value"];
+
+                       $short_desc = $this->getShortDesc($pref_name);
+                       $help_text = $this->getHelpText($pref_name);
+
+                       if (!$short_desc) continue;
+
                        if ($_SESSION["profile"] && in_array($line["pref_name"],
                                        $profile_blacklist)) {
                                continue;
                        }
 
-                       if ($active_section != $line["section_name"]) {
+                       if ($active_section != $line["section_id"]) {
 
                                if ($active_section != "") {
                                        print "</table>";
@@ -454,24 +514,18 @@ class Pref_Prefs extends Handler_Protected {
 
                                print "<table width=\"100%\" class=\"prefPrefsList\">";
 
-                               $active_section = $line["section_name"];
+                               $active_section = $line["section_id"];
 
-                               print "<tr><td colspan=\"3\"><h3>".__($active_section)."</h3></td></tr>";
+                               print "<tr><td colspan=\"3\"><h3>".$section_name."</h3></td></tr>";
 
                                $lnum = 0;
                        }
 
                        print "<tr>";
 
-                       $type_name = $line["type_name"];
-                       $pref_name = $line["pref_name"];
-                       $value = $line["value"];
-                       $def_value = $line["def_value"];
-                       $help_text = $line["help_text"];
-
                        print "<td width=\"40%\" class=\"prefName\" id=\"$pref_name\">";
                        print "<label for='CB_$pref_name'>";
-                       print __($line["short_desc"]);
+                       print $short_desc;
                        print "</label>";
 
                        if ($help_text) print "<div class=\"prefHelp\">".__($help_text)."</div>";
@@ -1007,6 +1061,26 @@ class Pref_Prefs extends Handler_Protected {
 
        }
 
+       private function getShortDesc($pref_name) {
+               if (isset($this->pref_help[$pref_name])) {
+                       return $this->pref_help[$pref_name][0];
+               }
+               return "";
+       }
 
+       private function getHelpText($pref_name) {
+               if (isset($this->pref_help[$pref_name])) {
+                       return $this->pref_help[$pref_name][1];
+               }
+               return "";
+       }
+
+       private function getSectionName($id) {
+               if (isset($this->pref_sections[$id])) {
+                       return $this->pref_sections[$id];
+               }
+
+               return "";
+       }
 }
 ?>
diff --git a/include/localized_schema.php b/include/localized_schema.php
deleted file mode 100644 (file)
index 418c9d0..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php # This file has been generated at:  Mon Apr 1 21:30:54 MSK 2013
-
-__("Title");
-__("Title or Content");
-__("Link");
-__("Content");
-__("Article Date");
-
-__("Delete article");
-__("Mark as read");
-__("Set starred");
-__("Publish article");
-__("Assign tags");
-__("Assign label");
-__("Modify score");
-
-__("General");
-__("Interface");
-__("Advanced");
-
-__('This option is useful when you are reading several planet-type aggregators with partially colliding userbase. When disabled, it forces same posts from different feeds to appear only once.');
-__('Display expanded list of feed articles, instead of separate displays for headlines and article content');
-__('Automatically open next feed with unread articles after marking one as read');
-__('This option enables sending daily digest of new (and unread) headlines on your configured e-mail address');
-__('This option enables marking articles as read automatically while you scroll article list.');
-__('Strip all but most common HTML tags when reading articles.');
-__('When auto-detecting tags in articles these tags will not be applied (comma-separated list).');
-__('When this option is enabled, headlines in Special feeds and Labels are grouped by feeds');
-__('Customize CSS stylesheet to your liking');
-__('Use feed-specified date to sort headlines instead of local import date.');
-__('Click to register your SSL client certificate with tt-rss');
-__('Uses UTC timezone');
-__('Select one of the available CSS themes');
-__('Purge articles after this number of days (0 - disables)');
-__('Default interval between feed updates');
-__('Amount of articles to display at once');
-__('Allow duplicate posts');
-__('Enable feed categories');
-__('Show content preview in headlines list');
-__('Short date format');
-__('Long date format');
-__('Combined feed display');
-__('Hide feeds with no unread articles');
-__('On catchup show next feed');
-__('Sort feeds by unread articles count');
-__('Reverse headline order (oldest first)');
-__('Enable e-mail digest');
-__('Confirm marking feed as read');
-__('Automatically mark articles as read');
-__('Strip unsafe tags from articles');
-__('Blacklisted tags');
-__('Maximum age of fresh articles (in hours)');
-__('Mark articles in e-mail digest as read');
-__('Automatically expand articles in combined mode');
-__('Purge unread articles');
-__('Show special feeds when hiding read feeds');
-__('Group headlines in virtual feeds');
-__('Do not embed images in articles');
-__('Enable external API');
-__('User timezone');
-__('Customize stylesheet');
-__('Sort headlines by feed date');
-__('Login with an SSL certificate');
-__('Try to send digests around specified time');
-__('Assign articles to labels automatically');
-__('Select theme');
-?>
diff --git a/utils/update-schema-translations.sh b/utils/update-schema-translations.sh
deleted file mode 100755 (executable)
index d76fb03..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/sh
-
-LC_ALL=C
-LANG=C
-LANGUAGE=C
-
-BASENAME=`basename $0`
-TMPFILE="/tmp/$BASENAME-$$.tmp"
-OUTFILE="include/localized_schema.php"
-
-cat schema/ttrss_schema_pgsql.sql | grep 'insert.*pref_name' | awk -F\' '{ print $8 }' > $TMPFILE
-cat schema/ttrss_schema_pgsql.sql | grep 'insert.*pref_name' | awk -F\' '{ print $6 }' >> $TMPFILE
-
-echo "<?php # This file has been generated at: " `date` > $OUTFILE
-echo >> $OUTFILE
-cat utils/localized_schema.txt >> $OUTFILE
-echo >> $OUTFILE
-
-cat $TMPFILE | grep -v '^$' | sed "s/.*/__('&');/" >> $OUTFILE
-
-echo "?>" >> $OUTFILE
-
-rm $TMPFILE
index c2e8ff54f62e875009ec42f421f2d6181529702c..4b8dab6b95f876ca82efc84f0b08154e92872f56 100755 (executable)
@@ -1,8 +1,6 @@
 #!/bin/sh
 TEMPLATE=messages.pot
 
-./utils/update-schema-translations.sh
-
 xgettext -kT_js_decl -kT_sprintf -kT_ngettext:1,2 -k__ -L PHP -o $TEMPLATE *.php include/*.php `find classes -iname '*.php'` `find plugins -iname '*.php'`
 
 xgettext --from-code utf-8 -k__ -knotify_info -knotify_progress -kngettext -L Java -j -o $TEMPLATE js/*.js `find plugins -iname '*.js'`