<?php
/**
 * 管理员管理
 * $Id: account_edit_result.php,v 1.1 2015/10/08 11:18:46 wanggb Exp $
 * @author wanggb
 * @package manager.public_html
 */

// 底层包含
require_once("manager_include.inc");

// 登录检查
require_once("check_login.inc");

// 权限检查
if (!checkAuthority("1")) {
	// エラー表示
	$layout_pages = array();
	$layout_pages["left"] = "menu.inc";
	$layout_pages["right"] = "error.inc";
	$message = "权限不足，请联系系统管理员。";
	require_once(MANAGER_TEMPLATE_DIR_PATH . "/layout/leftmenu_layout.inc");
	exit;
}

// 参数取得
$id = ParamUtil::getRequestString("id");
$account_mst = AccountMst::getById($id);
if ($account_mst == null) {
	// エラー表示
	$layout_pages = array();
	$layout_pages["left"] = "menu.inc";
	$layout_pages["right"] = "error.inc";
	$message = "对象不存在。";
	require_once(MANAGER_TEMPLATE_DIR_PATH . "/layout/leftmenu_layout.inc");
	exit;
}

$name = ParamUtil::getRequestString("name");
$login = ParamUtil::getRequestString("login");
$password = ParamUtil::getRequestString("password");
$contact = ParamUtil::getRequestString("contact");
$comment = ParamUtil::getRequestString("comment");
$account_role = ParamUtil::getRequestString("account_role");
$modules_array = ParamUtil::getRequestArray("modules", array());
$organization = ParamUtil::getRequestString("organization");

// 登陆帐号唯一性判断
$param = array();
$param["delete_flg"] = false;
$param["login"] = $login;
$account_list = AccountMst::getList($param);
if (count($account_list) > 1) {
  $error_message = "登陆帐号已经被使用,请换一个。";
  
  // 权限一览取得
  $modules_list = AcountModule::getList();
  $account_role_list = AccountRole::getList();
  
  $school_list = CompassHandler::getSchoolListForAccount();
  $government_list = CompassHandler::getGovernmentlListForAccount();
  
  // 页面表示
  $_SCRIPT_FILE = array("scripts/validators.js", "scripts/account_edit_input.js");
  $layout_pages = array();
  $layout_pages["left"] = "menu.inc";
  $layout_pages["right"] = "account_edit_input.inc";
  $layout_pages["menu_clicked"] = "5-1";
  require_once(MANAGER_TEMPLATE_DIR_PATH . "/layout/leftmenu_layout.inc");
  exit;
}

// 数据库更新
$account_mst->login = $login;
$account_mst->password = $password;
$account_mst->name = $name;
$account_mst->contact = $contact;
$account_mst->comment = $comment;
if(count($modules_array) == 0){
  $modules_array = [1,2,3,4,5,6,7,8,9,10,11,12,13];
}
$account_mst->modules = implode("|", $modules_array);
$account_mst->role = $account_role;
if($account_role <=6){
  $account_mst->government_id = $organization;
}else if($account_role >= 8 && $account_role <= 9){
  $account_mst->school_id = $organization;
}

$account_mst->save();

// 跳到一览页
header("Location:account_list.php");
exit;