aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorArthurHoaro <arthur@hoa.ro>2015-12-07 11:25:11 +0100
committerArthurHoaro <arthur@hoa.ro>2015-12-08 15:51:49 +0100
commit38603b2450e983edfab5770bd3dd681c6073f898 (patch)
tree0c11b70421847e8886fa1eaf5ae8486fd35ff0f2
parent4c3df9aa1250df86a4897169a8d4be0d33b2c9f6 (diff)
downloadShaarli-38603b2450e983edfab5770bd3dd681c6073f898.tar.gz
Shaarli-38603b2450e983edfab5770bd3dd681c6073f898.tar.zst
Shaarli-38603b2450e983edfab5770bd3dd681c6073f898.zip
Fixes #403: build the daily page through renderPage()
* new entry in the Router for daily page. * add an always displayed button in demo_plugin
-rw-r--r--application/Router.php6
-rw-r--r--index.php20
-rw-r--r--plugins/demo_plugin/demo_plugin.php2
3 files changed, 22 insertions, 6 deletions
diff --git a/application/Router.php b/application/Router.php
index 1e6a3983..0c813847 100644
--- a/application/Router.php
+++ b/application/Router.php
@@ -13,6 +13,8 @@ class Router
13 13
14 public static $PAGE_TAGCLOUD = 'tagcloud'; 14 public static $PAGE_TAGCLOUD = 'tagcloud';
15 15
16 public static $PAGE_DAILY = 'daily';
17
16 public static $PAGE_TOOLS = 'tools'; 18 public static $PAGE_TOOLS = 'tools';
17 19
18 public static $PAGE_CHANGEPASSWORD = 'changepasswd'; 20 public static $PAGE_CHANGEPASSWORD = 'changepasswd';
@@ -69,6 +71,10 @@ class Router
69 return self::$PAGE_OPENSEARCH; 71 return self::$PAGE_OPENSEARCH;
70 } 72 }
71 73
74 if (startsWith($query, 'do='. self::$PAGE_DAILY)) {
75 return self::$PAGE_DAILY;
76 }
77
72 // At this point, only loggedin pages. 78 // At this point, only loggedin pages.
73 if (!$loggedIn) { 79 if (!$loggedIn) {
74 return self::$PAGE_LINKLIST; 80 return self::$PAGE_LINKLIST;
diff --git a/index.php b/index.php
index 81ab7676..1850e40c 100644
--- a/index.php
+++ b/index.php
@@ -995,8 +995,12 @@ function showDailyRSS() {
995 exit; 995 exit;
996} 996}
997 997
998// "Daily" page. 998/**
999function showDaily() 999 * Show the 'Daily' page.
1000 *
1001 * @param PageBuilder $pageBuilder Template engine wrapper.
1002 */
1003function showDaily($pageBuilder)
1000{ 1004{
1001 $LINKSDB = new LinkDB( 1005 $LINKSDB = new LinkDB(
1002 $GLOBALS['config']['DATASTORE'], 1006 $GLOBALS['config']['DATASTORE'],
@@ -1059,7 +1063,7 @@ function showDaily()
1059 array_push($columns[$index],$link); // Put entry in this column. 1063 array_push($columns[$index],$link); // Put entry in this column.
1060 $fill[$index]+=$length; 1064 $fill[$index]+=$length;
1061 } 1065 }
1062 $PAGE = new pageBuilder; 1066
1063 $data = array( 1067 $data = array(
1064 'linksToDisplay' => $linksToDisplay, 1068 'linksToDisplay' => $linksToDisplay,
1065 'linkcount' => count($LINKSDB), 1069 'linkcount' => count($LINKSDB),
@@ -1072,10 +1076,10 @@ function showDaily()
1072 $pluginManager->executeHooks('render_daily', $data, array('loggedin' => isLoggedIn())); 1076 $pluginManager->executeHooks('render_daily', $data, array('loggedin' => isLoggedIn()));
1073 1077
1074 foreach ($data as $key => $value) { 1078 foreach ($data as $key => $value) {
1075 $PAGE->assign($key, $value); 1079 $pageBuilder->assign($key, $value);
1076 } 1080 }
1077 1081
1078 $PAGE->renderPage('daily'); 1082 $pageBuilder->renderPage('daily');
1079 exit; 1083 exit;
1080} 1084}
1081 1085
@@ -1209,6 +1213,11 @@ function renderPage()
1209 exit; 1213 exit;
1210 } 1214 }
1211 1215
1216 // Daily page.
1217 if ($targetPage == Router::$PAGE_DAILY) {
1218 showDaily($PAGE);
1219 }
1220
1212 // Display openseach plugin (XML) 1221 // Display openseach plugin (XML)
1213 if ($targetPage == Router::$PAGE_OPENSEARCH) { 1222 if ($targetPage == Router::$PAGE_OPENSEARCH) {
1214 header('Content-Type: application/xml; charset=utf-8'); 1223 header('Content-Type: application/xml; charset=utf-8');
@@ -2456,7 +2465,6 @@ if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=g
2456if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=rss')) { showRSS(); exit; } 2465if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=rss')) { showRSS(); exit; }
2457if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=atom')) { showATOM(); exit; } 2466if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=atom')) { showATOM(); exit; }
2458if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=dailyrss')) { showDailyRSS(); exit; } 2467if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=dailyrss')) { showDailyRSS(); exit; }
2459if (isset($_SERVER["QUERY_STRING"]) && startswith($_SERVER["QUERY_STRING"],'do=daily')) { showDaily(); exit; }
2460if (!isset($_SESSION['LINKS_PER_PAGE'])) $_SESSION['LINKS_PER_PAGE']=$GLOBALS['config']['LINKS_PER_PAGE']; 2468if (!isset($_SESSION['LINKS_PER_PAGE'])) $_SESSION['LINKS_PER_PAGE']=$GLOBALS['config']['LINKS_PER_PAGE'];
2461renderPage(); 2469renderPage();
2462?> 2470?>
diff --git a/plugins/demo_plugin/demo_plugin.php b/plugins/demo_plugin/demo_plugin.php
index 84763c2b..9384c21f 100644
--- a/plugins/demo_plugin/demo_plugin.php
+++ b/plugins/demo_plugin/demo_plugin.php
@@ -40,6 +40,8 @@ function hook_demo_plugin_render_header($data)
40 // Fields in toolbar 40 // Fields in toolbar
41 $data['fields_toolbar'][] = 'DEMO_fields_toolbar'; 41 $data['fields_toolbar'][] = 'DEMO_fields_toolbar';
42 } 42 }
43 // Another button always displayed
44 $data['buttons_toolbar'][] = '<li><a href="#">DEMO</a></li>';
43 45
44 return $data; 46 return $data;
45} 47}