From 0b17969bf1eecf5698a6cd5a4e17b763d198771d Mon Sep 17 00:00:00 2001 From: cash Date: Sun, 13 Feb 2011 01:30:12 +0000 Subject: updated custom index for 1.8 git-svn-id: http://code.elgg.org/elgg/trunk@8193 36083f99-b078-4883-b0ff-0f9b5a30f544 --- mod/custom_index/index.php | 91 ++++++++------ mod/custom_index/languages/en.php | 25 ++-- mod/custom_index/manifest.xml | 22 ++-- mod/custom_index/start.php | 49 +++----- .../views/default/canvas/layouts/new_index.php | 131 --------------------- .../views/default/custom_index/css.php | 100 +++------------- .../views/default/layout/shells/custom_index.php | 65 ++++++++++ 7 files changed, 182 insertions(+), 301 deletions(-) delete mode 100644 mod/custom_index/views/default/canvas/layouts/new_index.php create mode 100644 mod/custom_index/views/default/layout/shells/custom_index.php diff --git a/mod/custom_index/index.php b/mod/custom_index/index.php index 953e2a85b..34a24ba38 100644 --- a/mod/custom_index/index.php +++ b/mod/custom_index/index.php @@ -1,36 +1,59 @@ - * @copyright Curverider Ltd 2008 - * @link http://elgg.com/ - */ - - // Get the Elgg engine - require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); - - //get required data - set_context('search');//display results in search mode, which is list view - //grab the latest 4 blog posts. to display more, change 4 to something else - $blogs = elgg_list_entities(array('type' => 'object', 'subtype' => 'blog', 'limit' => 4, 'full_view' => FALSE, 'view_type_toggle' => FALSE, 'pagination' => FALSE)); - //grab the latest bookmarks - $bookmarks = elgg_list_entities(array('type' => 'object', 'subtype' => 'bookmarks', 'limit' => 4, 'full_view' => FALSE, 'view_type_toggle' => FALSE, 'pagination' => FALSE)); - //grab the latest files - $files = elgg_list_entities(array('type' => 'object', 'subtype' => 'file', 'limit' => 4, 'full_view' => FALSE, 'view_type_toggle' => FALSE, 'pagination' => FALSE)); - //get the newest members who have an avatar - $newest_members = elgg_get_entities_from_metadata(array('metadata_names' => 'icontime', 'types' => 'user', 'limit' => 10)); - //newest groups - $groups = elgg_list_entities(array(type => 'group', 'limit' => 4, 'full_view' => FALSE, 'view_type_toggle' => FALSE, 'pagination' => FALSE)); - //grab the login form - $login = elgg_view("account/forms/login"); - - //display the contents in our new canvas layout - $body = elgg_view_layout('new_index',$login, $files, $newest_members, $blogs, $groups, $bookmarks); - - page_draw($title, $body); - -?> \ No newline at end of file +elgg_push_context('front'); + +elgg_push_context('widgets'); + +$list_params = array( + 'type' => 'object', + 'limit' => 4, + 'full_view' => false, + 'view_type_toggle' => false, + 'pagination' => false, +); + +//grab the latest 4 blog posts +$list_params['subtype'] = 'blog'; +$blogs = elgg_list_entities($list_params); + +//grab the latest bookmarks +$list_params['subtype'] = 'bookmarks'; +$bookmarks = elgg_list_entities($list_params); + +//grab the latest files +$list_params['subtype'] = 'file'; +$files = elgg_list_entities($list_params); + +//get the newest members who have an avatar +$newest_members = elgg_list_entities_from_metadata(array( + 'metadata_names' => 'icontime', + 'types' => 'user', + 'limit' => 10, +)); + +//newest groups +$list_params['type'] = 'group'; +unset($list_params['subtype']); +$groups = elgg_list_entities($list_params); + +//grab the login form +$login = elgg_view("core/account/login_box"); + +elgg_pop_context(); + +// lay out the content +$params = array( + 'blogs' => $blogs, + 'bookmarks' => $bookmarks, + 'files' => $files, + 'groups' => $groups, + 'login' => $login, + 'members' => $newest_members, +); +$body = elgg_view_layout('custom_index', $params); + +echo elgg_view_page('', $body); diff --git a/mod/custom_index/languages/en.php b/mod/custom_index/languages/en.php index 091297297..071ff81e5 100644 --- a/mod/custom_index/languages/en.php +++ b/mod/custom_index/languages/en.php @@ -1,17 +1,14 @@ "Latest bookmarks", - 'custom:groups' => "Latest groups", - 'custom:files' => "Latest files", - 'custom:blogs' => "Latest blog posts", - 'custom:members' => "Newest members", - 'custom:nofiles' => "There are no files yet", - 'custom:nogroups' => "There are no groups yet", - - ); +$english = array( + 'custom:bookmarks' => "Latest bookmarks", + 'custom:groups' => "Latest groups", + 'custom:files' => "Latest files", + 'custom:blogs' => "Latest blog posts", + 'custom:members' => "Newest members", +); - add_translation("en",$english); - -?> \ No newline at end of file +add_translation("en", $english); diff --git a/mod/custom_index/manifest.xml b/mod/custom_index/manifest.xml index 16e648f54..fe4dcacf0 100644 --- a/mod/custom_index/manifest.xml +++ b/mod/custom_index/manifest.xml @@ -1,11 +1,15 @@ - - - - - - - - - + + Custom Index + Curverider + 1.8 + A demonstration of how to create a front page plugin. + http://www.elgg.org/ + (C) Curverider 2008-2010 + GNU Public License version 2 + + elgg_version + 2009030702 + + advanced diff --git a/mod/custom_index/start.php b/mod/custom_index/start.php index 16d277a10..3c395e87b 100644 --- a/mod/custom_index/start.php +++ b/mod/custom_index/start.php @@ -1,36 +1,25 @@ - * @copyright Curverider Ltd 2008 - * @link http://elgg.com/ - */ +register_elgg_event_handler('init', 'system', 'custom_index_init'); - - function indexCustom_init() { - - // Extend system CSS with our own styles - elgg_extend_view('css','custom_index/css'); - - // Replace the default index page - register_plugin_hook('index','system','custom_index'); - - - } - - function custom_index() { - - if (!include_once(dirname(__FILE__) . "/index.php")) return false; - return true; - - } +function custom_index_init() { + // Extend system CSS with our own styles + elgg_extend_view('css/screen', 'custom_index/css'); - // Make sure the - register_elgg_event_handler('init','system','indexCustom_init'); + // Replace the default index page + register_plugin_hook('index', 'system', 'custom_index'); +} -?> \ No newline at end of file +function custom_index() { + if (!include_once(dirname(__FILE__) . "/index.php")) { + return false; + } + + // return true to signify that we have handled the front page + return true; +} diff --git a/mod/custom_index/views/default/canvas/layouts/new_index.php b/mod/custom_index/views/default/canvas/layouts/new_index.php deleted file mode 100644 index e1b48ec0c..000000000 --- a/mod/custom_index/views/default/canvas/layouts/new_index.php +++ /dev/null @@ -1,131 +0,0 @@ - - -
- - -
- -
- " . elgg_echo("welcome") . " "; - echo $vars['user']->name; - echo ""; - } - ?> - -
"; - } - ?> -
- - -
-

-

"; - } - ?> -
- - -
-

- .

"; - } - ?> -
- -
- - -
- - - -
-

-
- "; - echo elgg_view("profile/icon",array('entity' => $members, 'size' => 'small')); - echo "
"; - } - } - ?> -
-
-
- - -
-

- -
- - -
-

- -
- - -
- \ No newline at end of file diff --git a/mod/custom_index/views/default/custom_index/css.php b/mod/custom_index/views/default/custom_index/css.php index 9c35aaa27..f21ea72b2 100644 --- a/mod/custom_index/views/default/custom_index/css.php +++ b/mod/custom_index/views/default/custom_index/css.php @@ -1,86 +1,20 @@ - * @copyright Curverider Ltd 2008-2010 - * @link http://elgg.org/ - */ +/** + * Custom Index CSS + * + */ ?> -#custom_index { - margin:10px; -} -#index_left { - width:442px; - float:left; - margin:0 0 30px 0; - padding:0 0 20px 0px; -} -#index_right { - width:442px; - float:right; - margin:0 0 30px 0; - padding:0 0px 20px 0; -} -#index_welcome { - padding:5px 10px 5px 10px; - margin:0 0 20px 0; - border:1px solid silver; - background: white; - -moz-border-radius: 8px; - -webkit-border-radius: 8px; -} -#index_welcome #login-box { - margin:5px 0 10px 0; - padding:0 0 10px 0; - background: #dedede; - -webkit-border-radius: 8px; - -moz-border-radius: 8px; - width:240px; -} -#index_welcome #login-box form { - margin:0 10px 0 10px; - padding:0 10px 4px 10px; - background: white; - -webkit-border-radius: 8px; - -moz-border-radius: 8px; - width:200px; -} -#index_welcome #login-box h2, -.index_box h2 { - color:#0054A7; - font-size:1.35em; - line-height:1.2em; - margin:0 0 0 8px; - padding:5px; -} -#index_welcome #login-box h2 { - padding-bottom:5px; -} - -.index_box { - margin:0 0 20px 0; - background: #dedede; - padding:0 0 5px 0; - -webkit-border-radius: 8px; - -moz-border-radius: 8px; -} - -.index_box .search_listing { - -} -.index_box .index_members { - float:left; - margin:2pt 5px 3px 0pt; -} -#persistent_login { - float:right; - display:block; - margin-top:-34px; -} - - - +/******************************* + Custom Index +********************************/ +.custom-index .elgg-module-featured { + box-shadow: 1px 1px 5px #CCC; + -moz-box-shadow: 1px 1px 5px #CCC; + -webkit-box-shadow: 1px 1px 5px #CCC; +} +.custom-index .elgg-module-featured:hover { + box-shadow: 1px 1px 6px #AAA; + -moz-box-shadow: 1px 1px 6px #AAA; + -webkit-box-shadow: 1px 1px 6px #AAA; +} \ No newline at end of file diff --git a/mod/custom_index/views/default/layout/shells/custom_index.php b/mod/custom_index/views/default/layout/shells/custom_index.php new file mode 100644 index 000000000..48039dbd9 --- /dev/null +++ b/mod/custom_index/views/default/layout/shells/custom_index.php @@ -0,0 +1,65 @@ + + +
+
+
+" . elgg_echo("welcome") . " "; + $top_box .= get_loggedin_user()->name; + $top_box .= ""; +} else { + $top_box = $vars['login']; +} +echo elgg_view_module('featured', '', $top_box, array('header' => false)); + +// a view for plugins to extend +echo elgg_view("index/lefthandside"); + +// files +if (elgg_is_active_plugin('file')) { + echo elgg_view_module('featured', elgg_echo("custom:files"), $vars['files']); +} + +// groups +if (elgg_is_active_plugin('groups')) { + echo elgg_view_module('featured', elgg_echo("custom:groups"), $vars['groups']); +} +?> +
+
+
+
+ +
+
+
-- cgit v1.2.3