pref-prefs: don't use schema-defined help/desc/section names
This commit is contained in:
parent
9eeb6d5e23
commit
dfad9d7a36
|
@ -1,12 +1,63 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
class Pref_Prefs extends Handler_Protected {
|
class Pref_Prefs extends Handler_Protected {
|
||||||
|
|
||||||
|
private $pref_help = array();
|
||||||
|
private $pref_sections = array();
|
||||||
|
|
||||||
function csrf_ignore($method) {
|
function csrf_ignore($method) {
|
||||||
$csrf_ignored = array("index", "updateself", "customizecss", "editprefprofiles");
|
$csrf_ignored = array("index", "updateself", "customizecss", "editprefprofiles");
|
||||||
|
|
||||||
return array_search($method, $csrf_ignored) !== false;
|
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() {
|
function changepassword() {
|
||||||
|
|
||||||
$old_pw = $_POST["old_password"];
|
$old_pw = $_POST["old_password"];
|
||||||
|
@ -416,18 +467,17 @@ class Pref_Prefs extends Handler_Protected {
|
||||||
$access_query = 'true';
|
$access_query = 'true';
|
||||||
|
|
||||||
$result = db_query($this->link, "SELECT DISTINCT
|
$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,
|
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
|
FROM ttrss_prefs,ttrss_prefs_types,ttrss_prefs_sections,ttrss_user_prefs
|
||||||
WHERE type_id = ttrss_prefs_types.id AND
|
WHERE type_id = ttrss_prefs_types.id AND
|
||||||
$profile_qpart AND
|
$profile_qpart AND
|
||||||
section_id = ttrss_prefs_sections.id AND
|
section_id = ttrss_prefs_sections.id AND
|
||||||
ttrss_user_prefs.pref_name = ttrss_prefs.pref_name AND
|
ttrss_user_prefs.pref_name = ttrss_prefs.pref_name AND
|
||||||
$access_query AND
|
$access_query AND
|
||||||
short_desc != '' AND
|
|
||||||
owner_uid = ".$_SESSION["uid"]."
|
owner_uid = ".$_SESSION["uid"]."
|
||||||
ORDER BY ttrss_prefs_sections.order_id,short_desc");
|
ORDER BY ttrss_prefs_sections.order_id,pref_name");
|
||||||
|
|
||||||
$lnum = 0;
|
$lnum = 0;
|
||||||
|
|
||||||
|
@ -441,12 +491,22 @@ class Pref_Prefs extends Handler_Protected {
|
||||||
continue;
|
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"],
|
if ($_SESSION["profile"] && in_array($line["pref_name"],
|
||||||
$profile_blacklist)) {
|
$profile_blacklist)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($active_section != $line["section_name"]) {
|
if ($active_section != $line["section_id"]) {
|
||||||
|
|
||||||
if ($active_section != "") {
|
if ($active_section != "") {
|
||||||
print "</table>";
|
print "</table>";
|
||||||
|
@ -454,24 +514,18 @@ class Pref_Prefs extends Handler_Protected {
|
||||||
|
|
||||||
print "<table width=\"100%\" class=\"prefPrefsList\">";
|
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;
|
$lnum = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
print "<tr>";
|
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 "<td width=\"40%\" class=\"prefName\" id=\"$pref_name\">";
|
||||||
print "<label for='CB_$pref_name'>";
|
print "<label for='CB_$pref_name'>";
|
||||||
print __($line["short_desc"]);
|
print $short_desc;
|
||||||
print "</label>";
|
print "</label>";
|
||||||
|
|
||||||
if ($help_text) print "<div class=\"prefHelp\">".__($help_text)."</div>";
|
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 "";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -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');
|
|
||||||
?>
|
|
|
@ -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
|
|
|
@ -1,8 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
TEMPLATE=messages.pot
|
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 -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'`
|
xgettext --from-code utf-8 -k__ -knotify_info -knotify_progress -kngettext -L Java -j -o $TEMPLATE js/*.js `find plugins -iname '*.js'`
|
||||||
|
|
Loading…
Reference in New Issue