summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Kremmel <xing@synapse.plus.com>2006-01-19 16:15:24 +0000
committerMax Kremmel <xing@synapse.plus.com>2006-01-19 16:15:24 +0000
commit1f834b648706e1830d9132d91942b6a76d49bbe0 (patch)
tree30a92aa67979c75780d9486147e9c829cabb1d92
parentf2eb16606c3c8ba8fcafd415cbeffd9ec77b8b46 (diff)
downloadusers-1f834b648706e1830d9132d91942b6a76d49bbe0.tar.gz
users-1f834b648706e1830d9132d91942b6a76d49bbe0.tar.bz2
users-1f834b648706e1830d9132d91942b6a76d49bbe0.zip
add option to define what users can enter on registration - added some help notes
-rw-r--r--BitUser.php20
-rw-r--r--admin/admin_login_inc.php41
-rw-r--r--register.php22
-rw-r--r--templates/admin_login.tpl26
-rw-r--r--templates/my_images.tpl2
-rw-r--r--templates/register.tpl77
-rw-r--r--templates/user_preferences.tpl4
7 files changed, 174 insertions, 18 deletions
diff --git a/BitUser.php b/BitUser.php
index cc26145..6395100 100644
--- a/BitUser.php
+++ b/BitUser.php
@@ -1,6 +1,6 @@
<?php
/**
- * $Header: /cvsroot/bitweaver/_bit_users/BitUser.php,v 1.2.2.62 2006/01/13 04:50:29 spiderr Exp $
+ * $Header: /cvsroot/bitweaver/_bit_users/BitUser.php,v 1.2.2.63 2006/01/19 16:15:23 squareing Exp $
*
* Lib for user administration, groups and permissions
* This lib uses pear so the constructor requieres
@@ -12,7 +12,7 @@
* All Rights Reserved. See copyright.txt for details and a complete list of authors.
* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details
*
- * $Id: BitUser.php,v 1.2.2.62 2006/01/13 04:50:29 spiderr Exp $
+ * $Id: BitUser.php,v 1.2.2.63 2006/01/19 16:15:23 squareing Exp $
* @package users
*/
@@ -41,7 +41,7 @@ define("ACCOUNT_DISABLED", -6);
* Class that holds all information for a given user
*
* @author spider <spider@steelsun.com>
- * @version $Revision: 1.2.2.62 $
+ * @version $Revision: 1.2.2.63 $
* @package users
* @subpackage BitUser
*/
@@ -525,6 +525,20 @@ if ($gDebug) echo "Run : QUIT<br>";
// set local time zone as default when registering
$this->storePreference( 'display_timezone', 'Local' );
+ $regPrefs = array(
+ 'reg_real_name' => 'real_name',
+ 'reg_homepage' => 'homePage',
+ 'reg_country' => 'country',
+ 'reg_language' => 'bitlanguage'
+ );
+ foreach( $regPrefs as $feature => $pref ) {
+ if( $gBitSystem->isFeatureActive( $feature ) ) {
+ if( !empty( $pParamHash[$pref] ) ) {
+ $this->storePreference( $pref, $pParamHash[$pref] );
+ }
+ }
+ }
+
if( !empty( $_REQUEST['CUSTOM'] ) ) {
foreach( $_REQUEST['CUSTOM'] as $field=>$value ) {
$this->storePreference( $field, $value );
diff --git a/admin/admin_login_inc.php b/admin/admin_login_inc.php
index c5084b4..83f8387 100644
--- a/admin/admin_login_inc.php
+++ b/admin/admin_login_inc.php
@@ -1,5 +1,5 @@
<?php
-// $Header: /cvsroot/bitweaver/_bit_users/admin/admin_login_inc.php,v 1.1.1.1.2.6 2006/01/13 14:35:46 squareing Exp $
+// $Header: /cvsroot/bitweaver/_bit_users/admin/admin_login_inc.php,v 1.1.1.1.2.7 2006/01/19 16:15:24 squareing Exp $
// Copyright (c) 2002-2003, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
// All Rights Reserved. See copyright.txt for details and a complete list of authors.
// Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details.
@@ -111,6 +111,45 @@ if( !empty( $_REQUEST["loginprefs"] ) ) {
}
}
+$registerSettings = array(
+ 'reg_real_name' => array(
+ 'label' => "Real Name",
+ 'type' => "checkbox",
+ 'note' => "Allow users to supply their real name.",
+ ),
+ 'reg_country' => array(
+ 'label' => "Country",
+ 'type' => "checkbox",
+ 'note' => "Allow users to pick country of residency.",
+ ),
+ 'reg_language' => array(
+ 'label' => "Language",
+ 'type' => "checkbox",
+ 'note' => "Allow users to select their preferred language.",
+ ),
+ 'reg_homepage' => array(
+ 'label' => "Homepage URL",
+ 'type' => "checkbox",
+ 'note' => "Allow users to enter the url to their own homepage.",
+ ),
+ 'reg_portrait' => array(
+ 'label' => "Self Portrait",
+ 'type' => "checkbox",
+ 'note' => "Allow users to upload a self portrait.",
+ ),
+);
+$gBitSmarty->assign( 'registerSettings', $registerSettings );
+
+if( !empty( $_REQUEST["registerprefs"] ) ) {
+ foreach( array_keys( $registerSettings ) as $feature ) {
+ if( $registerSettings[$feature]['type'] == 'text' ) {
+ simple_set_value( $feature, USERS_PKG_NAME );
+ } else {
+ simple_set_toggle( $feature, USERS_PKG_NAME );
+ }
+ }
+}
+
$httpSettings = array(
'https_login' => array(
'label' => "Allow secure (https) login",
diff --git a/register.php b/register.php
index 8fcf7bd..3c93fc6 100644
--- a/register.php
+++ b/register.php
@@ -1,6 +1,6 @@
<?php
/**
- * $Header: /cvsroot/bitweaver/_bit_users/register.php,v 1.1.1.1.2.4 2005/07/26 15:50:30 drewslater Exp $
+ * $Header: /cvsroot/bitweaver/_bit_users/register.php,v 1.1.1.1.2.5 2006/01/19 16:15:24 squareing Exp $
*
* Copyright (c) 2004 bitweaver.org
* Copyright (c) 2003 tikwiki.org
@@ -8,7 +8,7 @@
* All Rights Reserved. See copyright.txt for details and a complete list of authors.
* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See license.txt for details
*
- * $Id: register.php,v 1.1.1.1.2.4 2005/07/26 15:50:30 drewslater Exp $
+ * $Id: register.php,v 1.1.1.1.2.5 2006/01/19 16:15:24 squareing Exp $
* @package users
* @subpackage functions
*/
@@ -67,6 +67,24 @@ if( isset( $_REQUEST["register"] ) ) {
}
}
+$languages = array();
+$languages = $gBitLanguage->listLanguages();
+$gBitSmarty->assign_by_ref('languages', $languages);
+$gBitSmarty->assign_by_ref('gBitLanguage', $gBitLanguage);
+
+// Get flags here
+$flags = array();
+$h = opendir( USERS_PKG_PATH.'icons/flags/' );
+while ($file = readdir($h)) {
+ if (strstr($file, ".gif")) {
+ $parts = explode('.', $file);
+ $flags[] = $parts[0];
+ }
+}
+closedir ($h);
+sort ($flags);
+$gBitSmarty->assign('flags', $flags);
+
$gBitSystem->display('bitpackage:users/register.tpl', 'Register' );
?>
diff --git a/templates/admin_login.tpl b/templates/admin_login.tpl
index b011209..e6901b7 100644
--- a/templates/admin_login.tpl
+++ b/templates/admin_login.tpl
@@ -59,6 +59,32 @@
{/form}
{/jstab}
+ {jstab title="Registration Form"}
+ {form legend="Registration Form"}
+ <input type="hidden" name="page" value="{$page}" />
+
+ <p class="formhelp">{tr}Here you can specify what the registration page should look like. All these settings will still be available from the users preferences page.{/tr}</p>
+
+ {foreach from=$registerSettings key=feature item=output}
+ <div class="row">
+ {formlabel label=`$output.label` for=$feature}
+ {forminput}
+ {if $output.type == 'text'}
+ <input type="text" size="50" name="{$feature}" id="{$feature}" value="{$gBitSystemPrefs.$feature|escape}" />
+ {else}
+ {html_checkboxes name="$feature" values="y" checked=`$gBitSystemPrefs.$feature` labels=false id=$feature}
+ {/if}
+ {formhelp note=`$output.note` page=`$output.page` link=`$output.link`}
+ {/forminput}
+ </div>
+ {/foreach}
+
+ <div class="row submit">
+ <input type="submit" name="registerprefs" value="{tr}Change preferences{/tr}" />
+ </div>
+ {/form}
+ {/jstab}
+
{jstab title="HTTP Settings"}
{form legend="HTTP Settings"}
<input type="hidden" name="page" value="{$page}" />
diff --git a/templates/my_images.tpl b/templates/my_images.tpl
index 68846ba..dc61cf1 100644
--- a/templates/my_images.tpl
+++ b/templates/my_images.tpl
@@ -22,7 +22,7 @@
{/if}
{forminput}
<input name="fPortraitFile" id="fPortraitFile" type="file" />
- {formhelp note="Upload a personal photo to be displayed on your `$siteTitle` homepage."}
+ {formhelp note="Upload a personal photo to be displayed on your personal page."}
{/forminput}
</div>
diff --git a/templates/register.tpl b/templates/register.tpl
index b72345b..fdd6712 100644
--- a/templates/register.tpl
+++ b/templates/register.tpl
@@ -8,7 +8,7 @@
<div class="body">
<p>{tr}If you are already registered, please{/tr} <a href="{$smarty.const.USERS_PKG_URL}login.php">{tr}login{/tr}</a></p>
- {form legend="Please fill in the following details"}
+ {form enctype="multipart/form-data" legend="Please fill in the following details"}
{if $notrecognized eq 'y'}
<input type="hidden" name="REG[login]" value="{$reg.login}"/>
<input type="hidden" name="REG[password]" value="{$reg.password}"/>
@@ -18,7 +18,7 @@
{formfeedback error=$errors.validate}
{formlabel label="Username" for="email"}
{forminput}
- <input type="text" name="REG[email]" id="email" value="{$reg.email}"/>
+ <input type="text" size="50" name="REG[email]" id="email" value="{$reg.email}"/>
{/forminput}
</div>
@@ -26,12 +26,14 @@
<input type="submit" name="REG[register]" value="{tr}register{/tr}" />
</div>
{elseif $showmsg ne 'y'}
- <div class="row">
- {formlabel label="Real name" for="real_name"}
- {forminput}
- <input type="text" name="REG[real_name]" id="real_name" value="{$reg.real_name}" />
- {/forminput}
- </div>
+ {if $gBitSystem->isFeatureActive( 'reg_real_name' )}
+ <div class="row">
+ {formlabel label="Real name" for="real_name"}
+ {forminput}
+ <input type="text" name="REG[real_name]" id="real_name" />
+ {/forminput}
+ </div>
+ {/if}
<div class="row">
{formfeedback error=$errors.login}
@@ -46,7 +48,7 @@
{formfeedback error=$errors.email}
{formlabel label="Email" for="email"}
{forminput}
- <input type="text" name="REG[email]" id="email" value="{$reg.email}" /> <acronym title="{tr}Required{/tr}">*</acronym>
+ <input type="text" size="50" name="REG[email]" id="email" value="{$reg.email}" /> <acronym title="{tr}Required{/tr}">*</acronym>
{/forminput}
</div>
@@ -91,6 +93,63 @@
{/if}
{/if}
+ {if $gBitSystem->isFeatureActive( 'reg_real_name' ) or $gBitSystem->isFeatureActive( 'reg_homepage' ) or $gBitSystem->isFeatureActive( 'reg_country' ) or $gBitSystem->isFeatureActive( 'reg_language' ) or $gBitSystem->isFeatureActive( 'reg_portrait' )}
+ {legend legend="Optional Details"}
+ {if $gBitSystem->isFeatureActive( 'reg_homepage' )}
+ <div class="row">
+ {formlabel label="HomePage" for="homePage"}
+ {forminput}
+ <input size="50" type="text" name="REG[homePage]" id="homePage" />
+ {formhelp note="If you have a personal or professional homepage, enter it here."}
+ {/forminput}
+ </div>
+ {/if}
+
+ {if $gBitSystem->isFeatureActive( 'reg_country' )}
+ <div class="row">
+ {formlabel label="Country" for="country"}
+ {forminput}
+ <select name="REG[country]" id="country">
+ <option value="" />
+ {sortlinks}
+ {section name=ix loop=$flags}
+ <option value="{$flags[ix]|escape}" {if $userPrefs.flag eq $flags[ix]}selected="selected"{/if}>{tr}{$flags[ix]|replace:'_':' '}{/tr}</option>
+ {/section}
+ {/sortlinks}
+ </select>
+ {formhelp note=""}
+ {/forminput}
+ </div>
+ {/if}
+
+ {if $gBitSystem->isFeatureActive( 'reg_language' )}
+ <div class="row">
+ {formlabel label="Language" for="language"}
+ {forminput}
+ <select name="REG[bitlanguage]" id="language">
+ {foreach from=$languages key=langCode item=lang}
+ <option value="{$langCode}"{if $gBitLanguage->mLanguage eq $langCode} selected="selected"{/if}>
+ {$lang.full_name}
+ </option>
+ {/foreach}
+ </select>
+ {formhelp note="Pick your preferred site language."}
+ {/forminput}
+ </div>
+ {/if}
+
+ {if $gBitSystem->isFeatureActive( 'reg_portrait' )}
+ <div class="row">
+ {formlabel label="Self Portrait" for="fPortraitFile"}
+ {forminput}
+ <input name="fPortraitFile" id="fPortraitFile" type="file" />
+ {formhelp note="Upload a personal photo to be displayed on your personal page."}
+ {/forminput}
+ </div>
+ {/if}
+ {/legend}
+ {/if}
+
{section name=f loop=$customFields}
<div class="row">
{formlabel label="$customFields[f]}
diff --git a/templates/user_preferences.tpl b/templates/user_preferences.tpl
index 7e5d927..79fa840 100644
--- a/templates/user_preferences.tpl
+++ b/templates/user_preferences.tpl
@@ -82,7 +82,7 @@
</option>
{/foreach}
</select>
- {formhelp note=""}
+ {formhelp note="Pick your preferred site language."}
{/forminput}
</div>
{/if}
@@ -126,7 +126,7 @@
{formlabel label="HomePage" for="homePage"}
{forminput}
<input size="50" type="text" name="homePage" id="homePage" value="{$editUser.homePage|escape}" />
- {formhelp note=""}
+ {formhelp note="If you have a personal or professional homepage, enter it here."}
{/forminput}
</div>