server/onyx/include/admin/import_users.php

62 lines
1.4 KiB
PHP
Raw Normal View History

<?php
if(!defined('ONYX')) exit;
2013-11-08 18:15:17 +00:00
if (!empty($_FILES["inputFile"]['tmp_name']))
{
2013-11-08 18:15:17 +00:00
$doc = new DOMDocument();
if (@!$doc->load($_FILES["inputFile"]['tmp_name']))
{
erreur("Unable to parse given file. A XML file was expected.");
return;
}
2013-11-08 18:15:17 +00:00
$xpath = new DOMXpath($doc);
$elements = $xpath->query("//teams/team");
if (!is_null($elements))
{
2013-11-08 18:15:17 +00:00
foreach ($elements as $element)
{
2013-11-08 18:15:17 +00:00
$team = new Team();
2013-11-08 18:15:17 +00:00
foreach ($element->childNodes as $child)
{
2013-11-08 18:15:17 +00:00
if ($child->nodeName == "name")
$team->team_name = $child->nodeValue;
2013-11-08 18:15:17 +00:00
else if ($child->nodeName == "slogan")
$team->slogan = $child->nodeValue;
2013-11-08 18:15:17 +00:00
else if ($child->nodeName == "member")
{
2013-11-08 18:15:17 +00:00
if (!$team->update())
erreur("Unable to add team ".$team->team_name);
2013-11-08 18:15:17 +00:00
$user = new Member();
$user->team = $team;
2013-11-08 18:15:17 +00:00
foreach ($child->childNodes as $child_member)
{
if ($child_member->nodeName == "firstname")
$user->firstname = $child_member->nodeValue;
2013-11-08 18:15:17 +00:00
else if ($child_member->nodeName == "lastname")
$user->lastname = $child_member->nodeValue;
else if ($child_member->nodeName == "company")
$user->company = $child_member->nodeValue;
}
2013-11-08 18:15:17 +00:00
if (!$user->update())
erreur("Unable to add user ".$user->nickname);
$team->members[] = $user;
}
}
}
}
2013-11-08 18:15:17 +00:00
erreur("Fichier XML importé avec succès.", "success");
}
2013-11-08 18:15:17 +00:00
return "admin/import_users";