]> git.wh0rd.org - tt-rss.git/blobdiff - tt-rss.php
tweak hello/prefs/logout linkbar (refs #163)
[tt-rss.git] / tt-rss.php
index 90fbbb70db92d3a72603d5d3f0c6052fffef28c9..5ef24050abb9ec43419da7ea13f12a11ba45f870 100644 (file)
@@ -1,10 +1,8 @@
-<?
-       require_once "functions.php"; 
-
-       basic_nosid_redirect_check();
+<?php
+       error_reporting(E_ERROR | E_WARNING | E_PARSE);
 
+       require_once "functions.php"; 
        require_once "sessions.php";
-
        require_once "sanity_check.php";
        require_once "version.php"; 
        require_once "config.php";
 
        $dt_add = get_script_dt_add();
 
+       no_cache_incantation();
+
 ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
+       "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html>
 <head>
        <title>Tiny Tiny RSS</title>
 
        <link rel="stylesheet" type="text/css" href="tt-rss.css">
 
-       <?      $user_theme = $_SESSION["theme"];
+       <?php   $user_theme = $_SESSION["theme"];
                if ($user_theme) { ?>
-               <link rel="stylesheet" type="text/css" href="themes/<?= $user_theme ?>/theme.css">
-       <? } ?>
+               <link rel="stylesheet" type="text/css" href="themes/<?php echo $user_theme ?>/theme.css">
+       <?php } ?>
 
-       <? $user_css_url = get_pref($link, 'USER_STYLESHEET_URL'); ?>
-       <? if ($user_css_url) { ?>
-               <link type="text/css" href="<?= $user_css_url ?>"/> 
-       <? } ?>
+       <?php if ($user_theme) { $theme_image_path = "themes/$user_theme/"; } ?>
 
-       <? if (get_pref($link, 'USE_COMPACT_STYLESHEET')) { ?>
+       <?php $user_css_url = get_pref($link, 'USER_STYLESHEET_URL'); ?>
+       <?php if ($user_css_url) { ?>
+               <link rel="stylesheet" type="text/css" href="<?php echo $user_css_url ?>"/> 
+       <?php } ?>
 
-               <link rel="stylesheet" href="tt-rss_compact.css" type="text/css">
+       <!--[if lt IE 7]>               
+               <script type="text/javascript" src="pngfix.js"></script>
+               <link rel="stylesheet" type="text/css" href="ie6.css">
+       <![endif]-->
 
-       <? } else { ?>
+       <!--[if IE 7]>          
+               <link rel="stylesheet" type="text/css" href="ie7.css">
+       <![endif]-->
 
-               <link title="Compact Stylesheet" rel="alternate stylesheet" 
-                       type="text/css" href="tt-rss_compact.css"/> 
+       <link rel="shortcut icon" type="image/png" href="images/favicon.png">
 
-       <? } ?>
+       <script type="text/javascript" src="prototype.js"></script>
+       <script type="text/javascript" src="scriptaculous/scriptaculous.js?load=effects,dragdrop,controls"></script>
+       <script type="text/javascript" src="localized_js.php?<?php echo $dt_add ?>"></script>
+       <script type="text/javascript" src="tt-rss.js?<?php echo $dt_add ?>"></script>
+       <script type="text/javascript" src="functions.js?<?php echo $dt_add ?>"></script>
+       <script type="text/javascript" src="feedlist.js?<?php echo $dt_add ?>"></script>
+       <script type="text/javascript" src="viewfeed.js?<?php echo $dt_add ?>"></script>
 
-       <script type="text/javascript" src="tt-rss.js?<?= $dt_add ?>"></script>
-       <script type="text/javascript" src="functions.js?<?= $dt_add ?>"></script>
-       <!--[if gte IE 5.5000]>
-               <script type="text/javascript" src="pngfix.js"></script>
-               <link rel="stylesheet" type="text/css" href="tt-rss-ie.css">
-       <![endif]-->
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 
        <script type="text/javascript">
                if (navigator.userAgent.match("Opera")) {
                        document.write('<link rel="stylesheet" type="text/css" href="opera.css">');
                }
+               if (navigator.userAgent.match("Gecko") && !navigator.userAgent.match("KHTML")) {
+                       document.write('<link rel="stylesheet" type="text/css" href="gecko.css">');
+               }
        </script>
 </head>
 
-<body>
+<body onresize="resize_headlines()">
+
+<div id="overlay">
+       <div id="overlay_inner">
+       <p><?php echo __("Loading, please wait...") ?></p>
+       <noscript>
+               <div class="error"><?php echo
+               __("Your browser doesn't support Javascript, which is required
+               for this application to function properly. Please check your
+               browser settings.") ?></div>
+       </noscript>
+       </div>
+</div> 
+
+<div id="notify" class="notify"><span id="notify_body">&nbsp;</span></div>
 
-<div id="overlay"><div id="overlay_inner">Loading, please wait...</div></div>
 <div id="fatal_error"><div id="fatal_error_inner">
        <h1>Fatal Error</h1>
        <div id="fatal_error_msg">Unknown Error</div>
 </div></div>
 
+<div id="dialog_overlay"> </div>
+
 <script type="text/javascript">
 if (document.addEventListener) {
        document.addEventListener("DOMContentLoaded", init, null);
@@ -74,214 +98,139 @@ if (document.addEventListener) {
 window.onload = init;
 </script>
 
-<? if (ENABLE_UPDATE_DAEMON && !file_is_locked("update_daemon.lock")) { ?>
-       <div class="warning">
-               <b>Warning:</b> Update daemon is enabled in configuration, but daemon
-               process is not running, which prevents all feeds from updating. Please
-               start the daemon process or contact instance owner.
-       </div>
-<? } ?>
-
 <ul id="debug_output"></ul>
 
-<table width="100%" height="100%" cellspacing="0" cellpadding="0" class="main">
-<? if (get_pref($link, 'DISPLAY_HEADER')) { ?>
-<tr>
-       <td colspan="2" class="headerBox" id="mainHeader">
-               <table cellspacing="0" cellpadding="0" width="100%"><tr>
-                       <td rowspan="2" class="header" valign="middle"> 
-                               <img src="images/ttrss_logo.png" alt="logo">    
-                       </td>
-                       <td valign="top" class="notifyBox">
-                               <div id="notify"><span id="notify_body">&nbsp;</span></div>
-                       </td>
-
-                       <div id="userDlgShadow"><div id="userDlg">&nbsp;</div></div>
-
-               </tr><tr><td class="welcomePrompt">
-                       <? if (!SINGLE_USER_MODE) { ?>
-                               Hello, <b><?= $_SESSION["name"] ?></b>
-                               (<a href="logout.php">Logout</a>)
-                       <? } ?>
-                       </td>                   
-               </tr></table>
-       </td>
-</tr>
-<? } else { ?>
-<tr>
-       <td class="small" id="mainHeader">
-               <div id="notify"><span id="notify_body">&nbsp;</span></div>
-               <div id="userDlgShadow"><div id="userDlg">&nbsp;</div></div>
-       </td><td class="welcomePrompt">
-               <? if (!SINGLE_USER_MODE) { ?>
-                       Hello, <b><?= $_SESSION["name"] ?></b>
-                       (<a href="logout.php">Logout</a>)
-               <? } ?>
-</td></tr>
-<? } ?>
-<tr>
-       <? if (get_pref($link, 'COMBINED_DISPLAY_MODE')) 
-                       $feeds_rowspan = 2;
-               else 
-                       $feeds_rowspan = 3; ?>
-       <td valign="top" rowspan="<?= $feeds_rowspan ?>" class="feeds"> 
-               <table class="innerFeedTable" 
-                       cellspacing="0" cellpadding="0" height="100%" width="100%">
-               <tr><td>
-                       <div id="dispSwitch"> 
-                       <a id="dispSwitchPrompt" href="javascript:toggleTags()">display tags</a>
-               </div>
-               </td></tr>      
-               <tr><td height="100%" width="100%" valign="top">
+<div id="infoBoxShadow"><div id="infoBox">&nbsp;</div></div>
 
-               <iframe frameborder="0" 
-                       src="backend.php?op=error&msg=Loading,%20please wait..."
-                       id="feeds-frame" name="feeds-frame" class="feedsFrame"> </iframe>
+<div id="header">
+       <div class="topLinks">
+       <?php if (!SINGLE_USER_MODE) { ?>
+                       <?php echo __('Hello,') ?> <b><?php echo $_SESSION["name"] ?></b> |
+       <?php } ?>
+       <a href="prefs.php"><?php echo __('Preferences') ?></a>
 
-               </td></tr></table>
+       <?php if (!SINGLE_USER_MODE) { ?>
+                       | <a href="logout.php"><?php echo __('Logout') ?></a>
+       <?php } ?>
 
-       </td>
-       <td valign="top" class="headlinesToolbarBox">
-               <table width="100%" cellpadding="0" cellspacing="0">
+       <img id="newVersionIcon" style="display:none;" onclick="javascript:explainError(2)" 
+               src="images/new_version.png" title="New version is available!" 
+               alt="new_version_icon">
+       </div>
+       <img src="<?php echo $theme_image_path ?>images/ttrss_logo.png" alt="Tiny Tiny RSS"/>   
+</div>
 
-               <tr><td class="headlinesToolbar" id="headlinesToolbar">
+<div id="feeds-holder">
+       <div id="dispSwitch"> 
+               <a id="dispSwitchPrompt" 
+                       href="javascript:toggleTags()"><?php echo __("tag cloud") ?></a>
+       </div>
+       <div id="feeds-frame">&nbsp;</div>
+</div>
 
-               <? if (get_pref($link, 'ENABLE_SEARCH_TOOLBAR')) { ?>
+<div id="toolbar">
 
-               <input id="searchbox"
-                       onblur="javascript:enableHotkeys();" onfocus="javascript:disableHotkeys();">
-               <select id="searchmodebox">
-                       <option>This feed</option>
-                       <? if (get_pref($link, 'ENABLE_FEED_CATS')) { ?>
-                       <option>This category</option>
-                       <? } ?>
-                       <option>All feeds</option>
-               </select>
-               
-               <input type="submit" 
-                       class="button" onclick="javascript:search()" value="Search">
+               <div style="float : right">
+                       <select id="quickMenuChooser" onchange="quickMenuChange()">
+                                       <option value="qmcDefault" selected><?php echo __('Actions...') ?></option>
+                                       <option value="qmcSearch"><?php echo __('Search') ?></option>
+                                       <!-- <option value="qmcPrefs"><?php echo __('Preferences') ?></option> -->
+                                       <option disabled>--------</option>
+                                       <option style="color : #5050aa" disabled><?php echo __('Feed actions:') ?></option>
+                                       <option value="qmcAddFeed"><?php echo __('&nbsp;&nbsp;Subscribe to feed') ?></option>
+                                       <option value="qmcEditFeed"><?php echo __('&nbsp;&nbsp;Edit this feed') ?></option>
+                                       <!-- <option value="qmcClearFeed"><?php echo __('&nbsp;&nbsp;Clear articles') ?></option> -->
+                                       <option value="qmcRemoveFeed"><?php echo __('&nbsp;&nbsp;Unsubscribe') ?></option>
+                                       <option disabled>--------</option>
+                                       <option style="color : #5050aa" disabled><?php echo __('All feeds:') ?></option>
+                                       <option value="qmcCatchupAll"><?php echo __('&nbsp;&nbsp;Mark as read') ?></option>
+                                       <option value="qmcShowOnlyUnread"><?php echo __('&nbsp;&nbsp;(Un)hide read feeds') ?></option>
+                                       <option disabled>--------</option>
+                                       <option style="color : #5050aa" disabled><?php echo __('Other actions:') ?></option>                            
+                                       <option value="qmcAddFilter"><?php echo __('&nbsp;&nbsp;Create filter') ?></option>
+                       </select>
+               </div>
 
-               &nbsp;
-               
-               <? } ?>
-               
-               View: 
-               
-               <select id="viewbox" onchange="javascript:viewCurrentFeed(0, '')">
-                       <option selected>Adaptive</option>
-                       <option>All Articles</option>
-                       <option>Starred</option>
-                       <option>Unread</option>
-               </select>
+               <form id="main_toolbar_form" onsubmit='return false'>
+
+               <?php if (get_pref($link, 'ENABLE_SEARCH_TOOLBAR')) { ?>
 
-               &nbsp;Limit:
+               <?php echo __('Search:') ?>
+               <input name="query"
+                       onKeyPress="return filterCR(event, viewCurrentFeed)"
+                       onblur="javascript:enableHotkeys();" onfocus="javascript:disableHotkeys();">
+
+               <?php } ?>
 
-               <select id="limitbox" onchange="javascript:viewCurrentFeed(0, '')">
+               <?php echo __('View:') ?>
+               <select name="view_mode" onchange="viewCurrentFeed(0, '')">
+                       <option selected value="adaptive"><?php echo __('Adaptive') ?></option>
+                       <option value="all_articles"><?php echo __('All Articles') ?></option>
+                       <option value="marked"><?php echo __('Starred') ?></option>
+                       <option value="unread"><?php echo __('Unread') ?></option>
+               </select>
                
-               <?
-                       $limits = array(15 => 15, 30 => 30, 60 => 60);
+               <?php echo __('Limit:') ?>
+               <?php
+               $limits = array(15 => 15, 30 => 30, 60 => 60, 0 => "All");
                        
-                       $def_art_limit = get_pref($link, 'DEFAULT_ARTICLE_LIMIT');
+               $def_art_limit = get_pref($link, 'DEFAULT_ARTICLE_LIMIT');
 
-                       if ($def_art_limit >= 0 && !array_key_exists($def_art_limit, $limits)) {
-                               $limits[$def_art_limit] = $def_art_limit; 
-                       }
+               if ($def_art_limit >= 0 && !array_key_exists($def_art_limit, $limits)) {
+                       $limits[$def_art_limit] = $def_art_limit; 
+               }
 
-                       asort($limits);
-                       array_push($limits, 0);
+               asort($limits);
 
-                       if (!$def_art_limit) {
-                               $def_art_limit = 30;
-                       }
+               if (!$def_art_limit) {
+                       $def_art_limit = 30;
+               }
 
-                       foreach ($limits as $key) {
-                               print "<option";
-                               if ($key == $def_art_limit) { print " selected"; }
-                               print ">";
-                               
-                               if ($limits[$key] == 0) { print "All"; } else { print $limits[$key]; }
-                               
-                               print "</option>";
-                       } ?>
-               
-               </select>
+               print_select_hash("limit", $def_art_limit, $limits, 
+                       'onchange="viewCurrentFeed(0, \'\')"');
+       
+               ?>              
 
-<!--           &nbsp;Selection:
+               &nbsp;
 
-               <select id="headopbox">
-                       <option id="hopToggleRead">Toggle (un)read</option>
-               </select>
+               <input class="button" type="submit"
+                       onclick="return viewCurrentFeed('ForceUpdate')" 
+                       value="<?php echo __('Update') ?>">
 
-               <input class="button" type="submit" onclick="headopGo()" value="Go"> -->
+               </form>
 
-               &nbsp;Feed: <input class="button" type="submit"
-                       onclick="javascript:viewCurrentFeed(0, 'ForceUpdate')" value="Update">
+               <!-- &nbsp;<input class="button" type="submit"
+                       onclick="quickMenuGo('qmcSearch')" value="Search (tmp)"> -->
 
-               <input class="button" type="submit" id="btnMarkFeedAsRead"
-                       onclick="javascript:viewCurrentFeed(0, 'MarkAllRead')" value="Mark as read"> 
+               <!-- <input class="button" type="submit"
+                       onclick="catchupCurrentFeed()" value="Mark as read">  -->
 
-               </td>
-               <td align="right">
-                       <select id="quickMenuChooser" onchange="quickMenuChange()">
-                               <option id="qmcDefault" selected>Actions...</option>
-                               <option id="qmcPrefs">Preferences</option>
-                               <option id="qmcSearch">Search</option>
-                               <option disabled>--------</option>
-                               <option style="color : #5050aa" disabled>Feed actions:</option>
-                               <option id="qmcAddFeed">&nbsp;&nbsp;Add new feed</option>
-                               <option id="qmcRemoveFeed">&nbsp;&nbsp;Remove this feed</option>
-                               <!-- <option>Edit this feed</option> -->
-                               <option disabled>--------</option>
-                               <option style="color : #5050aa" disabled>All feeds:</option>
-                               <? if (!ENABLE_UPDATE_DAEMON) { ?>
-                               <option id="qmcUpdateFeeds">&nbsp;&nbsp;Update</option>
-                               <? } ?>
-                               <option id="qmcCatchupAll">&nbsp;&nbsp;Mark as read</option>                            
-                               <option id="qmcShowOnlyUnread">&nbsp;&nbsp;Show only unread</option>
-                               <option disabled>--------</option>
-                               <option style="color : #5050aa" disabled>Other actions:</option>                                
-                               <option id="qmcAddFilter">&nbsp;&nbsp;Add filter</option>
-                       </select>
-               </td>
-               </tr>
-               </table>
-       </td>
-</tr>
-<? if (get_pref($link, 'COMBINED_DISPLAY_MODE')) { ?>
-<tr>
-       <td id="headlines" class="headlines2" valign="top">
-               <iframe frameborder="0" name="headlines-frame" 
-                       id="headlines-frame" class="headlinesFrame" 
-                               src="backend.php?op=error&msg=No%20feed%20selected."></iframe>
-       </td>
-</tr>
-<? } else { ?>
-<tr>
-       <td id="headlines" class="headlines" valign="top">
-               <iframe frameborder="0" name="headlines-frame" 
-                       id="headlines-frame" class="headlinesFrame" 
-                               src="backend.php?op=error&msg=No%20feed%20selected."></iframe>
-       </td>
-</tr><tr>
-       <td class="content" id="content" valign="top">
-               <iframe frameborder="0" name="content-frame" 
-                       id="content-frame" class="contentFrame"> </iframe>
-       </td>
-</tr>
-<? } ?>
-<? if (get_pref($link, 'DISPLAY_FOOTER')) { ?>
-<tr>
-       <td colspan="2" class="footer" id="mainFooter">
-               <a href="http://tt-rss.spb.ru/">Tiny-Tiny RSS</a> v<?= VERSION ?> &copy; 2005-2006 Andrew Dolgov
-               <? if (WEB_DEMO_MODE) { ?>
-               <br>Running in demo mode, some functionality is disabled.
-               <? } ?>
-       </td>
-</td>
-<? } ?>
-</table>
-
-<? db_close($link); ?>
+       </div>
+
+<?php if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) { ?>
+       <div id="headlines-frame" class="headlines_normal">
+               <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div>
+       <div id="content-frame"><div class="whiteBox">&nbsp;</div></div>
+<?php } else { ?>
+       <div id="headlines-frame" class="headlines_cdm">
+               <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div>
+<?php } ?>
+
+<div id="footer">
+       <?php if (defined('_DEBUG_USER_SWITCH')) { ?>
+               <select id="userSwitch" onchange="userSwitch()">
+               <?php 
+                       foreach (array('admin', 'fox', 'test') as $u) {
+                               $op_sel = ($u == $_SESSION["name"]) ? "selected" : "";
+                               print "<option $op_sel>$u</option>";
+                       }
+               ?>
+               </select>
+       <?php } ?>
+       <a href="http://tt-rss.org/">Tiny Tiny RSS</a> v<?php echo VERSION ?> &copy; 2005-2007 <a href="http://bah.org.ru/">Andrew Dolgov</a>
+</div>
+
+<?php db_close($link); ?>
 
 <script type="text/javascript">
        /* for IE */