Commit 4081157add1f28e08985e9e9e5cf1a8f8e02eb04

Authored by Administrator
1 parent ab31cc80

change request to massage

src/app/frontend/controllers/SeriesOfLettersController.php
... ... @@ -45,4 +45,16 @@ class SeriesOfLettersController extends \Phalcon\Mvc\Controller
45 45 'data' => $data
46 46 ]);
47 47 }
  48 +
  49 + public function getTemplateAction()
  50 + {
  51 + $this->view->setTemplateAfter('none');
  52 + $like = $this->request->getPost('like', 'string', NULL );
  53 + $users = \customersEmailList::find(array(
  54 + "email LIKE '%$like%' AND project_id = {$this->session->get('project-id')}"
  55 + ));
  56 + $result = json_encode($users->toArray());
  57 + $this->view->disableLevel(\Phalcon\Mvc\View::LEVEL_MAIN_LAYOUT);
  58 + echo $result;
  59 + }
48 60 }
49 61 \ No newline at end of file
... ...
src/app/frontend/views/event_email/addEdit.php
... ... @@ -8,10 +8,6 @@
8 8 <!-- <label for="status"><span></span>Статус ивента</label>-->
9 9 <!-- </div>-->
10 10  
11   - <div class="input-group">
12   - <?= '<input type="checkbox" name="unique" class="unique" value="1" '.( isset( $page->unique ) && !empty( $page->unique ) && $page->unique == 1 ? 'checked="checked"' : '').' />' ?>
13   - <label for="status"><span></span>Уникальный</label>
14   - </div>
15 11  
16 12  
17 13  
... ...
src/app/frontend/views/series_of_letters/addEdit.php
... ... @@ -5,26 +5,44 @@
5 5 <form enctype="multipart/form-data" method="post" action="" id="email_event_add_edit">
6 6 <div class="version_1 clearfix">
7 7  
8   - <div class="input-group">
9   - <span class="input-group-addon title-block-sizing">Название шаблона</span>
10   - <input type="text" name="name" class="form-control" value='<?= (isset( $page->name ) && !empty( $page->name ) ? $page->name : '') ?>'>
11   - </div>
12 8  
13 9 <div class="input-group">
14   - <input type="file" name="uploadify" id="uploadify" />
  10 + <input type="checkbox" name="status" class="unique" value="value='<?= (isset( $page->status ) && !empty( $page->status ) ? $page->status : '') ?>'">
  11 + <label for="status">Статус рассылки</label>
15 12 </div>
16 13  
17 14  
18 15  
19 16 <div class="input-group">
20   - <span class="input-group-addon title-block-sizing">Заголовок</span>
21   - <input type="text" name="title" class="form-control" value='<?= (isset( $page->title ) && !empty( $page->title ) ? $page->title : '') ?>'>
  17 + <span class="input-group-addon title-block-sizing">Название рассылки</span>
  18 + <input type="text" name="title" class="form-control" value='<?= (isset( $page->name ) && !empty( $page->name ) ? $page->name : '') ?>'>
22 19 </div>
23 20  
24 21  
25 22 <div class="input-group">
26   - <span class="input-group-addon title-block-sizing">Текст</span>
27   - <?= '<textarea id="template_text" name="page_content_text">'.(isset( $page->text ) && !empty( $page->text ) ? $page->text : '').'</textarea>' ?>
  23 + <div class="clearfix input_wrapper" id="send_method_users_table">
  24 +
  25 +
  26 + <table id="templates-list" class="table table-hover">
  27 + </table>
  28 + <div class="input-group">
  29 + <span class="input-group-addon title-block-sizing">Введите email пользователя</span>
  30 + <input type="text" value="" class="form-control" name="autocomplete_user_email" id="autocomplete_templates" autocomplete="off">
  31 + </div>
  32 +
  33 + <table class="table table-hover">
  34 + <thead>
  35 + <tr>
  36 + <th id="name">Имя</th>
  37 + <th id="email">e-mail</th>
  38 + <th class="table-buttons"></th>
  39 + </tr>
  40 + </thead>
  41 + <tbody id="result">
  42 +
  43 + </tbody>
  44 + </table>
  45 + </div>
28 46 </div>
29 47  
30 48 </div>
... ... @@ -38,3 +56,42 @@
38 56 </div>
39 57 </div>
40 58 </div>
  59 +<script>
  60 + jQuery(document).ready( function() {
  61 +
  62 + $('#autocomplete_templates').on('change', function () {
  63 + var like = $(this).val();
  64 +
  65 + if (like.length > 3) {
  66 + $.post('/series_of_letters/get_template', {like: like}, function (data) {
  67 + var ajax = $.parseJSON(data);
  68 + var count = ajax.length;
  69 + var block = $('#result');
  70 + block.html('');
  71 + for (var i = 0; i < count; i++) {
  72 + var row = "<tr><td id='name'>" + ajax[i]['name'] + "</td><td id='email'>" + ajax[i]['email'] + "</td><td><p data-id='" + ajax[i]['id'] + "' class = 'btn btn-primary select-row'>Добавить в список</p></td></tr>";
  73 + block.append(row);
  74 + }
  75 + });
  76 + }
  77 + });
  78 +
  79 +
  80 + $('#result').on('click', '.select-row', function () {
  81 + var user_id = $(this).data('id');
  82 + var row = $(this).closest('tr');
  83 + var block = $('#templates-list');
  84 + var email = row.find('#email').html();
  85 + var name = row.find('#name').html();
  86 + var new_row = "<tr><td id='name'>" + name + "</td><td id='email'>" + email + "</td><td><p class = 'btn btn-primary delete-row'>Убрать из списка</p>" +
  87 + "<input type='hidden' value='" + user_id + "' name='user_id[]'></td></tr>";
  88 + block.append(new_row);
  89 + row.remove();
  90 + });
  91 +
  92 + $('#templates-list').on('click', '.delete-row', function () {
  93 + var row = $(this).closest('tr');
  94 + row.remove();
  95 + });
  96 + });
  97 +</script>
41 98 \ No newline at end of file
... ...
src/lib/security.php
... ... @@ -106,7 +106,7 @@ use Phalcon\Events\Event,
106 106 "user"=>array("account"),
107 107 "event_email" => array("checkAjaxData","index", "delete", "update", "add"),
108 108 "standard_email" => array("index", "delete", "update", "add", "getuserslike","seriesOfLetters"),
109   - "series_of_letters" => array("index", "delete", "update", "add"),
  109 + "series_of_letters" => array("index", "delete", "update", "add","get_template"),
110 110 "customers_email" => array( "index","delete", "update"),
111 111 "delivery" => array("index", "add", "update", "moreinfo", "delete", "getCampaignList","customers_add_one"),
112 112 "price_parser" => array("index", "sort", "deleteLink",
... ...