Пример #1
0
    function edit($create = null)
    {
        $translator = new Translator();
        $category = new Category();
        $course = new Course();
        $trainer = new Trainer();
        if ($create) {
            $func = 'add';
        } else {
            $func = 'save';
            $plan = new Plan();
            $this->id = array_shift($this->param);
            $data = $plan->get(array('id' => $this->id));
            foreach ($data as $key => $val) {
                $data[$key] = htmlspecialchars($val, ENT_QUOTES);
            }
        }
        try {
            $c_data = $course->get(array('id' => $data['course_id']));
            $category_id = $c_data['category_id'];
            $enum = $course->enumerate(array('category_id' => intval($category_id)));
            foreach ($enum as $val) {
                $courses .= "<option value=\"{$val[id]}\"" . ($val['id'] == $data['course_id'] ? ' selected' : '') . ">" . htmlspecialchars($val['name'], ENT_QUOTES) . "</option>" . NL;
            }
        } catch (Exception $e) {
        }
        $categories = Course::getCategoriesForSelect($category_id);
        $enum = $trainer->enumerate();
        foreach ($enum as $val) {
            $trainers .= "<option value=\"{$val[id]}\"" . ($val['id'] == $data['trainer_id'] ? ' selected' : '') . ">" . htmlspecialchars($val['name'], ENT_QUOTES) . "</option>" . NL;
        }
        if ($data['active'] == 't') {
            $active = 'checked';
        }
        echo <<<EOF
<div class="container">
<div class="col-xs-12 col-sm-8 col-md-6 col-sm-offset-2 col-md-offset-3">
    <form role="form" action="/admin_training/{$func}/{$data[id]}" method="post">
\t<h2>{$translator->Plan_edit}</h2>
\t    <div class="form-group">
                <label for="category_id">{$translator->Category}:</label>
        \t<select class="form-control" id="category_id" name="category_id">
                {$categories}
                </select>
            </div>
\t    <div class="form-group">
                <label for="course_id">{$translator->Course}:</label>
        \t<select class="form-control" id="course_id" name="course_id">
                {$courses}
                </select>
            </div>

\t    <div class="form-group">
\t\t<label for="start">{$translator->Start}:</label> <span class="text-muted">{$translator->Start_Desc}</span>
\t\t<input name="start" id="start" class="form-control datetimepicker" value="{$data[start]}">
\t    </div>
\t    <div class="form-group">
\t\t<label for="finish">{$translator->Finish}:</label> <span class="text-muted">{$translator->Finish_Desc}</span>
\t\t<input name="finish" id="finish" class="form-control datetimepicker" value="{$data[finish]}">
\t    </div>
\t    <div class="form-group">
\t\t<input type="text" name="contact" id="contact" class="form-control input-lg" 
\t\tplaceholder="{$translator->Contact}" tabindex="5" required value="{$data[contact]}">
\t    </div>
\t    <div class="form-group">
\t\t<input type="text" name="place" id="place" class="form-control input-lg" 
\t\tplaceholder="{$translator->Place}" tabindex="6" required value="{$data[place]}">
\t    </div>
\t    <div class="form-group">
                <label for="trainer_id">{$translator->Trainer}:</label>
        \t<select class="form-control" id="trainer_id" name="trainer_id">
                {$trainers}
                </select>
            </div>
\t    <div class="checkbox">
\t\t<label><input type="checkbox" value="true" name="active" id="active" {$active}> {$translator->Active}</label>
\t    </div>

EOF;
        if (!$create) {
            // let add people to plan, because plan_ID is known
            $user = new User();
            $training = new Training();
            $enum = $training->enumerate(array('plan_id' => $data['id']));
            if (is_object($enum)) {
                foreach ($enum as $val) {
                    $u_data = $user->get(array('id' => $val['user_id']));
                    $json = array('id' => $data['id'], 'name' => $data['name'], 'email' => $data['email'], 'company' => $data['company'], 'city' => $data['city']);
                    $users .= "<tr id=\"row{$u_data[id]}\"><td>{$u_data[name]}</td><td>" . "{$u_data[email]}</td><td>{$u_data[company]} / {$u_data[city]}</td><td>" . "<a href=\"#\" onclick=\"return removeuser({$u_data[id]});\">" . '<span class="glyphicon glyphicon-trash"></span></a></td></tr>' . NL;
                }
            }
            echo <<<EOF
<div class="form-group totop-relative">
<small>
<table id="users"  class="table table-striped">
<tbody>
{$users}
</tbody>
</table>
</small>
<div class="list-group totop" id="usermenu" >
</div>
<input type="text" name="searchuser" id="searchuser" class="form-control input-md" placeholder="{$translator->Search_user}">
</div>

EOF;
        }
        echo <<<EOF
\t    <div class="row">
\t\t<div class="col-xs-12 col-md-6"><input type="submit" value="{$translator->Save}" class="btn btn-primary" tabindex="13"></div>
\t    </div>
    </form>
</div>
</div> <!-- /container -->

EOF;
    }
Пример #2
0
    function displayBody()
    {
        parent::displayBody();
        $translator = new Translator();
        $trainer = new Trainer();
        $page = $_GET['page'];
        $offset = intval($page) * ITEMS_IN_PAGE;
        if (isset($_GET['search'])) {
            unset($_GET['search']);
            unset($_GET['page']);
            $search = $_GET;
        } else {
            $search = null;
        }
        $cnt = $trainer->getCount($search);
        if (sizeof($_GET) > 0) {
            foreach ($_GET as $key => $val) {
                $values[$key] = htmlspecialchars($val, ENT_QUOTES);
            }
        }
        if ($cnt > ITEMS_IN_PAGE) {
            $pagination = $this->addPaginator($cnt, $page);
        }
        echo <<<EOF
<h2  class="page-header">{$translator->Trainers_header} <span class="badge">{$cnt}</span></h2>
    <div class="row">
\t<div class="btn-group">
\t<a href="/admin_trainer/new" class="btn btn-sm btn-default">
\t    <span class="glyphicon glyphicon-plus"></span><span class="glyphicon glyphicon-user"></span> {$translator->Add}</a>
\t<button class="btn btn-sm btn-default"  data-toggle="collapse" data-target="#filter">
\t    <span class="glyphicon glyphicon-filter"></span> {$translator->Filter}
\t</button>
\t</div>
    </div>
    <div class="row">
        <div class="col-md-5 collapse" id="filter">
\t    <form role="form" class="form-horizontal" action="?" method="get">
\t\t<div class="form-group">
\t\t    <div class="form-group">
\t\t    <label for="name" class="control-label col-sm-3">{$translator->Name}:</label>
\t\t    <div class="col-sm-8">
\t\t    <input type="text" class="form-control" id="name" name="name" value="{$values[name]}">
\t\t    </div>
\t\t    </div>
\t\t    <div class="form-group">
\t\t    <label for="email" class="control-label col-sm-3">{$translator->Email}:</label>
\t\t    <div class="col-sm-8">
\t\t    <input type="text" class="form-control" id="email" name="email" value="{$values[email]}">
\t\t    </div>
\t\t    </div>
\t\t    <div class="form-group">
\t\t    <label for="data" class="control-label col-sm-3">{$translator->Data}:</label>
\t\t    <div class="col-sm-8">
\t\t    <input type="text" class="form-control" id="data" name="data" value="{$values[data]}">
\t\t    </div>
\t\t    </div>
\t\t    <div class="form-group">
\t\t    <div class="col-sm-offset-3 col-md-10">
\t\t    <input class="sr-only" name="search" value="1">
\t\t    <button type="submit" class="btn btn-sm btn-default">{$translator->Apply}</button>
\t\t    </div>
\t\t    </div>
\t\t</div>
\t    </form>
\t</div>
    </div>
{$pagination}
          <div class="table-responsive">
            <table class="table table-striped">
              <thead>
                <tr>
                  <th>#</th>
                  <th>{$translator->Name}</th>
                  <th>{$translator->Email}</th>
                  <th>{$translator->Data}</th>
                </tr>
              </thead>
              <tbody>

EOF;
        $enum = $trainer->enumerate($search, $offset, ITEMS_IN_PAGE);
        if (is_object($enum)) {
            $i = 1 + $offset;
            foreach ($enum as $key => $data) {
                if (strlen($data['data']) > 50) {
                    $data['data'] = '<small>' . $data['data'] . '</small>';
                } else {
                    if (strlen($data['data']) > 200) {
                        $data['data'] = '<small>' . substr($data['data'], 0, 200) . '...</small>';
                    }
                }
                echo "                <tr>\n                  <td>{$i}</td>\n                  <td>{$data[name]}</td>\n                  <td>{$data[email]}</td>\n                  <td>{$data[data]}</td>\n                  <td><a href=\"/admin_trainer/edit/{$data[id]}\" title=\"{$translator->edit}\"><span class=\"glyphicon glyphicon-user\"></span></a></td>\n                  <td><a href=\"/admin_trainer/delete/{$data[id]}\" title=\"{$translator->del}\" onClick=\"return confirm('{$translator->AreYouSure}');\"><span class=\"glyphicon glyphicon-trash\"></span></a></td>\n                </tr>" . NL;
                $i++;
            }
        }
        echo <<<EOF
\t    </table>
\t</div>

EOF;
    }