experimental RTL support features (schema, version bump)

This commit is contained in:
Andrew Dolgov 2006-03-20 11:28:14 +01:00
parent 2e73dece90
commit 70f6dbb10b
9 changed files with 86 additions and 15 deletions

View File

@ -45,7 +45,7 @@
exit; exit;
} }
define('SCHEMA_VERSION', 6); define('SCHEMA_VERSION', 7);
require_once "sanity_check.php"; require_once "sanity_check.php";
require_once "config.php"; require_once "config.php";
@ -909,8 +909,23 @@
if ($op == "view") { if ($op == "view") {
$id = $_GET["id"]; $id = db_escape_string($_GET["id"]);
$feed_id = $_GET["feed"]; $feed_id = db_escape_string($_GET["feed"]);
$result = db_query($link, "SELECT rtl_content FROM ttrss_feeds
WHERE id = '$feed_id' AND owner_uid = " . $_SESSION["uid"]);
if (db_num_rows($result) == 1) {
$rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content"));
} else {
$rtl_content = false;
}
if ($rtl_content) {
$rtl_tag = "dir=\"RTL\"";
} else {
$rtl_tag = "";
}
$result = db_query($link, "UPDATE ttrss_user_entries $result = db_query($link, "UPDATE ttrss_user_entries
SET unread = false,last_read = NOW() SET unread = false,last_read = NOW()
@ -944,7 +959,7 @@
print "<script type=\"text/javascript\" src=\"functions.js\"></script> print "<script type=\"text/javascript\" src=\"functions.js\"></script>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">
</head><body>"; </head><body $rtl_tag>";
if ($result) { if ($result) {
@ -1088,6 +1103,21 @@
type=\"text/css\" href=\"tt-rss_compact.css\"/>"; type=\"text/css\" href=\"tt-rss_compact.css\"/>";
} }
$result = db_query($link, "SELECT rtl_content FROM ttrss_feeds
WHERE id = '$feed' AND owner_uid = " . $_SESSION["uid"]);
if (db_num_rows($result) == 1) {
$rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content"));
} else {
$rtl_content = false;
}
if ($rtl_content) {
$rtl_tag = "dir=\"RTL\"";
} else {
$rtl_tag = "";
}
print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"> print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">
<script type=\"text/javascript\" src=\"functions.js\"></script> <script type=\"text/javascript\" src=\"functions.js\"></script>
<script type=\"text/javascript\" src=\"viewfeed.js\"></script> <script type=\"text/javascript\" src=\"viewfeed.js\"></script>
@ -1560,7 +1590,7 @@
if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) { if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) {
print "<table class=\"headlinesList\" id=\"headlinesList\" print "<table class=\"headlinesList\" id=\"headlinesList\"
cellspacing=\"0\" width=\"100%\">"; cellspacing=\"0\" width=\"100%\" $rtl_tag>";
} }
$lnum = 0; $lnum = 0;
@ -1641,8 +1671,7 @@
print "<a href=\"javascript:view($id,$feed_id);\">" . print "<a href=\"javascript:view($id,$feed_id);\">" .
$line["title"]; $line["title"];
if (get_pref($link, 'SHOW_CONTENT_PREVIEW')) { if (get_pref($link, 'SHOW_CONTENT_PREVIEW') && !$rtl_tag) {
if ($content_preview) { if ($content_preview) {
print "<span class=\"contentPreview\"> - $content_preview</span>"; print "<span class=\"contentPreview\"> - $content_preview</span>";
} }
@ -2035,8 +2064,20 @@
print "<tr class='$row_class'><td>Options:</td>"; print "<tr class='$row_class'><td>Options:</td>";
print "<td><input type=\"checkbox\" id=\"iedit_private\" print "<td><input type=\"checkbox\" id=\"iedit_private\"
$checked><label for=\"iedit_private\">Hide from feed browser</label> $checked><label for=\"iedit_private\">Hide from feed browser</label>";
</td></tr>";
$rtl_content = sql_bool_to_bool(db_fetch_result($result, 0, "rtl_content"));
if ($rtl_content) {
$checked = "checked";
} else {
$checked = "";
}
print "<br><input type=\"checkbox\" id=\"iedit_rtl\"
$checked><label for=\"iedit_rtl\">Right-to-left content</label>";
print "</td></tr>";
print "</table>"; print "</table>";
print "</div>"; print "</div>";
@ -2060,6 +2101,7 @@
$auth_pass = db_escape_string($_POST["pass"]); $auth_pass = db_escape_string($_POST["pass"]);
$parent_feed = db_escape_string($_POST["pfeed"]); $parent_feed = db_escape_string($_POST["pfeed"]);
$private = db_escape_string($_POST["is_pvt"]); $private = db_escape_string($_POST["is_pvt"]);
$rtl_content = db_escape_string($_POST["is_rtl"]);
if (strtoupper($upd_intl) == "DEFAULT") if (strtoupper($upd_intl) == "DEFAULT")
$upd_intl = 0; $upd_intl = 0;
@ -2093,7 +2135,8 @@
purge_interval = '$purge_intl', purge_interval = '$purge_intl',
auth_login = '$auth_login', auth_login = '$auth_login',
auth_pass = '$auth_pass', auth_pass = '$auth_pass',
private = '$private' private = '$private',
rtl_content = '$rtl_content'
WHERE id = '$feed_id' AND owner_uid = " . $_SESSION["uid"]); WHERE id = '$feed_id' AND owner_uid = " . $_SESSION["uid"]);
} }

View File

@ -703,11 +703,16 @@ function feedEditSave() {
var fcat = document.getElementById("iedit_fcat"); var fcat = document.getElementById("iedit_fcat");
var is_pvt = document.getElementById("iedit_private"); var is_pvt = document.getElementById("iedit_private");
var is_rtl = document.getElementById("iedit_rtl");
if (is_pvt) { if (is_pvt) {
is_pvt = is_pvt.checked; is_pvt = is_pvt.checked;
} }
if (is_rtl) {
is_rtl = is_rtl.checked;
}
var fcat_id = 0; var fcat_id = 0;
if (fcat) { if (fcat) {
@ -739,7 +744,7 @@ function feedEditSave() {
"&ui=" + param_escape(upd_intl) + "&pi=" + param_escape(purge_intl) + "&ui=" + param_escape(upd_intl) + "&pi=" + param_escape(purge_intl) +
"&catid=" + param_escape(fcat_id) + "&login=" + param_escape(auth_login) + "&catid=" + param_escape(fcat_id) + "&login=" + param_escape(auth_login) +
"&pfeed=" + param_escape(parent_feed_id) + "&pass=" + param_escape(auth_pass) + "&pfeed=" + param_escape(parent_feed_id) + "&pass=" + param_escape(auth_pass) +
"&is_pvt=" + param_escape(is_pvt); "&is_pvt=" + param_escape(is_pvt) + "&is_rtl=" + param_escape(is_rtl);
xmlhttp.open("POST", "backend.php", true); xmlhttp.open("POST", "backend.php", true);
xmlhttp.onreadystatechange=feedlist_callback; xmlhttp.onreadystatechange=feedlist_callback;

View File

@ -59,6 +59,7 @@ create table ttrss_feeds (id integer not null auto_increment primary key,
auth_pass varchar(250) not null default '', auth_pass varchar(250) not null default '',
parent_feed integer default null, parent_feed integer default null,
private bool not null default false, private bool not null default false,
rtl_content bool not null default false,
index(owner_uid), index(owner_uid),
foreign key (owner_uid) references ttrss_users(id) ON DELETE CASCADE, foreign key (owner_uid) references ttrss_users(id) ON DELETE CASCADE,
index(cat_id), index(cat_id),
@ -174,7 +175,7 @@ create table ttrss_tags (id integer primary key auto_increment,
create table ttrss_version (schema_version int not null) TYPE=InnoDB; create table ttrss_version (schema_version int not null) TYPE=InnoDB;
insert into ttrss_version values (6); insert into ttrss_version values (7);
create table ttrss_prefs_types (id integer not null primary key, create table ttrss_prefs_types (id integer not null primary key,
type_name varchar(100) not null) TYPE=InnoDB; type_name varchar(100) not null) TYPE=InnoDB;

View File

@ -54,7 +54,8 @@ create table ttrss_feeds (id serial not null primary key,
auth_login varchar(250) not null default '', auth_login varchar(250) not null default '',
parent_feed integer default null references ttrss_feeds(id) on delete set null, parent_feed integer default null references ttrss_feeds(id) on delete set null,
private boolean not null default false, private boolean not null default false,
auth_pass varchar(250) not null default ''); auth_pass varchar(250) not null default '',
rtl_content boolean not null default false);
create index ttrss_feeds_owner_uid_index on ttrss_feeds(owner_uid); create index ttrss_feeds_owner_uid_index on ttrss_feeds(owner_uid);
@ -156,7 +157,7 @@ create index ttrss_tags_owner_uid_index on ttrss_tags(owner_uid);
create table ttrss_version (schema_version int not null); create table ttrss_version (schema_version int not null);
insert into ttrss_version values (6); insert into ttrss_version values (7);
create table ttrss_prefs_types (id integer not null primary key, create table ttrss_prefs_types (id integer not null primary key,
type_name varchar(100) not null); type_name varchar(100) not null);

View File

@ -0,0 +1,9 @@
alter table ttrss_feeds add column rtl_content bool;
update ttrss_feeds set rtl_content = false;
alter table ttrss_feeds change rtl_content rtl_content bool not null;
alter table ttrss_feeds alter column rtl_content set default false;
update ttrss_version set schema_version = 7;

View File

@ -0,0 +1,12 @@
begin;
alter table ttrss_feeds add column rtl_content boolean;
update ttrss_feeds set rtl_content = false;
alter table ttrss_feeds alter column rtl_content set not null;
alter table ttrss_feeds alter column rtl_content set default false;
update ttrss_version set schema_version = 7;
commit;

View File

@ -1,3 +1,3 @@
<? <?
define(VERSION, "1.1.4"); define(VERSION, "1.1.4.99");
?> ?>