Commit 4081157add1f28e08985e9e9e5cf1a8f8e02eb04
1 parent
ab31cc80
change request to massage
Showing
4 changed files
with
79 additions
and
14 deletions
Show diff stats
src/app/frontend/controllers/SeriesOfLettersController.php
@@ -45,4 +45,16 @@ class SeriesOfLettersController extends \Phalcon\Mvc\Controller | @@ -45,4 +45,16 @@ class SeriesOfLettersController extends \Phalcon\Mvc\Controller | ||
45 | 'data' => $data | 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 | \ No newline at end of file | 61 | \ No newline at end of file |
src/app/frontend/views/event_email/addEdit.php
@@ -8,10 +8,6 @@ | @@ -8,10 +8,6 @@ | ||
8 | <!-- <label for="status"><span></span>Статус ивента</label>--> | 8 | <!-- <label for="status"><span></span>Статус ивента</label>--> |
9 | <!-- </div>--> | 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,26 +5,44 @@ | ||
5 | <form enctype="multipart/form-data" method="post" action="" id="email_event_add_edit"> | 5 | <form enctype="multipart/form-data" method="post" action="" id="email_event_add_edit"> |
6 | <div class="version_1 clearfix"> | 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 | <div class="input-group"> | 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 | </div> | 12 | </div> |
16 | 13 | ||
17 | 14 | ||
18 | 15 | ||
19 | <div class="input-group"> | 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 | </div> | 19 | </div> |
23 | 20 | ||
24 | 21 | ||
25 | <div class="input-group"> | 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 | </div> | 46 | </div> |
29 | 47 | ||
30 | </div> | 48 | </div> |
@@ -38,3 +56,42 @@ | @@ -38,3 +56,42 @@ | ||
38 | </div> | 56 | </div> |
39 | </div> | 57 | </div> |
40 | </div> | 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 | \ No newline at end of file | 98 | \ No newline at end of file |
src/lib/security.php
@@ -106,7 +106,7 @@ use Phalcon\Events\Event, | @@ -106,7 +106,7 @@ use Phalcon\Events\Event, | ||
106 | "user"=>array("account"), | 106 | "user"=>array("account"), |
107 | "event_email" => array("checkAjaxData","index", "delete", "update", "add"), | 107 | "event_email" => array("checkAjaxData","index", "delete", "update", "add"), |
108 | "standard_email" => array("index", "delete", "update", "add", "getuserslike","seriesOfLetters"), | 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 | "customers_email" => array( "index","delete", "update"), | 110 | "customers_email" => array( "index","delete", "update"), |
111 | "delivery" => array("index", "add", "update", "moreinfo", "delete", "getCampaignList","customers_add_one"), | 111 | "delivery" => array("index", "add", "update", "moreinfo", "delete", "getCampaignList","customers_add_one"), |
112 | "price_parser" => array("index", "sort", "deleteLink", | 112 | "price_parser" => array("index", "sort", "deleteLink", |