]>
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"> |
73495fd1 | 111 | |
c2625f8e | 112 | <?php if (!SINGLE_USER_MODE) { ?> |
efae7595 | 113 | <?php echo __('Hello,') ?> <b><?php echo $_SESSION["name"] ?></b> | |
c2625f8e | 114 | <?php } ?> |
efae7595 AD |
115 | <a href="prefs.php"><?php echo __('Preferences') ?></a> |
116 | ||
697ee54c | 117 | <?php if (defined('FEEDBACK_URL') && FEEDBACK_URL) { ?> |
db499b67 | 118 | | <a target="_blank" class="feedback" href="<?php echo FEEDBACK_URL ?>"> |
b5dabd1a | 119 | <?php echo __('Comments?') ?></a> |
be746c8e | 120 | <?php } ?> |
b5dabd1a | 121 | |
efae7595 AD |
122 | <?php if (!SINGLE_USER_MODE) { ?> |
123 | | <a href="logout.php"><?php echo __('Logout') ?></a> | |
124 | <?php } ?> | |
125 | ||
b4507bc2 | 126 | <img id="newVersionIcon" style="display:none;" onclick="javascript:explainError(2)" |
73495fd1 | 127 | src="images/new_version.png" title="<?php echo __('New version of Tiny Tiny RSS is available!') ?>" |
74d5c8fa | 128 | alt="new_version_icon"/> |
73495fd1 | 129 | |
d9fa39f1 | 130 | </div> |
3f59e8cd | 131 | <img src="<?php echo $theme_image_path ?>images/ttrss_logo.png" alt="Tiny Tiny RSS"/> |
c2625f8e | 132 | </div> |
caa4e57f | 133 | |
6b4163cb AD |
134 | <div id="feeds-holder"> |
135 | <div id="dispSwitch"> | |
709e7dc2 | 136 | <a id="dispSwitchPrompt" |
0979b696 | 137 | href="javascript:toggleTags()"><?php echo __("tag cloud") ?></a> |
62f7bf71 | 138 | <?php if (!SINGLE_USER_MODE) { ?> |
66e7fcc9 AD |
139 | <br/> |
140 | <a id="feedBrowserPrompt" href="prefs.php?tab=feedBrowser" | |
141 | title="<?php echo __('More feeds...') ?>">+</a> | |
62f7bf71 | 142 | <?php } ?> |
6b4163cb | 143 | </div> |
eb58af8d | 144 | <div id="feeds-frame"> </div> |
6b4163cb | 145 | </div> |
f69ea84d | 146 | |
6b4163cb | 147 | <div id="toolbar"> |
5238347d | 148 | |
6b4163cb AD |
149 | <div style="float : right"> |
150 | <select id="quickMenuChooser" onchange="quickMenuChange()"> | |
74d5c8fa | 151 | <option value="qmcDefault" selected="selected"><?php echo __('Actions...') ?></option> |
ee4ee3e3 | 152 | <option value="qmcSearch"><?php echo __('Search...') ?></option> |
efae7595 | 153 | <!-- <option value="qmcPrefs"><?php echo __('Preferences') ?></option> --> |
74d5c8fa AD |
154 | <option disabled="disabled">--------</option> |
155 | <option style="color : #5050aa" disabled="disabled"><?php echo __('Feed actions:') ?></option> | |
ee4ee3e3 AD |
156 | <option value="qmcAddFeed"> <?php echo __('Subscribe to feed...') ?></option> |
157 | <option value="qmcEditFeed"> <?php echo __('Edit this feed...') ?></option> | |
158 | <!-- <option value="qmcClearFeed"> <?php echo __('Clear articles') ?></option> --> | |
159 | <option value="qmcRescoreFeed"> <?php echo __('Rescore feed') ?></option> | |
160 | <option value="qmcRemoveFeed"> <?php echo __('Unsubscribe') ?></option> | |
74d5c8fa AD |
161 | <option disabled="disabled">--------</option> |
162 | <option style="color : #5050aa" disabled="disabled"><?php echo __('All feeds:') ?></option> | |
ee4ee3e3 AD |
163 | <option value="qmcCatchupAll"> <?php echo __('Mark as read') ?></option> |
164 | <option value="qmcShowOnlyUnread"> <?php echo __('(Un)hide read feeds') ?></option> | |
74d5c8fa AD |
165 | <option disabled="disabled">--------</option> |
166 | <option style="color : #5050aa" disabled="disabled"><?php echo __('Other actions:') ?></option> | |
1380f8ee | 167 | |
ee4ee3e3 AD |
168 | <option value="qmcAddLabel"> <?php echo __('Create label...') ?></option> |
169 | <option value="qmcAddFilter"> <?php echo __('Create filter...') ?></option> | |
2ac20667 AD |
170 | <option value="qmcResetUI"> <?php echo __('Reset UI layout') ?></option> |
171 | <option value="qmcResetCats"> <?php echo __('Reset category order') ?></option> | |
d16a5159 | 172 | |
238eff01 | 173 | <option value="qmcHKhelp"><?php echo __(' Keyboard shortcuts') ?></option> |
6b4163cb AD |
174 | </select> |
175 | </div> | |
5238347d | 176 | |
74d5c8fa | 177 | <form id="main_toolbar_form" action="" onsubmit='return false'> |
5238347d | 178 | |
8389b150 | 179 | <input type="submit" value="<<" |
8a8f7c55 | 180 | id="collapse_feeds_btn" onclick="collapse_feedlist()" class="button" |
74d5c8fa | 181 | title="<?php echo __('Collapse feedlist') ?>" style="display : none"/> |
8389b150 AD |
182 | |
183 | <input type="submit" value="<?php echo __("Toggle Feedlist") ?>" | |
8a8f7c55 | 184 | id="toggle_feeds_btn" class="button" |
74d5c8fa | 185 | onclick="toggle_feedlist()" style="display : none"/> |
24c1e1c1 | 186 | |
58daed52 AD |
187 | |
188 | ||
feead173 AD |
189 | <?php if (get_pref($link, 'ENABLE_SEARCH_TOOLBAR')) { ?> |
190 | ||
d1db26aa | 191 | <?php echo __('Search:') ?> |
74d5c8fa AD |
192 | <input name="query" type="text" |
193 | onkeypress="return filterCR(event, viewCurrentFeed)" | |
194 | onblur="javascript:enableHotkeys();" onfocus="javascript:disableHotkeys();"/> | |
8551c73a | 195 | |
feead173 AD |
196 | <?php } ?> |
197 | ||
3c2d7945 | 198 | <select name="view_mode" onchange="viewModeChanged()"> |
74d5c8fa | 199 | <option selected="selected" value="adaptive"><?php echo __('Adaptive') ?></option> |
d1db26aa AD |
200 | <option value="all_articles"><?php echo __('All Articles') ?></option> |
201 | <option value="marked"><?php echo __('Starred') ?></option> | |
202 | <option value="unread"><?php echo __('Unread') ?></option> | |
7b4d02a8 | 203 | <!-- <option value="noscores"><?php echo __('Ignore Scoring') ?></option> --> |
8b09eac8 | 204 | <option value="updated"><?php echo __('Updated') ?></option> |
f0601b87 | 205 | </select> |
7b4d02a8 | 206 | |
45c8c7a6 | 207 | <?php echo __('Order:') ?> |
7b4d02a8 AD |
208 | |
209 | <select name="order_by" onchange="viewModeChanged()"> | |
74d5c8fa | 210 | <option selected="selected" value="default"><?php echo __('Default') ?></option> |
7b4d02a8 AD |
211 | <option value="date"><?php echo __('Date') ?></option> |
212 | <option value="title"><?php echo __('Title') ?></option> | |
213 | <option value="score"><?php echo __('Score') ?></option> | |
214 | </select> | |
215 | ||
216 | ||
d1db26aa | 217 | <?php echo __('Limit:') ?> |
1d3a17c7 | 218 | <?php |
86b682ce | 219 | $limits = array(15 => 15, 30 => 30, 60 => 60, 0 => "All"); |
f1b9a8ee | 220 | |
86b682ce | 221 | $def_art_limit = get_pref($link, 'DEFAULT_ARTICLE_LIMIT'); |
cb1083a1 | 222 | |
86b682ce AD |
223 | if ($def_art_limit >= 0 && !array_key_exists($def_art_limit, $limits)) { |
224 | $limits[$def_art_limit] = $def_art_limit; | |
225 | } | |
1572afe5 | 226 | |
86b682ce AD |
227 | asort($limits); |
228 | ||
229 | if (!$def_art_limit) { | |
230 | $def_art_limit = 30; | |
231 | } | |
232 | ||
233 | print_select_hash("limit", $def_art_limit, $limits, | |
3c2d7945 | 234 | 'onchange="viewLimitChanged()"'); |
86b682ce AD |
235 | |
236 | ?> | |
2df7a749 AD |
237 | |
238 | | |
239 | ||
240 | <input class="button" type="submit" | |
241 | onclick="return viewCurrentFeed('ForceUpdate')" | |
74d5c8fa | 242 | value="<?php echo __('Update') ?>"/> |
2df7a749 | 243 | |
86b682ce | 244 | </form> |
1572afe5 | 245 | |
86b682ce AD |
246 | <!-- <input class="button" type="submit" |
247 | onclick="quickMenuGo('qmcSearch')" value="Search (tmp)"> --> | |
1572afe5 | 248 | |
11befbb2 AD |
249 | <!-- <input class="button" type="submit" |
250 | onclick="catchupCurrentFeed()" value="Mark as read"> --> | |
f0601b87 | 251 | |
6b4163cb AD |
252 | </div> |
253 | ||
80e4dc34 | 254 | <?php if (!get_pref($link, 'COMBINED_DISPLAY_MODE')) { ?> |
b76affe9 | 255 | <div id="headlines-frame" class="headlines_normal"> |
d1db26aa | 256 | <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div> |
17042fc0 | 257 | <div id="content-frame"> |
91cdbe52 | 258 | <div id="resize-grabber" |
94047498 | 259 | onmouseover="enable_resize(true)" onmouseout="enable_resize(false)" |
17042fc0 AD |
260 | title="<?php echo __('Drag me to resize panels') ?>"> |
261 | <img src="images/resize_handle_horiz.png" id="resize-handle" | |
262 | onmouseover="enable_resize(true)" onmouseout="enable_resize(false)" | |
3286e486 | 263 | alt=""/> |
17042fc0 AD |
264 | </div> |
265 | <div id="content-insert"> </div> | |
266 | <!-- <div class="whiteBox"> </div> --> </div> | |
80e4dc34 | 267 | <?php } else { ?> |
b76affe9 | 268 | <div id="headlines-frame" class="headlines_cdm"> |
d1db26aa | 269 | <div class="whiteBox"><?php echo __('No feed selected.') ?></div></div> |
80e4dc34 | 270 | <?php } ?> |
6b4163cb | 271 | |
c2625f8e | 272 | <div id="footer"> |
461766f3 AD |
273 | <?php if (defined('_DEBUG_USER_SWITCH')) { ?> |
274 | <select id="userSwitch" onchange="userSwitch()"> | |
275 | <?php | |
276 | foreach (array('admin', 'fox', 'test') as $u) { | |
277 | $op_sel = ($u == $_SESSION["name"]) ? "selected" : ""; | |
278 | print "<option $op_sel>$u</option>"; | |
279 | } | |
280 | ?> | |
281 | </select> | |
aff31ecf | 282 | <?php } ?> |
8865bdc0 AD |
283 | <a href="http://tt-rss.org/">Tiny Tiny RSS</a> |
284 | <?php if (!defined('HIDE_VERSION')) { ?> | |
285 | v<?php echo VERSION ?> | |
286 | <?php } ?> | |
c4f56bed | 287 | © 2005–2009 <a href="http://bah.org.ru/">Andrew Dolgov</a> |
c2625f8e | 288 | </div> |
1cd17194 | 289 | |
1d3a17c7 | 290 | <?php db_close($link); ?> |
1cd17194 | 291 | |
97dcd654 AD |
292 | <script type="text/javascript"> |
293 | /* for IE */ | |
294 | function statechange() { | |
295 | if (document.readyState == "interactive") init(); | |
296 | } | |
297 | ||
298 | if (document.readyState) { | |
299 | if (document.readyState == "interactive" || document.readyState == "complete") { | |
300 | init(); | |
301 | } else { | |
302 | document.onreadystatechange = statechange; | |
303 | } | |
304 | } | |
305 | </script> | |
306 | ||
1cd17194 AD |
307 | </body> |
308 | </html> |