Admin part: home and teams part done

This commit is contained in:
Némunaire 2013-11-08 19:15:17 +01:00
parent 568a6beef0
commit 166be860c8
11 changed files with 250 additions and 55 deletions

View file

@ -21,26 +21,48 @@ $p = $out[0];
// Admin part
if ($n && $p[0] == SALT_ADMIN)
{
if (isset($p[1]))
$template->assign("menu_where", $p[1]);
else
$template->assign("menu_where", "");
if (isset($p[2]))
$template->assign("submenu_where", $p[2]);
else
$template->assign("submenu_where", "");
$template->assign("themes", Theme::get_themes());
if ($n <= 1)
$page = require("admin/home.php");
else
{
switch($p[1])
if (isset($p[2]))
$cmpstr = $p[1]."/".$p[2];
else
$cmpstr = $p[1];
switch($cmpstr)
{
case "exercices/import/":
case "exercices/import":
$page = require("admin/import_exercices.php");
break;
case "users":
case "users/":
// Users
case "teams":
case "teams/":
$page = require("admin/list_users.php");
break;
case "users/import":
case "users/import/":
case "teams/import":
case "teams/import/":
$page = require("admin/import_users.php");
break;
case "teams/export":
case "teams/export/":
$page = require("admin/export_users.php");
break;
}
}
}

View file

@ -0,0 +1,9 @@
<?php
if(!defined('ONYX')) exit;
header("Content-type: application/xml");
$template->assign("teams", Team::get_teams());
return "admin/export_teams";

View file

@ -0,0 +1,5 @@
<?php
if(!defined('ONYX')) exit;
return "admin/home";

View file

@ -2,55 +2,60 @@
if(!defined('ONYX')) exit;
if ($SESS->level > 1)
if (!empty($_FILES["inputFile"]['tmp_name']))
{
$page = "admin/import_users";
if (!empty($_FILES["inputFile"]['tmp_name']))
$doc = new DOMDocument();
if (@!$doc->load($_FILES["inputFile"]['tmp_name']))
{
$doc = new DOMDocument();
if (@!$doc->load($_FILES["inputFile"]['tmp_name']))
{
erreur("Unable to parse given file. A XML file was expected.");
return;
}
erreur("Unable to parse given file. A XML file was expected.");
return;
}
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//users/user");
if (!is_null($elements))
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//teams/team");
if (!is_null($elements))
{
foreach ($elements as $element)
{
foreach ($elements as $element)
$team = new Team();
foreach ($element->childNodes as $child)
{
$user = new User();
if ($child->nodeName == "name")
$team->team_name = $child->nodeValue;
$user->auth_level = 1;
// Why??
//$user->id = $element->getAttribute("id");
else if ($child->nodeName == "slogan")
$team->slogan = $child->nodeValue;
foreach ($element->childNodes as $child)
else if ($child->nodeName == "member")
{
if ($child->nodeName == "username")
$user->username = $child->nodeValue;
if (!$team->update())
erreur("Unable to add team ".$team->team_name);
else if ($child->nodeName == "firstname")
$user->firstname = $child->nodeValue;
$user = new Member();
$user->team = $team;
else if ($child->nodeName == "lastname")
$user->lastname = $child->nodeValue;
foreach ($child->childNodes as $child_member)
{
if ($child_member->nodeName == "firstname")
$user->firstname = $child_member->nodeValue;
else if ($child->nodeName == "company")
$user->company = $child->nodeValue;
else if ($child_member->nodeName == "lastname")
$user->lastname = $child_member->nodeValue;
else if ($child_member->nodeName == "company")
$user->company = $child_member->nodeValue;
}
if (!$user->update())
erreur("Unable to add user ".$user->nickname);
$team->members[] = $user;
}
if (!$user->update())
erreur("Unable to add user ".$user->username);
}
}