]> git.wh0rd.org - tt-rss.git/commitdiff
initial prefpane work
authorAndrew Dolgov <fox@bah.spb.su>
Mon, 22 Aug 2005 01:17:12 +0000 (02:17 +0100)
committerAndrew Dolgov <fox@bah.spb.su>
Mon, 22 Aug 2005 01:17:12 +0000 (02:17 +0100)
backend.php
prefs.js [new file with mode: 0644]
prefs.php [new file with mode: 0644]
tt-rss.css

index 76445e9c85979493dd7d49c36ea7ca3a93c170f1..3b9ff5421d5a9160a11ef9f200e2ffcf527e66c6 100644 (file)
 
        }
 
+       if ($op == "pref-feeds") {
+       
+               $result = pg_query("SELECT * FROM ttrss_feeds ORDER by title");
 
+               print "<p><table width=\"100%\" class=\"prefFeedList\">";
+               print "<tr class=\"title\">
+                                       <td>Select</td><td>Title</td><td>Link</td><td>Last Updated</td></tr>";
+               
+               $lnum = 0;
+               
+               while ($line = pg_fetch_assoc($result)) {
+
+                       $class = ($lnum % 2) ? "even" : "odd";
+
+                       print "<tr class=\"$class\">";
+
+                       print "<td><input onclick='toggleSelectRow(this);' 
+                               type=\"checkbox\" id=\"FROW-".$line["id"]."\"></td>";
+                       print "<td>" . $line["title"] . "</td>";                
+                       print "<td>" . $line["feed_url"] . "</td>";             
+                       print "<td>" . $line["last_updated"] . "</td>";
+                       print "</tr>";
+
+                       ++$lnum;
+               }
+
+               print "</table>";
+
+       }
+
+       pg_close($link);
 ?>
diff --git a/prefs.js b/prefs.js
new file mode 100644 (file)
index 0000000..03cdd4a
--- /dev/null
+++ b/prefs.js
@@ -0,0 +1,87 @@
+/*
+       This program is Copyright (c) 2003-2005 Andrew Dolgov <cthulhoo@gmail.com>              
+       Licensed under GPL v.2 or (at your preference) any later version.
+*/
+
+var xmlhttp = false;
+
+/*@cc_on @*/
+/*@if (@_jscript_version >= 5)
+// JScript gives us Conditional compilation, we can cope with old IE versions.
+// and security blocked creation of the objects.
+try {
+       xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
+} catch (e) {
+       try {
+               xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
+       } catch (E) {
+               xmlhttp = false;
+       }
+}
+@end @*/
+
+if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
+       xmlhttp = new XMLHttpRequest();
+}
+
+function param_escape(arg) {
+       if (typeof encodeURIComponent != 'undefined')
+               return encodeURIComponent(arg); 
+       else
+               return escape(arg);
+}
+
+function param_unescape(arg) {
+       if (typeof decodeURIComponent != 'undefined')
+               return decodeURIComponent(arg); 
+       else
+               return unescape(arg);
+}
+
+function notify(msg) {
+
+       var n = document.getElementById("notify");
+
+       n.innerHTML = msg;
+
+}
+
+function feedlist_callback() {
+       var container = document.getElementById('feeds');
+       if (xmlhttp.readyState == 4) {
+               container.innerHTML=xmlhttp.responseText;
+       }
+}
+
+function update_feeds() {
+
+       document.getElementById("feeds").innerHTML = "Loading feeds, please wait...";
+
+       xmlhttp.open("GET", "backend.php?op=pref-feeds", true);
+       xmlhttp.onreadystatechange=feedlist_callback;
+       xmlhttp.send(null);
+
+}
+
+function toggleSelectRow(sender) {
+       var parent_row = sender.parentNode.parentNode;
+
+       if (sender.checked) {
+               if (!parent_row.className.match("Selected")) {
+                       parent_row.className = parent_row.className + "Selected";
+               }
+       } else {
+               if (parent_row.className.match("Selected")) {
+                       parent_row.className = parent_row.className.replace("Selected", "");
+               }
+       }
+}
+
+
+function init() {
+
+       notify("init");
+
+       update_feeds();
+
+}
diff --git a/prefs.php b/prefs.php
new file mode 100644 (file)
index 0000000..9765e14
--- /dev/null
+++ b/prefs.php
@@ -0,0 +1,49 @@
+<html>
+<head>
+       <title>Tiny Tiny RSS</title>
+       <link rel="stylesheet" href="tt-rss.css" type="text/css">
+       <script type="text/javascript" src="prefs.js"></script>
+       <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+</head>
+
+<body onload="init()">
+
+<table width="100%" height="100%" cellspacing=0 cellpadding=0 class="main">
+<tr>
+       <td class="header" valign="middle" colspan="1"> 
+                       Preferences
+       </td>
+</tr>
+<tr>
+       <td class="toolbar" valign="middle" colspan="1">        
+               <a class="button">Close</a>
+       </td>
+</tr>
+</tr>
+       <td class="content" id="content" valign="top">
+               <h2>Feed Configuration</h2>
+
+               <table class="prefAddFeed">
+                       <tr><td>Title:</td><td><input id="fadd_title"></td></tr>
+                       <tr><td>Link:</td><td><input id="fadd_link"></td></tr>
+                       <tr><td colspan="2" align="right">
+                               <a class="button" href="javascript:addFeed()">Add feed</a></td></tr>
+               </table>
+
+               <!-- <input type="submit" value="Add feed"> -->
+               
+               <div id="feeds">&nbsp;</div>
+
+               <hr>
+       </td>
+</tr>
+<tr>
+       <td colspan="2" id="notify" class="notify">
+               <a href="">Tiny-Tiny RSS</a> v0.1 &copy; 2005 Andrew Dolgov
+       </td>
+</td>
+</table>
+
+
+</body>
+</html>
index ad0213957b9117ab41af852fa31fdf1f8193474a..f779e0f1724cb550d053bcf20ad2229d30715c6e 100644 (file)
@@ -5,6 +5,24 @@ body {
        padding : 0px;
 }
 
+h1 {
+       font-size : 16pt;       
+}
+
+h2 {
+       font-size : 14pt;
+       font-color : bold;
+       border-width : 0px 0px 1px 0px;
+       border-style : solid;
+       border-color : #e0e0e0;
+}
+
+hr {
+       border-width : 0px 0px 1px 0px;
+       border-style : dashed;
+       border-color : #e0e0e0;
+}
+
 a {
        color : black;
        text-decoration : none;
@@ -178,3 +196,34 @@ ul {
 .invisible {
        display : none;
 }
+
+table.prefAddFeed td {
+       padding : 2px;
+}
+
+table.prefAddFeed input {
+       width : 250px;
+}
+
+table.prefAddFeed {
+       background : #f0f0f0;
+       border : 1px solid #c0c0c0;
+       padding : 10px;
+       -moz-border-radius : 5px;
+}
+
+table.prefFeedList tr.title td {
+       font-weight : bold;
+       border-width : 0px 0px 1px 0px;
+       border-color : #f0f0f0;
+       border-style : solid;
+}
+
+.evenSelected {
+       background-color : #c0c0c0;
+}
+
+.oddSelected {
+       background-color : #c0c0c0;
+}
+