fengoffice的注册页面
小弟对php不是很熟悉,对fengoffice也不是很熟悉,为了帮朋友忙,特地花了一些时间做了fengoffice的注册页面。欢迎大家提出修改意见。
步骤如下:
1 从 fengoffice/application/controllers/AccessController.class.php中
function complete_installation() 函数 复制一份 修改函数名为complete_register
代码如下
/**
* register
*
* @param void
* @return null
*/
function complete_register() {
$form_data = array_var($_POST, 'form');
tpl_assign('form_data', $form_data);
if(array_var($form_data, 'submited') == 'submited') {
try {
$admin_password = trim(array_var($form_data, 'admin_password'));
$admin_password_a = trim(array_var($form_data, 'admin_password_a'));
if(trim($admin_password) == '') {
throw new Error(lang('password value required'));
} // if
if($admin_password <> $admin_password_a) {
throw new Error(lang('passwords dont match'));
} // if
DB::beginWork();
// Create the administrator user
$administrator = new Contact();
$pergroup = PermissionGroups::findOne(array('conditions'=>"`name`='Collaborator Customer'"));
$administrator->setUserType($pergroup->getId());
$administrator->setUsername(array_var($form_data, 'admin_username'));
$administrator->setPassword($admin_password);
$administrator->setFirstname(array_var($form_data, 'admin_username'));
$administrator->setObjectName();
$administrator->save();
$user_password = new ContactPassword();
$user_password->setContactId($administrator->getId());
$user_password->password_temp = $admin_password;
$user_password->setPasswordDate(DateTimeValueLib::now());
$user_password->setPassword(cp_encrypt($admin_password, $user_password->getPasswordDate()->getTimestamp()));
$user_password->save();
//Add email after save because is needed.
$administrator->addEmail(array_var($form_data, 'admin_email'), 'personal', true);
//permissions
$permission_group = new PermissionGroup();
$permission_group->setName('User '+ $administrator->getId()+' Personal');
$permission_group->setContactId($administrator->getId());
$permission_group->setIsContext(false);
$permission_group->setType("permission_groups");
$permission_group->save();
$administrator->setPermissionGroupId($permission_group->getId());
$administrator->save();
$contact_pg = new ContactPermissionGroup();
$contact_pg->setContactId($administrator->getId());
$contact_pg->setPermissionGroupId($permission_group->getId());
$contact_pg->save();
// tab panel permissions
$panels = TabPanels::getEnabled();
foreach ($panels as $panel) {
$tpp = new TabPanelPermission();
$tpp->setPermissionGroupId($administrator->getPermissionGroupId());
$tpp->setTabPanelId($panel->getId());
$tpp->save();
}
Hook::fire('after_user_add', $administrator, $null);
DB::commit();
$this->redirectTo('access', 'login');
} catch(Exception $e) {
tpl_assign('error', $e);
DB::rollback();
} // try
} // if
} // register
2 复制 /fengoffice/application/views/access/complete_installation.php 一份
修改名称为/fengoffice/application/views/access/complete_register.php
<?php set_page_title(lang('complete installation')) ?>
<form class="internalForm" action="<?php echo get_url('access', 'complete_register') ?>" method="post">
<?php tpl_display(get_template_path('form_errors')) ?>
<p><?php echo lang('complete installation desc') ?></p>
<h2><?php echo lang('administrator') ?></h2>
<div>
<?php echo label_tag(lang('username'), 'adminUsername', true) ?>
<?php echo text_field('form[admin_username]', array_var($form_data, 'admin_username'), array('id' => 'adminUsername', 'class' => 'medium')) ?>
</div>
<div>
<?php echo label_tag(lang('email address'), 'adminEmail', true) ?>
<?php echo text_field('form[admin_email]', array_var($form_data, 'admin_email'), array('id' => 'adminEmail', 'class' => 'long')) ?>
</div>
<div>
<?php echo label_tag(lang('password'), 'adminPassword', true) ?>
<?php echo password_field('form[admin_password]', null, array('id' => 'adminPassword', 'class' => 'medium')) ?>
</div>
<div>
<?php echo label_tag(lang('password again'), 'adminPasswordA', true) ?>
<?php echo password_field('form[admin_password_a]', null, array('id' => 'adminPasswordA', 'class' => 'medium')) ?>
</div>
<h2><?php echo lang('company') ?></h2>
<div>
<?php echo label_tag(lang('name'), 'companyName', true) ?>
<?php echo text_field('form[company_name]', array_var($form_data, 'company_name'), array('id' => 'companyName', 'class' => 'long')) ?>
</div>
<input type="hidden" name="form[submited]" value="submited" />
<?php echo submit_button('submit') ?>
</form>
3 登陆系统 请求地址如下 index.php?c=access&a=complete_register
4 可以开始自由注册
分享到:
相关推荐
About Feng Office 2.1 - Beta ================================ Feng Office is a Collaboration Platform and Project Management System. It is licensed under the Affero GPL 3... * contact@fengoffice.com
《fengoffice 2.0:开启高效在线协同办公新时代》 fengoffice 2.0,这款在线协同办公软件,是信息化办公领域的一颗璀璨明星。它集成了当前所有在线处理信息的功能,旨在为用户提供全方位、高效便捷的协同工作环境,...
Feng Office的前身是opengoo,这是一个历史悠久的在线办公系统,作为后继者的fengoffice,功能自然不含糊。 它不仅包含的完备的文档管理,权限管理,版本管理,居然包含了常用的office的许多功能,而且安装简单,...
FengOffice 2.3.2 是一款功能丰富的协同办公软件,主要面向企业和团队,提供文档管理、项目协作、任务分配、时间管理等核心功能。这个版本的“完全汉化包 1.0 Beta”是作者针对原版FengOffice进行的深度本地化工作,...
FengOffice是一款功能强大的协同办公软件,它提供了文档管理、任务分配、日程安排以及团队协作等多种功能。在标题和描述中提到的"FengOffice_1.7.4支持中文"表明该版本是针对中文用户特别优化的,意味着用户界面、...
FengOffice是一款功能强大的协同办公软件,它提供了丰富的文档管理、项目协作和团队沟通工具,帮助企业或个人提升工作效率。1.75版本是该软件的一个经典稳定版本,意味着它经过了多轮测试,拥有良好的兼容性和稳定性...
本文将深入探讨fengoffice的核心功能、特点以及在实际应用中的优势。 一、系统概述 fengoffice是一款功能强大的在线协作工具,它允许用户在Web浏览器上创建、存储、共享和管理各种类型的文档。1.7.5rc3版本在前代...
3. **办公自动化**:OA系统是企业提高效率的重要工具,FengOffice提供了文档管理、工作流程自动化、审批流程、邮件集成等功能,帮助企业实现无纸化办公,降低沟通成本,提升协作效率。 4. **文档共享**:在...
### 使用FengOffice中文语言出现missing lang.js的解决方法 #### 一、问题背景 在使用FengOffice项目管理软件时,如果选择了中文语言环境,可能会遇到“missing lang.js”的错误提示。这个问题通常是由于FengOffice...
ppt类型的FengOffice使用教程
它具备了主流在线协作系统所应具备的所有功能,包括任务管理、日程管理、文件管理、联系人管理以及email收发功能。其文件管理模块,实现了文件版本管理的功能,能够方便的查找、下载同一文件的不同版本。...
FengOffice的基本概念 本节我们讲述FengOffice的基本概念。理解这些概念对我们理解整个应用程序是至关重要的。所以,要确保在阅读本手册其他部分之前,你已阅读了本节的内容。 信息类型 在Feng Office系统中,有...
Feng Office 2.5 更新日志: 错误修正:提交回车键通用搜索表单不会在谷歌Chrome浏览器工作 错误修正:使用所见即所得的链接时,现在保存为这种 ...错误修正:初级面包屑显示确切的上下文 ...错误修正:mysql的交易...
OA(Office Automation)办公系统是企业信息化建设中的关键部分,它通过自动化的工作流程、文档管理、任务分配等功能,提升组织内部的工作效率和协作能力。在本主题中,我们将重点讨论一款基于PHP开发的开源OA办公...
Feng Office(以前称为OpenGoo)是一种免费且开源的在线项目管理和协作工具,已获得Affero GPL 3许可。
Feng Office是一款功能丰富的开源协同办公软件,旨在提高团队的工作效率和协作能力。这款软件的德语翻译项目意味着它已经被本地化,以便德国用户能够更方便地使用,使其功能更加贴近德语使用者的需求。...
FengOffice是一款开源的协同办公软件,它允许用户进行文档共享、任务管理、日程安排等协作工作。此语言包的目的是将FengOffice的用户界面翻译成中文,以便中国用户更方便地使用。 【描述】"基于PHP的FengOfficephp...
6. **API集成**:提供API接口,便于与其他Web服务或内部系统集成,实现自动化流程。 7. **界面友好**:采用直观的用户界面设计,使得非技术人员也能轻松上手。 在提供的文件列表中,我们注意到“fengoffice”这个...
用户在安装汉化包后,Feng Office的界面将自动切换为简体中文,使得中文用户可以更直观地了解和操作各项功能。 在使用汉化包时,用户需要先确保自己的Feng Office版本为2.2.4,因为汉化包是针对这一特定版本设计的...