<?php
session_start();
?>
<html>
<head>
<title>Тест
EASY CMS</title>
<LINK
HREF="ECMS.css"
REL="stylesheet"
TYPE="text/css">
</head>
<?php
include_once("EASYCMSBase.php");
include_once("EASYCMSDB.php");
include_once("EASYCMSVisual.php");
include_once("tests_lib.php");
init_ECMS();
//создадим базу данных и законнектимся к ней
$db=new
ECMS_Database("test","localhost","root","123");
$db->set_prefix("T");
$db->connect();
//создадим
"движок"
сайта
$engine=new
ECMS_Web_Engine();
$engine->set_name("engine");
//Создадим
контроллер
ссылок
$rc=new
ECMS_References_controller();
$rc->url="http://localhost";
$rc->file_name="admin.php";
$rc->set_name("refcont");
//создадим таблицу вопросов
$tb=new
ECMS_Table("questions",
$db);
$tb->set_name("questions");
$tb->fields[]=new
ECMS_Field("id","Код","int",true);
$fl=new
ECMS_Field("text","Текст
вопроса","text",false);
$fl->_width=70;
$tb->fields[]=$fl;
$tb->fields[]=new
ECMS_Field("test","Тест",new
ECMS_Reference("tests","id","name"),false);
$qv=add_table($engine,$tb,$db,"questions_view",$rc,null);
//создадим
таблицу
тестов
$tb=new
ECMS_Table("tests",
$db);
$tb->set_name("tests");
$tb->fields[]=new
ECMS_Field("id","Код","int",true);
$tb->fields[]=new
ECMS_Field("name","Наименование","text",false);
$fl=new
ECMS_Field("description","Описание","text",false);
$fl->_width=70;
$tb->fields[]=$fl;
add_table($engine,$tb,$db,"tests_view",$rc,$qv);
//создадим таблицу
пользователей
$tb=new
ECMS_Table("users",
$db);
$tb->set_name("users");
$tb->fields[]=new
ECMS_Field("id","Код","int",true);
$tb->fields[]=new
ECMS_Field("name","Наименование","text",false);
$tb->fields[]=new
ECMS_Field("password","Пароль","text",false);
$tb->fields[]=new
ECMS_Field("email","email","text",false);
$tb->fields[]=new
ECMS_Field("permissionLevel","Уровень
доступа","int",false);
add_table($engine,$tb,$db,"users_view",$rc,null);
//создадим
таблицу
оценок
$tb=new
ECMS_Table("testscores",
$db);
$tb->set_name("scores");
$tb->fields[]=new
ECMS_Field("id","Код","int",true);
$tb->fields[]=new
ECMS_Field("minscore","Мин
оценка","int",false);
$tb->fields[]=new
ECMS_Field("maxscore","Макс
оценка","int",false);
$fl=new
ECMS_Field("description","Описание","text",false);
$fl->_width=70;
$tb->fields[]=$fl;
$tb->fields[]=new
ECMS_Field("test","Тест",new
ECMS_Reference("tests","id","name"),false);
add_table($engine,$tb,$db,"scores_view",$rc,null);
//создадим
таблицу
результатов
$tb=new
ECMS_Table("results",
$db);
$tb->set_name("results");
$tb->fields[]=new
ECMS_Field("id","Код","int",true);
$tb->fields[]=new
ECMS_Field("score","Оценка","int",false);
$tb->fields[]=new
ECMS_Field("res","Результат",new
ECMS_Reference("testscores","id","description"),false);
$tb->fields[]=new
ECMS_Field("user","Пользователь",new
ECMS_Reference("users","id","name"),false);
$tb->fields[]=new
ECMS_Field("test","Тест",new
ECMS_Reference("tests","id","name"),false);
add_table($engine,$tb,$db,"results_view",$rc,null);
//Превратим входные
параметры в событие
$is_handled=false;
if(isSet($_GET["option"]))
{
$msg=$engine->create_message();
$msg["destination_name"]=$_GET["objname"];
$msg["row_id"]=$_GET["rowid"];
$msg["option"]=$_GET["option"];
$msg["form_name"]=$_GET["form_name"];
$msg["field"]=$_GET["field"];
$engine->send_message($msg,false,$engine);
if($_GET["objname"]==$engine->get_name())
{
!$is_handled=true;
$ltb=$engine->get_table();
if($ltb!=null)
$_SESSION['view_name']=$ltb->get_name()."_view";
}
}
if(!$is_handled)
{
//если нет сообщений то устанавливаем текущей таблицу тестов
$msg=$engine->create_message();
$msg["destination_name"]=$engine->get_name();
$msg["option"]="edittable";
if($_SESSION['view_name']!=null)
$msg["form_name"]=$_SESSION['view_name'];
else
$msg["form_name"]="tests_view";
$engine->send_message($msg,false,$engine);
}
?>
<body>
<table>
<tr>
<td>
<?php
echo
'<a href="'.$rc->create_reference_by_name('edittable',$engine).'&form_name=tests_view">';
echo
'Тесты';
echo
'</a>  ';
echo
'<a href="'.$rc->create_reference_by_name('edittable',$engine).'&form_name=users_view">';
echo
'Пользователи';
echo
'</a>  ';
echo
'<a href="'.$rc->create_reference_by_name('edittable',$engine).'&form_name=scores_view">';
echo
'Оценки
тестов';
echo
'</a>  ';
echo
'<a href="'.$rc->create_reference_by_name('edittable',$engine).'&form_name=results_view">';
echo
'Результаты';
echo
'</a>  ';
?>
</td>
</tr>
<tr>
<td>
<?php
if($engine->get_table()!=null)
echo
$engine->get_table()->get_name()."<br>";
$engine->show();
?>
</td>
</tr>
</table>
<?php
?>
</body>
</html> |