* finish task #2557.

This commit is contained in:
chenfeiCF
2016-03-28 13:51:43 +08:00
parent 228b0aa59a
commit a0d62eea86
7 changed files with 185 additions and 18 deletions
+1
View File
@@ -159,6 +159,7 @@ $lang->my->menu->myProject = "{$lang->projectCommon}|my|project|";
$lang->my->menu->dynamic = 'Dynamic|my|dynamic|';
$lang->my->menu->profile = array('link' => 'Profile|my|profile|', 'alias' => 'editprofile');
$lang->my->menu->changePassword = 'Change Password|my|changepassword|';
$lang->my->menu->manageContacts = 'Contacts|my|managecontacts|';
$lang->todo = new stdclass();
$lang->todo->menu = $lang->my->menu;
+1
View File
@@ -159,6 +159,7 @@ $lang->my->menu->myProject = "{$lang->projectCommon}|my|project|";
$lang->my->menu->dynamic = '动态|my|dynamic|';
$lang->my->menu->profile = array('link' => '档案|my|profile', 'alias' => 'editprofile');
$lang->my->menu->changePassword = '密码|my|changepassword';
$lang->my->menu->manageContacts = '联系人|my|managecontacts';
$lang->todo = new stdclass();
$lang->todo->menu = $lang->my->menu;
+73
View File
@@ -378,6 +378,79 @@ class my extends control
$this->display();
}
/**
* Manage contacts.
*
* @param int $listID
* @param string $mode
* @access public
* @return void
*/
public function manageContacts($listID = 0, $mode = '')
{
if($_POST)
{
if($this->post->mode == 'new')
{
$listID = $this->user->createContactList($this->post->newList, $this->post->users);
die(js::locate(inlink('manageContacts', "listID=$listID"), 'parent'));
}
elseif($this->post->mode == 'edit')
{
$this->user->updateContactList($this->post->listID, $this->post->listName, $this->post->users);
die(js::locate(inlink('manageContacts', "listID={$this->post->listID}"), 'parent'));
}
}
$mode = empty($mode) ? 'edit' : $mode;
$lists = $this->user->getContactLists($this->app->user->account);
/* Create or manage list according to mode. */
if($mode == 'new')
{
$this->view->title = $this->lang->my->common . $this->lang->colon . $this->lang->user->contacts->createList;
$this->view->position[] = $this->lang->user->contacts->createList;
}
else
{
$listID = $listID ? $listID : key($lists);
if(!$listID) die(js::alert($this->lang->user->contacts->noListYet) . js::locate($this->createLink('my', 'managecontacts', "listID=0&mode=new"), 'parent'));
$this->view->title = $this->lang->my->common . $this->lang->colon . $this->lang->user->contacts->manage;
$this->view->position[] = $this->lang->user->contacts->manage;
$this->view->list = $this->user->getContactListByID($listID);
}
$this->view->mode = $mode;
$this->view->lists = $lists;
$this->view->listID = $listID;
$this->view->users = $this->user->getPairs('noletter|nodeleted|noempty|noclosed');
$this->display();
}
/**
* Delete a contact list.
*
* @param int $listID
* @param string $confirm
* @access public
* @return void
*/
public function deleteContacts($listID, $confirm = 'no')
{
if($confirm == 'no')
{
echo js::confirm($this->lang->user->contacts->confirmDelete, inlink('deleteContacts', "listID=$listID&confirm=yes"));
exit;
}
else
{
$this->user->deleteContactList($listID);
echo js::locate(inlink('manageContacts'), 'parent');
exit;
}
}
/**
* View my profile.
*
+4
View File
@@ -0,0 +1,4 @@
.panel.with-list {border: none}
.panel.with-list .panel-heading {border: 1px solid #ddd; border-bottom: none}
.panel.with-list .list-group {margin: 0}
.list-group-item.active {color: #1A4F85}
+90
View File
@@ -0,0 +1,90 @@
<?php
/**
* The contacts manage page of my module.
*
* @copyright Copyright 2009-2015 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
* @license ZPL (http://zpl.pub/page/zplv12.html)
* @author chunsheng wang <chunsheng@cnezsoft.com>
* @package my
* @version $Id$
* @link http://www.zentao.net
*/
?>
<?php include '../../common/view/header.html.php';?>
<div class='row'>
<div class='col-md-3 col-lg-2'>
<div class='panel panel-sm with-list'>
<div class='panel-heading'>
<i class='icon-list-ul'></i> <strong><?php echo $lang->user->contacts->contactsList;?></strong>
</div>
<ul class='list-group'>
<?php
foreach($lists as $id => $listName)
{
$class = ($id == $listID) ? 'list-group-item active' : 'list-group-item';
echo html::a(inlink('managecontacts', "listID=$id&mode=edit"), $listName, '', "class='{$class}'");
}
?>
</ul>
</div>
</div>
<div class='col-md-9 col-lg-10'>
<form class='form-condensed' method='post' target='hiddenwin' id='dataform'>
<div class='panel panel-sm'>
<div class='panel-heading'>
<?php if($mode == 'new'):?>
<i class='icon-plus'></i> <strong><?php echo $lang->user->contacts->createList;?></strong>
<?php else:?>
<i class='icon-cogs'></i> <strong><?php echo $lang->user->contacts->manage;?></strong>
<?php endif;?>
<div class='panel-actions pull-right'>
<?php
if($mode == 'edit')
{
echo html::a(inlink('managecontacts', "listID=0&mode=new"), $lang->user->contacts->createList, '', "class='btn'");
echo html::a(inlink('deleteContacts', "listID=$listID"), $lang->delete, 'hiddenwin', "class='btn btn-danger'");
}
?>
</div>
</div>
<div class='panel-body'>
<table class='table table-form'>
<tr>
<th class='w-80px'><?php echo $lang->user->contacts->selectedUsers;?></th>
<td>
<?php
if($mode == 'new')
{
echo html::select('users[]', $users, '', "multiple class='form-control chosen'");
}
else
{
echo html::select('users[]', $users, $list->userList, "multiple class='form-control chosen'");
}
?>
</td>
</tr>
<tr>
<th><?php echo $lang->user->contacts->listName;?></th>
<td>
<?php
if($mode == 'new')
{
echo html::input('newList', '', "class='form-control'");
}
else
{
echo html::input('listName', $list->listName, "class='form-control'");
echo html::hidden('listID', $list->id);
}
?>
</td>
</tr>
<tr><td></td><td><?php echo html::submitButton() . html::hidden('mode', $mode);?></td></tr>
</table>
</div>
</div>
</form>
</div>
</div>
<?php include '../../common/view/footer.html.php';?>
+8 -9
View File
@@ -149,15 +149,14 @@ $lang->user->contacts = new stdclass();
$lang->user->contacts->common = 'Contacts';
$lang->user->contacts->listName = 'List name';
$lang->user->contacts->manage = 'Manage List';
$lang->user->contacts->contactsList = 'List';
$lang->user->contacts->selectedUsers= 'Users';
$lang->user->contacts->selectList = 'List';
$lang->user->contacts->appendToList = 'Append to a list';
$lang->user->contacts->createList = 'Createa a list';
$lang->user->contacts->noListYet = 'No contacts list yet.';
$lang->user->contacts->confirmDelete= 'Are you sure to delete this list?';
$lang->user->contacts->or = ' or ';
$lang->user->contacts->manage = 'Manage List';
$lang->user->contacts->contactsList = 'List';
$lang->user->contacts->selectedUsers = 'Users';
$lang->user->contacts->selectList = 'List';
$lang->user->contacts->createList = 'Create a list';
$lang->user->contacts->noListYet = 'No contacts list yet, please create a list first.';
$lang->user->contacts->confirmDelete = 'Are you sure to delete this list?';
$lang->user->contacts->or = ' or ';
$lang->user->resetFail = "Reset fail, Check account";
$lang->user->resetSuccess = "Reset success.";
+8 -9
View File
@@ -149,15 +149,14 @@ $lang->user->contacts = new stdclass();
$lang->user->contacts->common = '联系人';
$lang->user->contacts->listName = '列表名称';
$lang->user->contacts->manage = '维护列表';
$lang->user->contacts->contactsList = '已有列表';
$lang->user->contacts->selectedUsers= '选择用户';
$lang->user->contacts->selectList = '选择列表';
$lang->user->contacts->appendToList = '追加至已有列表:';
$lang->user->contacts->createList = '创建新列表:';
$lang->user->contacts->noListYet = '还没有创建任何列表。';
$lang->user->contacts->confirmDelete= '您确定要删除这个列表吗?';
$lang->user->contacts->or = ' 或者 ';
$lang->user->contacts->manage = '维护列表';
$lang->user->contacts->contactsList = '已有列表';
$lang->user->contacts->selectedUsers = '选择用户';
$lang->user->contacts->selectList = '选择列表';
$lang->user->contacts->createList = '创建新列表';
$lang->user->contacts->noListYet = '还没有创建任何列表,请先创建联系人列表。';
$lang->user->contacts->confirmDelete = '您确定要删除这个列表吗?';
$lang->user->contacts->or = ' 或者 ';
$lang->user->resetFail = "重置密码失败,检查用户名是否存在!";
$lang->user->resetSuccess = "重置密码成功,请用新密码登录。";