您的位置:首页 > 其它

Joomla模块学习之后台mod_login模块

2011-02-27 14:20 471 查看
Joomla模块学习之后台mod_login模块

用户登录模块

后台管理模块效果图

(登录模式有两种:1,常规登录即用户密码登录.2openid方式登录)

1.常规模式



2.openid模式



注openid模式需要后台开启openid插件









原理:

后台mod_logink用户登录模块通过在后台配置相应的信息.如是否加密登录链接等





配置界面:









mod_login模块结构图:







关键代码

jimport('joomla.language.helper');
//$browserLang = JLanguageHelper::detectLanguage();
// forced to default
$browserLang = null;
$lang =& JFactory::getLanguage();

$languages = array();
// 返回语言目录下的语言
$languages = JLanguageHelper::createLanguageList($browserLang );
array_unshift( $languages, JHTML::_('select.option',  '', JText::_( 'Default' ) ) );
$langs = JHTML::_('select.genericlist',   $languages, 'lang', ' class="inputbox"', 'value', 'text', $browserLang );
?>
<?php
	// 判断是否开启openid验证 
	if(JPluginHelper::isEnabled('authentication', 'openid')) :
		$lang->load( 'plg_authentication_openid', JPATH_ADMINISTRATOR );
		$langScript = 	'var JLanguage = {};'.
						' JLanguage.WHAT_IS_OPENID = /''.JText::_( 'WHAT_IS_OPENID' ).'/';'.
						' JLanguage.LOGIN_WITH_OPENID = /''.JText::_( 'LOGIN_WITH_OPENID' ).'/';'.
						' JLanguage.NORMAL_LOGIN = /''.JText::_( 'NORMAL_LOGIN' ).'/';'.
						' var modlogin = 1;';
		$document = &JFactory::getDocument();
		$document->addScriptDeclaration( $langScript );
		JHTML::_('script', 'openid.js');
endif; ?>
<form action="<?php echo JRoute::_( 'index.php', true, $params->get('usesecure')); ?>" method="post" name="login"                 id="form-login" style="clear: both;">
	<p id="form-login-username">
		<label for="modlgn_username"><?php echo JText::_('Username'); ?></label>
		<input name="username" id="modlgn_username" type="text" class="inputbox" size="15" />
	</p>

	<p id="form-login-password">
		<label for="modlgn_passwd"><?php echo JText::_('Password'); ?></label>
		<input name="passwd" id="modlgn_passwd" type="password" class="inputbox" size="15" />
	</p>
	<?php
	if($error = JError::getError(true)) {
		echo '<p id="login-error-message">';
		echo $error->get('message');
		echo '<p>';
	}
	?>
	<p id="form-login-lang" style="clear: both;" mce_style="clear: both;">
		<label for="lang"><?php echo JText::_('Language'); ?></label>
		<?php echo $langs; ?>
	</p>
	<div class="button_holder">
	<div class="button1">
		<div class="next">
			<a onclick="login.submit();">
				<?php echo JText::_( 'Login' ); ?></a>

		</div>
	</div>
	</div>
	<div class="clr"></div>
	<input type="submit" style="border: 0; padding: 0; margin: 0; width: 0px; height: 0px;"
        value="<?php echo JText::_( 'Login' ); ?>" />
	<input type="hidden" name="option" value="com_login" />
	<input type="hidden" name="task" value="login" />
	<?php echo JHTML::_( 'form.token' ); ?>
</form>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: