summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/index.php4
-rw-r--r--modules/mod_login_box.tpl104
-rw-r--r--modules/mod_online_users.php6
-rw-r--r--modules/mod_online_users.tpl16
-rw-r--r--modules/mod_since_last_visit.php4
-rw-r--r--modules/mod_since_last_visit.tpl12
-rw-r--r--modules/mod_user_bookmarks.php69
-rw-r--r--modules/mod_user_bookmarks.tpl24
-rw-r--r--modules/mod_user_image_galleries.php4
-rw-r--r--modules/mod_user_image_galleries.tpl19
-rw-r--r--modules/mod_user_pages.php4
-rw-r--r--modules/mod_user_pages.tpl19
-rw-r--r--modules/mod_user_profile.php13
-rw-r--r--modules/mod_user_profile.tpl19
-rw-r--r--modules/mod_user_tasks.php30
-rw-r--r--modules/mod_user_tasks.tpl23
-rw-r--r--modules/mod_who_is_there.php7
-rw-r--r--modules/mod_who_is_there.tpl22
-rw-r--r--modules/user_module.tpl4
19 files changed, 403 insertions, 0 deletions
diff --git a/modules/index.php b/modules/index.php
new file mode 100644
index 0000000..80f6d40
--- /dev/null
+++ b/modules/index.php
@@ -0,0 +1,4 @@
+<?php
+ // This is not a package.
+ header ("location: ../index.php");
+?> \ No newline at end of file
diff --git a/modules/mod_login_box.tpl b/modules/mod_login_box.tpl
new file mode 100644
index 0000000..d62a644
--- /dev/null
+++ b/modules/mod_login_box.tpl
@@ -0,0 +1,104 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/mod_login_box.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{bitmodule title="$moduleTitle" name="login_box"}
+ {if $gBitUser->IsRegistered()}
+ {tr}Logged in as{/tr}: {$gBitUser->getDisplayName()}<br />
+ <a href="{$gBitLoc.USERS_PKG_URL}logout.php">{tr}Logout{/tr}</a><br />
+ {if $gBitUser->isAdmin()}
+ {form action=$login_url}
+ <label for="login-switchuser">{tr}user{/tr}:</label>
+ <input type="text" name="username" id="login-switchuser" size="8" />
+ <input type="submit" name="su" value="{tr}set{/tr}" />
+ {/form}
+ {/if}
+ {else}
+ <form name="loginbox" action="{$login_url}" method="post" {if $gBitSystemPrefs.feature_challenge eq 'y'}onsubmit="doChallengeResponse()"{/if}>
+ {if $gBitSystemPrefs.feature_challenge eq 'y'}
+ <script language="javascript" type="text/javascript" src="lib/md5.js"></script>
+ {literal}
+ <script language="Javascript" type="text/javascript">
+ <!--
+ function doChallengeResponse() {
+ hashstr = document.loginbox.user.value +
+ document.loginbox.pass.value +
+ document.loginbox.email.value;
+ str = document.loginbox.user.value +
+ MD5(hashstr) +
+ document.loginbox.challenge.value;
+ document.loginbox.response.value = MD5(str);
+ document.loginbox.pass.value='';
+ /*
+ document.login.password.value = "";
+ document.logintrue.username.value = document.login.username.value;
+ document.logintrue.response.value = MD5(str);
+ document.logintrue.submit();
+ */
+ document.loginbox.submit();
+ return false;
+ }
+ // -->
+ </script>
+ {/literal}
+ <input type="hidden" name="challenge" value="{$challenge|escape}" />
+ <input type="hidden" name="response" value="" />
+ {/if}
+
+ <div class="row">
+ {forminput}
+ <input type="text" name="user" alt="username" size="20" value="username" onFocus="this.value=''" />
+ {/forminput}
+ </div>
+
+ {if $gBitSystemPrefs.feature_challenge eq 'y'}
+ <div class="row">
+ {forminput}
+ <input type="text" name="email" alt="email address" size="20" value="email" onFocus="this.value=''" />
+ {/forminput}
+ </div>
+ {/if}
+
+ <div class="row">
+ {forminput}
+ <input type="password" name="pass" alt="password" size="20" value="password" onFocus="this.value=''" />
+ {if $forgotPass eq 'y'}
+ <br /><a href="`$gBitLoc.USERS_PKG_URL`remind_password.php">I forgot my password</a>
+ {/if}
+ {/forminput}
+ </div>
+
+ {if $rememberme ne 'disabled'}
+ <div class="row">
+ {forminput}
+ <input type="checkbox" name="rme" value="on" checked=checked/>
+ {/forminput}
+ </div>
+ {/if}
+
+ {if $http_login_url ne '' or $https_login_url ne ''}
+ <div class="row">
+ {forminput}
+ <a href="{$http_login_url}" title="{tr}Click here to login using the default security protocol{/tr}">{tr}standard{/tr}</a> |
+ <a href="{$https_login_url}" title="{tr}Click here to login using a secure protocol{/tr}">{tr}secure{/tr}</a>
+ {/forminput}
+ </div>
+ {/if}
+
+ {if $show_stay_in_ssl_mode eq 'y'}
+ <div class="row">
+ {formlabel label="stay in ssl mode" for="stay_in_ssl_mode"}
+ {forminput}
+ <input type="checkbox" name="stay_in_ssl_mode" id="stay_in_ssl_mode" {if $stay_in_ssl_mode eq 'y'}checked="checked"{/if} />
+ {/forminput}
+ </div>
+ {else}
+ <input type="hidden" name="stay_in_ssl_mode" value="{$stay_in_ssl_mode|escape}" />
+ {/if}
+
+ <div class="row submit">
+ <input type="submit" name="login" value="{tr}login{/tr}" />
+ {if $allowRegister eq 'y'}
+ <a href="{$gBitLoc.USERS_PKG_URL}register.php">{tr}register{/tr}</a>
+ {/if}
+ </div>
+ </form>
+{/if}
+{/bitmodule}
diff --git a/modules/mod_online_users.php b/modules/mod_online_users.php
new file mode 100644
index 0000000..080aec0
--- /dev/null
+++ b/modules/mod_online_users.php
@@ -0,0 +1,6 @@
+<?php
+global $gBitUser;
+$online_users = $gBitUser->get_online_users();
+$smarty->assign('online_users', $online_users);
+$smarty->assign('logged_users', count( $online_users ) );
+?>
diff --git a/modules/mod_online_users.tpl b/modules/mod_online_users.tpl
new file mode 100644
index 0000000..7cf5651
--- /dev/null
+++ b/modules/mod_online_users.tpl
@@ -0,0 +1,16 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/mod_online_users.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{strip}
+{bitmodule title="$moduleTitle" name="online_users"}
+ {if $logged_users > 1}
+ {tr}We have {$logged_users} online users{/tr}
+ {elseif $logged_users == 1}
+ {tr}We have {$logged_users} online user{/tr}
+ {/if}
+ <ol>
+ {section name=ix loop=$online_users}
+ {if $online_users[ix].user_information ne 'public'}{assign var=nolink value=1}{else}{assign var=nolink value=0}{/if}
+ <li>{displayname hash=$online_users[ix] nolink=$nolink}</li>
+ {/section}
+ </ol>
+{/bitmodule}
+{/strip}
diff --git a/modules/mod_since_last_visit.php b/modules/mod_since_last_visit.php
new file mode 100644
index 0000000..7120987
--- /dev/null
+++ b/modules/mod_since_last_visit.php
@@ -0,0 +1,4 @@
+<?php
+$nvi_info = $gBitSystem->get_news_from_last_visit($user);
+$smarty->assign('nvi_info', $nvi_info);
+?> \ No newline at end of file
diff --git a/modules/mod_since_last_visit.tpl b/modules/mod_since_last_visit.tpl
new file mode 100644
index 0000000..c194af9
--- /dev/null
+++ b/modules/mod_since_last_visit.tpl
@@ -0,0 +1,12 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/mod_since_last_visit.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{if $user}
+ {bitmodule title="$moduleTitle" name="since_last_visit"}
+ {tr}Since your last visit on{/tr}<br />
+ <b>{$nvi_info.lastVisit|bit_short_datetime|replace:"[":""|replace:"]":""}</b><br />
+ {$nvi_info.images} {tr}new images{/tr}<br />
+ {$nvi_info.pages} {tr}wiki pages changed{/tr}<br />
+ {$nvi_info.files} {tr}new files{/tr}<br />
+ {$nvi_info.comments} {tr}new comments{/tr}<br />
+ {$nvi_info.users} {tr}new users{/tr}<br />
+ {/bitmodule}
+{/if} \ No newline at end of file
diff --git a/modules/mod_user_bookmarks.php b/modules/mod_user_bookmarks.php
new file mode 100644
index 0000000..4d22aed
--- /dev/null
+++ b/modules/mod_user_bookmarks.php
@@ -0,0 +1,69 @@
+<?php
+if( $gBitSystem->isFeatureActive( 'feature_user_bookmarks' ) && $gBitUser->isRegistered() && $gBitUser->hasPermission( 'bit_p_create_bookmarks' ) ) {
+
+ include_once( USERS_PKG_PATH.'bookmark_lib.php' );
+
+ $setup_parsed_uri = parse_url($_SERVER["REQUEST_URI"]);
+ if (isset($setup_parsed_uri["query"])) {
+ parse_str($setup_parsed_uri["query"], $setup_query_data);
+ } else {
+ $setup_query_data = array();
+ }
+
+ // check the session to get the parent or create parent =0
+ $smarty->assign('ownurl', httpPrefix(). $_SERVER["REQUEST_URI"]);
+ if (!isset($_SESSION["bookmarks_parent"])) {
+ $_SESSION["bookmarks_parent"] = 0;
+ }
+ if (isset($_REQUEST["bookmarks_parent"])) {
+ $_SESSION["bookmarks_parent"] = $_REQUEST["bookmarks_parent"];
+ }
+ $ownurl = httpPrefix(). $_SERVER["REQUEST_URI"];
+ // Now build urls
+ if (strstr($ownurl, '?')) {
+ $modb_sep = '&amp;';
+ } else {
+ $modb_sep = '?';
+ }
+ $smarty->assign('modb_sep', $modb_sep);
+ if (isset($_REQUEST["bookmark_removeurl"])) {
+ $bookmarklib->remove_url($_REQUEST["bookmark_removeurl"], $gBitUser->mUserId );
+ header( 'Location: '.$_SERVER['HTTP_REFERER'] );
+ die;
+ } elseif (isset($_REQUEST["bookmark_create_folder"])) {
+ $bookmarklib->add_folder($_SESSION["bookmarks_parent"], $_REQUEST['bookmark_urlname'], $gBitUser->mUserId );
+ } elseif (isset($_REQUEST["bookmark_mark"])) {
+ if (empty($_REQUEST["bookmark_urlname"])) {
+ global $gContent, $gBitSystem;
+ if( $gContent && $gContent->getTitle() ) {
+ $_REQUEST["bookmark_urlname"] = $gContent->getTitle();
+ } elseif( $gBitSystem->getBrowserTitle() ) {
+ $_REQUEST["bookmark_urlname"] = $gBitSystem->getBrowserTitle();
+ } else {
+ $_REQUEST["bookmark_urlname"] = basename( $_SERVER['REQUEST_URI'] );
+ }
+ }
+ if (!empty($_REQUEST["bookmark_urlname"])) {
+ $bookmarklib->replace_url(0, $_SESSION["bookmarks_parent"], $_REQUEST["bookmark_urlname"], $ownurl, $gBitUser->mUserId );
+ }
+ }
+ $modb_p_info = $bookmarklib->get_folder($_SESSION["bookmarks_parent"], $gBitUser->mUserId );
+ $modb_father = $modb_p_info["parent_id"];
+ // get folders for the parent
+ $modb_urls = $bookmarklib->list_folder($_SESSION["bookmarks_parent"], 0, -1, 'name_asc', '', $gBitUser->mUserId );
+ $smarty->assign('modb_urls', $modb_urls["data"]);
+ $modb_folders = $bookmarklib->get_child_folders($_SESSION["bookmarks_parent"], $gBitUser->mUserId );
+ $modb_pf = array(
+ "name" => "..",
+ "folder_id" => $modb_father,
+ "parent_id" => 0,
+ "user_id" => $gBitUser->mUserId
+ );
+ $modb_pfs = array($modb_pf);
+ if ($_SESSION["bookmarks_parent"]) {
+ $modb_folders = array_merge($modb_pfs, $modb_folders);
+ }
+ $smarty->assign('modb_folders', $modb_folders);
+// get urls for the parent
+}
+?>
diff --git a/modules/mod_user_bookmarks.tpl b/modules/mod_user_bookmarks.tpl
new file mode 100644
index 0000000..7704495
--- /dev/null
+++ b/modules/mod_user_bookmarks.tpl
@@ -0,0 +1,24 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/Attic/mod_user_bookmarks.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{if $gBitSystem->isFeatureActive( 'feature_user_bookmarks' ) and $gBitUser->isRegistered() and $gBitUser->hasPermission( 'bit_p_create_bookmarks' )}
+ {bitmodule title="$moduleTitle" name="user_bookmarks"}
+ <table class="module box">
+ {section name=ix loop=$modb_folders}
+ <tr><td valign="bottom">
+ <a href="{$ownurl}{$modb_sep}bookmarks_parent={$modb_folders[ix].folder_id}">{biticon ipackage=liberty iname="folder" iexplain="folder"}</a>{$modb_folders[ix].name}
+ </td></tr>
+ {/section}
+ {section name=ix loop=$modb_urls}
+ <tr><td>
+ <a href="{$modb_urls[ix].url}">{$modb_urls[ix].name}</a>
+ {if $gBitUser->hasPermission( 'bit_p_cache_bookmarks' ) and $urls[ix].datalen > 0}
+ (<a href="{$gBitLoc.USERS_PKG_URL}cached_bookmark.php?urlid={$modb_urls[ix].url_id}">{tr}cache{/tr}</a>)
+ {/if}
+ <a href="{$ownurl}{$modb_sep}bookmark_removeurl={$modb_urls[ix].url_id}">{biticon ipackage=liberty iname="delete_small" iexplain="remove"}</a>
+ </td></tr>
+ {/section}
+ </table><br />
+ {form action=$ownurl}
+ <input type="submit" name="bookmark_mark" value="{tr}mark{/tr}" />
+ {/form}
+ {/bitmodule}
+{/if}
diff --git a/modules/mod_user_image_galleries.php b/modules/mod_user_image_galleries.php
new file mode 100644
index 0000000..3395b87
--- /dev/null
+++ b/modules/mod_user_image_galleries.php
@@ -0,0 +1,4 @@
+<?php
+$ranking = $gBitSystem->get_user_galleries($user, $module_rows);
+$smarty->assign('modUserG', $ranking);
+?>
diff --git a/modules/mod_user_image_galleries.tpl b/modules/mod_user_image_galleries.tpl
new file mode 100644
index 0000000..0be7500
--- /dev/null
+++ b/modules/mod_user_image_galleries.tpl
@@ -0,0 +1,19 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/Attic/mod_user_image_galleries.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{if $user}
+ {if $gBitSystemPrefs.feature_galleries eq 'y'}
+ {bitmodule title="$moduleTitle" name="user_image_galleries"}
+ <table class="module box">
+ {section name=ix loop=$modUserG}
+ <tr>
+ {if $nonums != 'y'}
+ <td valign="top">{$smarty.section.ix.index_next})</td>
+ {/if}
+ <td>
+ <a href="{$gBitLoc.IMAGEGALS_PKG_URL}browse_gallery.php?gallery_id={$modUserG[ix].gallery_id}">{$modUserG[ix].name}</a>
+ </td>
+ </tr>
+ {/section}
+ </table>
+ {/bitmodule}
+ {/if}
+{/if}
diff --git a/modules/mod_user_pages.php b/modules/mod_user_pages.php
new file mode 100644
index 0000000..d60ae01
--- /dev/null
+++ b/modules/mod_user_pages.php
@@ -0,0 +1,4 @@
+<?php
+$ranking = $gBitSystem->get_user_pages($user, $module_rows);
+$smarty->assign('modUserPages', $ranking);
+?>
diff --git a/modules/mod_user_pages.tpl b/modules/mod_user_pages.tpl
new file mode 100644
index 0000000..765f124
--- /dev/null
+++ b/modules/mod_user_pages.tpl
@@ -0,0 +1,19 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/mod_user_pages.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{if $user}
+ {if $gBitSystemPrefs.feature_wiki eq 'y'}
+ {bitmodule title="$moduleTitle" name="user_pages"}
+ <table class="module box">
+ {section name=ix loop=$modUserPages}
+ <tr>
+ {if $nonums != 'y'}
+ <td valign="top">{$smarty.section.ix.index_next})</td>
+ {/if}
+ <td>
+ <a href="{$gBitLoc.WIKI_PKG_URL}index.php?page={$modUserPages[ix].page_name|escape:"url"}">{$modUserPages[ix].page_name}</a>
+ </td>
+ </tr>
+ {/section}
+ </table>
+ {/bitmodule}
+ {/if} {* $gBitSystemPrefs.feature_wiki eq 'y' *}
+{/if} {* $user *} \ No newline at end of file
diff --git a/modules/mod_user_profile.php b/modules/mod_user_profile.php
new file mode 100644
index 0000000..405be7b
--- /dev/null
+++ b/modules/mod_user_profile.php
@@ -0,0 +1,13 @@
+<?php
+// +----------------------------------------------------------------------
+// | PHP Source
+// +----------------------------------------------------------------------
+// | Copyright (C) 2004 by Tikipro - cfowler, btodoroff, et al
+// +----------------------------------------------------------------------
+global $gQueryUser, $gBitUser, $smarty;
+if( !empty( $gQueryUser->mInfo ) ) {
+ $smarty->assign_by_ref('userInfo', $gQueryUser->mInfo );
+} elseif( !empty( $gBitUser->mInfo ) ) {
+ $smarty->assign_by_ref('userInfo', $gBitUser->mInfo );
+}
+?>
diff --git a/modules/mod_user_profile.tpl b/modules/mod_user_profile.tpl
new file mode 100644
index 0000000..7342979
--- /dev/null
+++ b/modules/mod_user_profile.tpl
@@ -0,0 +1,19 @@
+{strip}
+ {bitmodule title="$moduleTitle"}
+ <h2 style="text-align:center;">
+ {displayname hash=$userInfo}
+ {if $gQueryUserId and $gBitSystem->isPackageActive( 'messu' ) and $gBitUser->hasPermission( 'bit_p_messages' ) and $userPrefs.allowMsgs eq 'y'}
+ &nbsp;<a href="{$gBitLoc.MESSU_PKG_URL}compose.php?to={$userInfo.login}">{biticon ipackage="messu" iname="send_mail" iexplain="Send user a personal message"}</a>
+ {/if}
+ </h2>
+ <p style="text-align:center;">
+ {if $userInfo.avatar_url}
+ <img src="{$userInfo.avatar_url}" class="thumb" title="{tr}Avatar{/tr}" alt="{tr}Avatar{/tr}"/>
+ {else}
+ {biticon ipackage=users iname='unknown_user' class='thumb' iexplain='no user avatar uploaded'}
+ {/if}
+ <br />
+ {tr}Last login{/tr}: {$userInfo.last_login|bit_short_date}
+ </p>
+ {/bitmodule}
+{/strip}
diff --git a/modules/mod_user_tasks.php b/modules/mod_user_tasks.php
new file mode 100644
index 0000000..1a600ba
--- /dev/null
+++ b/modules/mod_user_tasks.php
@@ -0,0 +1,30 @@
+<?php
+require_once(USERS_PKG_PATH."task_lib.php");
+global $user, $feature_tasks, $bit_p_tasks, $tasklib;
+
+if ($user && isset($feature_tasks) && $feature_tasks == 'y' && isset($bit_p_tasks) && $gBitUser->hasPermission( 'bit_p_tasks' )) {
+ if (isset($_SESSION['thedate'])) {
+ $pdate = $_SESSION['thedate'];
+ } else {
+ $pdate = date("U");
+ }
+ if (isset($_REQUEST["modTasksDel"])) {
+ foreach (array_keys($_REQUEST["modTasks"])as $task) {
+ $tasklib->remove_task($user, $task);
+ }
+ }
+ if (isset($_REQUEST["modTasksCom"])) {
+ foreach (array_keys($_REQUEST["modTasks"])as $task) {
+ $tasklib->complete_task($user, $task);
+ }
+ }
+ if (isset($_REQUEST["modTasksSave"])) {
+ $tasklib->replace_task($user, 0, $_REQUEST['modTasksTitle'], $_REQUEST['modTasksTitle'], date("U"), 'o', 3, 0, 0);
+ }
+ $ownurl =/*httpPrefix().*/ $_SERVER["REQUEST_URI"];
+ $smarty->assign('ownurl', $ownurl);
+ $tasks_use_dates = $gBitSystem->get_user_preference($user, 'tasks_use_dates');
+ $modTasks = $gBitSystem->list_tasks($user, 0, -1, 'priority_desc', '', $tasks_use_dates, $pdate);
+ $smarty->assign('modTasks', $modTasks['data']);
+}
+?>
diff --git a/modules/mod_user_tasks.tpl b/modules/mod_user_tasks.tpl
new file mode 100644
index 0000000..9ad5d96
--- /dev/null
+++ b/modules/mod_user_tasks.tpl
@@ -0,0 +1,23 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/Attic/mod_user_tasks.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{if $gBitSystemPrefs.feature_tasks eq 'y' and $user}
+ {bitmodule title="$moduleTitle" name="user_tasks"}
+ {form action=$ownurl}
+ <input type="text" name="modTasksTitle" />
+ <input type="submit" name="modTasksSave" value="{tr}add{/tr}" />
+ {/form}
+ {form action=$ownurl}
+ <table class="module box">
+ {section name=ix loop=$modTasks}
+ <tr><td>
+ <input type="checkbox" name="modTasks[{$modTasks[ix].task_id}]" />
+ <a {if $modTasks[ix].status eq 'c'}style="text-decoration:line-through;"{/if} href="{$gBitLoc.USERS_PKG_URL}tasks.php?task_id={$modTasks[ix].task_id}">{$modTasks[ix].title}</a> ({$modTasks[ix].percentage}%)
+ </td></tr>
+ {sectionelse}
+ <tr><td>&nbsp;</td></tr>
+ {/section}
+ </table>
+ <input type="submit" name="modTasksCom" value="{tr}Done{/tr}" />
+ <input type="submit" name="modTasksDel" value="{tr}Delete{/tr}" />
+ {/form}
+ {/bitmodule}
+{/if}
diff --git a/modules/mod_who_is_there.php b/modules/mod_who_is_there.php
new file mode 100644
index 0000000..f96ea56
--- /dev/null
+++ b/modules/mod_who_is_there.php
@@ -0,0 +1,7 @@
+<?php
+global $userlib;
+$logged_users = $gBitUser->count_sessions();
+$online_users = $gBitUser->get_online_users();
+$smarty->assign('online_users', $online_users);
+$smarty->assign('logged_users', $logged_users);
+?>
diff --git a/modules/mod_who_is_there.tpl b/modules/mod_who_is_there.tpl
new file mode 100644
index 0000000..586737e
--- /dev/null
+++ b/modules/mod_who_is_there.tpl
@@ -0,0 +1,22 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/mod_who_is_there.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{bitmodule title="$moduleTitle" name="who_is_there"}
+ <div>
+ {$logged_users}
+ {if $logged_users>1}
+ {tr}online users{/tr}
+ {elseif $logged_users>0}
+ {tr}online user{/tr}
+ {/if}
+ </div>
+ {section name=ix loop=$online_users}
+ {if $user and $gBitSystemPrefs.feature_messages eq 'y' and $gBitUser->hasPermission( 'bit_p_messages' )}
+ <a href="{$gBitLoc.MESSU_PKG_URL}compose.php?to={$online_users[ix].user}" title="{tr}Send a message to{/tr} {$online_users[ix].user}">{biticon ipackage="users" iname="send_msg_small" iexplain="send message"}</a>
+ {/if}
+ {if $online_users[ix].user_information eq 'public'}
+ {math equation="x - y" x=$smarty.now y=$online_users[ix].timestamp assign=idle}
+ <a href="{$gBitLoc.USERS_PKG_URL}index.php?home={$online_users[ix].user}" title="{tr}More info about{/tr} {$online_users[ix].user} ({tr}idle{/tr} {$idle} {tr}seconds{/tr})">{$online_users[ix].user}</a><br />
+ {else}
+ {$online_users[ix].user}<br />
+ {/if}
+ {/section}
+{/bitmodule}
diff --git a/modules/user_module.tpl b/modules/user_module.tpl
new file mode 100644
index 0000000..2d82533
--- /dev/null
+++ b/modules/user_module.tpl
@@ -0,0 +1,4 @@
+{* $Header: /cvsroot/bitweaver/_bit_users/modules/user_module.tpl,v 1.1 2005/06/19 05:12:23 bitweaver Exp $ *}
+{bitmodule title=$user_title name=$user_module_name}
+ {eval var=$user_data}
+{/bitmodule} \ No newline at end of file