]>
Commit | Line | Data |
---|---|---|
1d3a17c7 | 1 | <?php |
d65981e2 AD |
2 | error_reporting(E_ERROR | E_WARNING | E_PARSE); |
3 | ||
7ae65adf | 4 | require_once "functions.php"; |
1df0f48b | 5 | require_once "sessions.php"; |
66581886 | 6 | require_once "sanity_check.php"; |
4062022e AD |
7 | require_once "version.php"; |
8 | require_once "config.php"; | |
9 | require_once "db-prefs.php"; | |
da5d0d09 | 10 | |
4062022e | 11 | $link = db_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME); |
c93f38c4 | 12 | |
b8aa49bc | 13 | login_sequence($link); |
ff485f1d | 14 | |
1b758780 | 15 | $dt_add = get_script_dt_add(); |
53515ff1 | 16 | |
dc56b3b7 | 17 | no_cache_incantation(); |
1df0f48b | 18 | |
03208748 AD |
19 | header('Content-Type: text/html; charset=utf-8'); |
20 | ||
4062022e | 21 | ?> |
6b4163cb AD |
22 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
23 | "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | |
1cd17194 AD |
24 | <html> |
25 | <head> | |
26 | <title>Tiny Tiny RSS</title> | |
da5d0d09 | 27 | |
74d5c8fa | 28 | <link rel="stylesheet" type="text/css" href="tt-rss.css?<?php echo $dt_add ?>"/> |
430bf183 | 29 | |
1d3a17c7 | 30 | <?php $user_theme = $_SESSION["theme"]; |
503eb349 | 31 | if ($user_theme) { ?> |
48d5f90a | 32 | <link rel="stylesheet" type="text/css" href="themes/<?php echo $user_theme ?>/theme.css?<?php echo $dt_add ?>"> |
1d3a17c7 | 33 | <?php } ?> |
503eb349 | 34 | |
1d3a17c7 | 35 | <?php if ($user_theme) { $theme_image_path = "themes/$user_theme/"; } ?> |
5d35cdcd | 36 | |
1d3a17c7 AD |
37 | <?php $user_css_url = get_pref($link, 'USER_STYLESHEET_URL'); ?> |
38 | <?php if ($user_css_url) { ?> | |
2e4afda7 | 39 | <link rel="stylesheet" type="text/css" href="<?php echo $user_css_url ?>"/> |
1d3a17c7 | 40 | <?php } ?> |
386d7b5b | 41 | |
74d5c8fa | 42 | <link rel="shortcut icon" type="image/png" href="images/favicon.png"/> |
c0266b88 | 43 | |
fe7537b5 | 44 | <script type="text/javascript" src="lib/prototype.js"></script> |
bd40e88e | 45 | <script type="text/javascript" src="lib/scriptaculous/scriptaculous.js?load=effects,dragdrop,controls"></script> |
ff39ff9b AD |
46 | <script type="text/javascript" charset="utf-8" src="localized_js.php?<?php echo $dt_add ?>"></script> |
47 | <script type="text/javascript" charset="utf-8" src="tt-rss.js?<?php echo $dt_add ?>"></script> | |
48 | <script type="text/javascript" charset="utf-8" src="functions.js?<?php echo $dt_add ?>"></script> | |
49 | <script type="text/javascript" charset="utf-8" src="feedlist.js?<?php echo $dt_add ?>"></script> | |
50 | <script type="text/javascript" charset="utf-8" src="viewfeed.js?<?php echo $dt_add ?>"></script> | |
6b4163cb | 51 | |
74d5c8fa | 52 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> |
362698ad AD |
53 | |
54 | <script type="text/javascript"> | |
74d5c8fa | 55 | //<![CDATA[ |
362698ad AD |
56 | if (navigator.userAgent.match("Opera")) { |
57 | document.write('<link rel="stylesheet" type="text/css" href="opera.css">'); | |
58 | } | |
74d5c8fa AD |
59 | window.onresize=resize_headlines; |
60 | //]]> | |
362698ad | 61 | </script> |
1cd17194 AD |
62 | </head> |
63 | ||
74d5c8fa | 64 | <body id="ttrssMain"> |
97dcd654 | 65 | |
88dd0ac0 | 66 | <div id="overlay" style="display : block"> |
84916243 | 67 | <div id="overlay_inner"> |
730dbf19 AD |
68 | <?php echo __("Loading, please wait...") ?> |
69 | ||
70 | <div id="l_progress_o"> | |
99509451 | 71 | <div id="l_progress_i"></div> |
730dbf19 AD |
72 | </div> |
73 | ||
84916243 | 74 | <noscript> |
b76affe9 | 75 | <div class="error"><?php echo |
d1db26aa | 76 | __("Your browser doesn't support Javascript, which is required |
84916243 | 77 | for this application to function properly. Please check your |
b76affe9 | 78 | browser settings.") ?></div> |
84916243 AD |
79 | </noscript> |
80 | </div> | |
81 | </div> | |
6b4163cb | 82 | |
0745839a | 83 | <div id="hotkey_help_overlay" style="display : none" onclick="Element.hide(this)"> |
ec92c9d1 | 84 | <?php rounded_table_start("hho"); ?> |
4298481d | 85 | <?php include "help/3.php" ?> |
ec92c9d1 | 86 | <?php rounded_table_end(); ?> |
4298481d AD |
87 | </div> |
88 | ||
33b8cab4 AD |
89 | <div id="notify" class="notify"><span id="notify_body"> </span></div> |
90 | ||
af106b0e AD |
91 | <div id="fatal_error"><div id="fatal_error_inner"> |
92 | <h1>Fatal Error</h1> | |
462a192b | 93 | <div id="fatal_error_msg">Unknown Error</div> |
af106b0e | 94 | </div></div> |
2055d4a6 | 95 | |
569720c5 | 96 | <div id="dialog_overlay" style="display : none"> </div> |
5ede560f | 97 | |
97dcd654 AD |
98 | <script type="text/javascript"> |
99 | if (document.addEventListener) { | |
100 | document.addEventListener("DOMContentLoaded", init, null); | |
101 | } | |
102 | window.onload = init; | |
103 | </script> | |
1cd17194 | 104 | |
74d5c8fa | 105 | <ul id="debug_output" style='display : none'><li> </li></ul> |
0ee1d1a0 | 106 | |
cea10627 AD |
107 | <div id="infoBoxShadow"><div id="infoBox"> </div></div> |
108 | ||
c2625f8e | 109 | <div id="header"> |
efae7595 | 110 | <div class="topLinks"> |
c2625f8e | 111 | <?php if (!SINGLE_USER_MODE) { ?> |
efae7595 | 112 | <?php echo __('Hello,') ?> <b><?php echo $_SESSION["name"] ?></b> | |
c2625f8e | 113 | <?php } ?> |
efae7595 AD |
114 | <a href="prefs.php"><?php echo __('Preferences') ?></a> |
115 | ||
697ee54c | 116 | <?php if (defined('FEEDBACK_URL') && FEEDBACK_URL) { ?> |
db499b67 | 117 | | <a target="_blank" class="feedback" href="<?php echo FEEDBACK_URL ?>"> |
b5dabd1a | 118 | <?php echo __('Comments?') ?></a> |
be746c8e | 119 | <?php } ?> |
b5dabd1a | 120 | |
efae7595 AD |
121 | <?php if (!SINGLE_USER_MODE) { ?> |
122 | | <a href="logout.php"><?php echo __('Logout') ?></a> | |
123 | <?php } ?> | |
124 | ||
b4507bc2 | 125 | <img id="newVersionIcon" style="display:none;" onclick="javascript:explainError(2)" |
d9fa39f1 | 126 | src="images/new_version.png" title="New version is available!" |
74d5c8fa | 127 | alt="new_version_icon"/> |
d9fa39f1 | 128 | </div> |
3f59e8cd | 129 | <img src="<?php echo $theme_image_path ?>images/ttrss_logo.png" alt="Tiny Tiny RSS"/> |
c2625f8e | 130 | </div> |
caa4e57f | 131 | |
6b4163cb AD |
132 | <div id="feeds-holder"> |
133 | <div id="dispSwitch"> | |
709e7dc2 | 134 | <a id="dispSwitchPrompt" |
0979b696 | 135 | href="javascript:toggleTags()"><?php echo __("tag cloud") ?></a> |
62f7bf71 | 136 | <?php if (!SINGLE_USER_MODE) { ?> |
66e7fcc9 AD |
137 | <br/> |
138 | <a id="feedBrowserPrompt" href="prefs.php?tab=feedBrowser" | |
139 | title="<?php echo __('More feeds...') ?>">+</a> | |
62f7bf71 | 140 | <?php } ?> |
6b4163cb | 141 | </div> |
eb58af8d | 142 | <div id="feeds-frame"> </div> |
6b4163cb | 143 | </div> |
f69ea84d | 144 | |
6b4163cb | 145 | <div id="toolbar"> |
5238347d | 146 | |
6b4163cb AD |
147 | <div style="float : right"> |
148 | <select id="quickMenuChooser" onchange="quickMenuChange()"> | |
74d5c8fa | 149 | <option value="qmcDefault" selected="selected"><?php echo __('Actions...') ?></option> |
ee4ee3e3 | 150 | <option value="qmcSearch"><?php echo __('Search...') ?></option> |
efae7595 | 151 | <!-- <option value="qmcPrefs"><?php echo __('Preferences') ?></option> --> |
74d5c8fa AD |
152 | <option disabled="disabled">--------</option> |
153 | <option style="color : #5050aa" disabled="disabled"><?php echo __('Feed actions:') ?></option> | |
ee4ee3e3 AD |
154 | <option value="qmcAddFeed"> <?php echo __('Subscribe to feed...') ?></option> |
155 | <option value="qmcEditFeed"> <?php echo __('Edit this feed...') ?></option> | |
156 | <!-- <option value="qmcClearFeed"> <?php echo __('Clear articles') ?></option> --> | |
157 | <option value="qmcRescoreFeed"> <?php echo __('Rescore feed') ?></option> | |
158 | <option value="qmcRemoveFeed"> <?php echo __('Unsubscribe') ?></option> | |
74d5c8fa AD |
159 | <option disabled="disabled">--------</option> |
160 | <option style="color : #5050aa" disabled="disabled"><?php echo __('All feeds:') ?></option> | |
ee4ee3e3 AD |
161 | <option value="qmcCatchupAll"> <?php echo __('Mark as read') ?></option> |
162 | <option value="qmcShowOnlyUnread"> <?php echo __('(Un)hide read feeds') ?></option> | |
74d5c8fa AD |
163 | <option disabled="disabled">--------</option> |
164 | <option style="color : #5050aa" disabled="disabled"><?php echo __('Other actions:') ?></option> | |
1380f8ee | 165 | |
ee4ee3e3 AD |
166 | <option value="qmcAddLabel"> <?php echo __('Create label...') ?></option> |
167 | <option value="qmcAddFilter"> <?php echo __('Create filter...') ?></option> | |
2ac20667 AD |
168 | <option value="qmcResetUI"> <?php echo __('Reset UI layout') ?></option> |
169 | <option value="qmcResetCats"> <?php echo __('Reset category order') ?></option> | |
d16a5159 | 170 | |
238eff01 | 171 | <option value="qmcHKhelp"><?php echo __(' Keyboard shortcuts') ?></option> |
6b4163cb AD |
172 | </select> |
173 | </div> | |
5238347d | 174 | |
74d5c8fa | 175 | <form id="main_toolbar_form" action="" onsubmit='return false'> |
5238347d | 176 | |
8389b150 | 177 | <input type="submit" value="<<" |
8a8f7c55 | 178 | id="collapse_feeds_btn" onclick="collapse_feedlist()" class="button" |
74d5c8fa | 179 | title="<?php echo __('Collapse feedlist') ?>" style="display : none"/> |
8389b150 AD |
180 | |
181 | <input type="submit" value="<?php echo __("Toggle Feedlist") ?>" | |
8a8f7c55 | 182 | id="toggle_feeds_btn" class="button" |
74d5c8fa | 183 | onclick="toggle_feedlist()" style="display : none"/> |
24c1e1c1 | 184 | |
58daed52 AD |
185 | |
186 | ||
feead173 AD |
187 | <?php if (get_pref($link, 'ENABLE_SEARCH_TOOLBAR')) { ?> |
188 | ||
d1db26aa | 189 | <?php echo __('Search:') ?> |
74d5c8fa AD |
190 | <input name="query" type="text" |
191 | onkeypress="return filterCR(event, viewCurrentFeed)" | |
192 | onblur="javascript:enableHotkeys();" onfocus="javascript:disableHotkeys();"/> | |
8551c73a | 193 | |
feead173 AD |
194 | <?php } ?> |
195 | ||
3c2d7945 | 196 | <select name="view_mode" onchange="viewModeChanged()"> |
74d5c8fa | 197 | <option selected="selected" value="adaptive"><?php echo __('Adaptive') ?></option> |
d1db26aa AD |
198 | <option value="all_articles"><?php echo __('All Articles') ?></option> |
199 | <option value="marked"><?php echo __('Starred') ?></option> | |
200 | <option value="unread"><?php echo __('Unread') ?></option> | |
7b4d02a8 | 201 | <!-- <option value="noscores"><?php echo __('Ignore Scoring') ?></option> --> |
8b09eac8 | 202 | <option value="updated"><?php echo __('Updated') ?></option> |
f0601b87 | 203 | </select> |
7b4d02a8 | 204 | |
45c8c7a6 | 205 | <?php echo __('Order:') ?> |
7b4d02a8 AD |
206 | |
207 | <select name="order_by" onchange="viewModeChanged()"> | |
74d5c8fa | 208 | <option selected="selected" value="default"><?php echo __('Default') ?></option> |
7b4d02a8 AD |
209 | <option value="date"><?php echo __('Date') ?></option> |
210 | <option value="title"><?php echo __('Title') ?></option> | |
211 | <option value="score"><?php echo __('Score') ?></option> | |
212 | </select> | |
213 | ||
214 | ||
d1db26aa | 215 | <?php echo __('Limit:') ?> |
1d3a17c7 | 216 | <?php |
86b682ce | 217 | $limits = array(15 => 15, 30 => 30, 60 => 60, 0 => "All"); |
f1b9a8ee | 218 | |
86b682ce | 219 | $def_art_limit = get_pref($link, 'DEFAULT_ARTICLE_LIMIT'); |
cb1083a1 | 220 | |
86b682ce AD |
221 | if ($def_art_limit >= 0 && !array_key_exists($def_art_limit, $limits)) { |
222 | $limits[$def_art_limit] = $def_art_limit; | |
223 | } | |
1572afe5 | 224 | |
86b682ce AD |
225 | asort($limits); |
226 | ||
227 | if (!$def_art_limit) { | |
228 | $def_art_limit = 30; | |
229 | } | |
230 | ||
231 | print_select_hash("limit", $def_art_limit, $limits, | |
3c2d7945 | 232 | 'onchange="viewLimitChanged()"'); |
86b682ce AD |
233 | |
234 | ?> | |
2df7a749 AD |
235 | |
236 | | |
237 | ||
238 | <input class="button" type="submit" | |
239 | onclick="return viewCurrentFeed('ForceUpdate')" | |
74d5c8fa | 240 | value="<?php echo __('Update') ?>"/> |
2df7a749 | 241 | |
86b682ce | 242 | </form> |
1572afe5 | 243 | |
86b682ce AD |
244 | <!-- <input class="button" type="submit" |
245 | onclick="quickMenuGo('qmcSearch')" value="Search (tmp)"> --> | |
1572afe5 | 246 | |
11befbb2 AD |
247 | <!-- <input class="button" type="submit" |
248 | onclick="catchupCurrentFeed()" value="Mark as read"> --> | |
f0601b87 | 249 | |
6b4163cb AD |
250 | </div> |
251 | ||
80e4dc34 | 252 | <?php if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) { ?> |
b76affe9 | 253 | <div id="headlines-frame" class="headlines_normal"> |
d1db26aa | 254 | <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div> |
17042fc0 | 255 | <div id="content-frame"> |
91cdbe52 | 256 | <div id="resize-grabber" |
94047498 | 257 | onmouseover="enable_resize(true)" onmouseout="enable_resize(false)" |
17042fc0 AD |
258 | title="<?php echo __('Drag me to resize panels') ?>"> |
259 | <img src="images/resize_handle_horiz.png" id="resize-handle" | |
260 | onmouseover="enable_resize(true)" onmouseout="enable_resize(false)" | |
3286e486 | 261 | alt=""/> |
17042fc0 AD |
262 | </div> |
263 | <div id="content-insert"> </div> | |
264 | <!-- <div class="whiteBox"> </div> --> </div> | |
80e4dc34 | 265 | <?php } else { ?> |
b76affe9 | 266 | <div id="headlines-frame" class="headlines_cdm"> |
d1db26aa | 267 | <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div> |
80e4dc34 | 268 | <?php } ?> |
6b4163cb | 269 | |
c2625f8e | 270 | <div id="footer"> |
461766f3 AD |
271 | <?php if (defined('_DEBUG_USER_SWITCH')) { ?> |
272 | <select id="userSwitch" onchange="userSwitch()"> | |
273 | <?php | |
274 | foreach (array('admin', 'fox', 'test') as $u) { | |
275 | $op_sel = ($u == $_SESSION["name"]) ? "selected" : ""; | |
276 | print "<option $op_sel>$u</option>"; | |
277 | } | |
278 | ?> | |
279 | </select> | |
aff31ecf | 280 | <?php } ?> |
8865bdc0 AD |
281 | <a href="http://tt-rss.org/">Tiny Tiny RSS</a> |
282 | <?php if (!defined('HIDE_VERSION')) { ?> | |
283 | v<?php echo VERSION ?> | |
284 | <?php } ?> | |
c4f56bed | 285 | © 2005–2009 <a href="http://bah.org.ru/">Andrew Dolgov</a> |
c2625f8e | 286 | </div> |
1cd17194 | 287 | |
1d3a17c7 | 288 | <?php db_close($link); ?> |
1cd17194 | 289 | |
97dcd654 AD |
290 | <script type="text/javascript"> |
291 | /* for IE */ | |
292 | function statechange() { | |
293 | if (document.readyState == "interactive") init(); | |
294 | } | |
295 | ||
296 | if (document.readyState) { | |
297 | if (document.readyState == "interactive" || document.readyState == "complete") { | |
298 | init(); | |
299 | } else { | |
300 | document.onreadystatechange = statechange; | |
301 | } | |
302 | } | |
303 | </script> | |
304 | ||
1cd17194 AD |
305 | </body> |
306 | </html> |