1{* $Id$ *}
2{assign var=nlId_urlencoded value=$nlId|urlencode}
3{title url="tiki-admin_newsletter_subscriptions.php?nlId=$nlId_urlencoded"}{tr}Admin newsletter subscriptions{/tr}{/title}
4
5<div class="t_navbar btn-group form-group row mb-4">
6	{button href="tiki-newsletters.php" class="btn btn-info" _icon_name="list" _text="{tr}List{/tr}"}
7	{assign var="nlid_encod" value=$nlId|urlencode}
8	{button href="tiki-admin_newsletters.php?nlId=$nlid_encod" class="btn btn-primary" _icon_name="edit" _text="{tr}Edit{/tr}"}
9	{button href="tiki-admin_newsletters.php" class="btn btn-primary" _icon_name="cog" _text="{tr}Admin{/tr}"}
10	{button href="tiki-send_newsletters.php?nlId=$nlid_encod" class="btn btn-primary" _icon_name="envelope" _text="{tr}Send{/tr}"}
11</div>
12
13<div class="table-responsive">
14	<table class="table table-striped table-hover">
15		<tr>
16			<th colspan="2">{tr}Newsletter{/tr}</th>
17		</tr>
18		<tr>
19			<td class="even" width="30%">{tr}Name:{/tr}</td>
20			<td class="even">{$nl_info.name|escape}</td>
21		</tr>
22		<tr>
23			<td class="even">{tr}Description:{/tr}</td>
24			<td class="even">{$nl_info.description|escape|nl2br}</td>
25		</tr>
26	</table>
27</div>
28
29{tabset name='tabs_newsletter_subscriptions'}
30
31	{tab name="{tr}Subscriptions{/tr}"}
32		<h2>{tr}Subscriptions{/tr}</h2>
33		{* groups------------------------------------ *}
34		{if $nb_groups > 0}
35			<div class="table-responsive">
36				<table class="table table-striped table-hover">
37					<tr>
38						<th>
39							<a href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset_g|urlencode}&amp;sort_mode_g={if $sort_mode_g eq 'groupName_asc'}groupName_desc{else}groupName_asc{/if}">
40								{tr}Group{/tr}
41							</a>
42						</th>
43						<th></th>
44					</tr>
45
46					{section name=ix loop=$groups_g}
47						<tr>
48							<td class="text">
49								{$groups_g[ix].groupName|escape}
50								{if count($groups_g[ix].additional_groups)}
51									<div>
52										{tr}Groups included through inheritance:{/tr}
53										{foreach from=$groups_g[ix].additional_groups item=groupName}
54											{$groupName|escape}
55										{/foreach}
56									</div>
57								{/if}
58							</td>
59							<td class="action">
60								<a class="tips text-danger"
61								   title=":{tr}Remove{/tr}"
62								   href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={$sort_mode|urlencode}&amp;remove={$groups_g[ix].nlId|urlencode}&amp;group={$groups_g[ix].groupName|urlencode}"
63								   onclick="confirmSimple(event, '{tr}Remove subscription?{/tr}', '{ticket mode=get}')"
64								>
65									{icon name='remove'}
66								</a>
67							</td>
68						</tr>
69					{/section}
70				</table>
71			</div>
72		{/if}
73		{* /groups------------------------------------ *}
74
75		{* included------------------------------------ *}
76		{if $nb_included > 0}
77			<div class="table-responsive">
78				<table class="table table-striped table-hover">
79					<tr>
80						<th>
81							<a href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset_g|urlencode}&amp;sort_mode_i={if $sort_mode_i eq 'name_asc'}name_desc{else}name_asc{/if}">{tr}Newsletter{/tr}</a>
82						</th>
83						<th></th>
84					</tr>
85
86					{foreach key=incId item=incName from=$included_n}
87						<tr>
88							<td class="text">
89								<a href="tiki-admin_newsletter_subscriptions.php?nlId={$incId|urlencode}">{$incName|escape}</a>
90							</td>
91							<td class="action">
92								<a class="tips text-danger"
93								   title=":{tr}Remove{/tr}"
94								   href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={$sort_mode|urlencode}&amp;remove={$nlId|urlencode}&amp;included={$incId|urlencode}"
95								   onclick="confirmSimple(event, '{tr}Remove subscription?{/tr}', '{ticket mode=get}')"
96								>
97									{icon name='remove'}
98								</a>
99							</td>
100						</tr>
101					{/foreach}
102				</table>
103			</div>
104		{/if}
105		{* /included------------------------------------ *}
106
107		{* pages------------------------------------ *}
108		{if $nb_pages > 0}
109			<div class="table-responsive">
110				<table class="table table-striped table-hover">
111					<tr>
112						<th>{tr}Wiki Page Name{/tr}</th>
113						<th>{tr}Validate Addresses{/tr}</th>
114						<th>{tr}Add To List{/tr}</th>
115						<th></th>
116					</tr>
117
118					{section name=ix loop=$pages}
119						<tr>
120							<td class="text"><a href="{$pages[ix].wikiPageName|sefurl}">{$pages[ix].wikiPageName|escape}</a></td>
121							<td class="text">{$pages[ix].validateAddrs|escape}</td>
122							<td class="text">{$pages[ix].addToList|escape}</td>
123							<td class="action">
124								<a class="tips text-danger"
125								   title=":{tr}Remove{/tr}"
126								   href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;remove={$pages[ix].nlId|urlencode}&amp;page={$pages[ix].wikiPageName|urlencode}"
127								   onclick="confirmSimple(event, '{tr}Remove subscription?{/tr}', '{ticket mode=get}')"
128								>
129									{icon name='remove'}
130								</a>
131							</td>
132						</tr>
133					{/section}
134				</table>
135			</div>
136		{/if}
137		{* /pages------------------------------------ *}
138
139		{include file='find.tpl'}
140
141		<form method="post" action="tiki-admin_newsletter_subscriptions.php">
142			{ticket}
143			<input type="hidden" name="nlId" value="{$nlId|escape}">
144		<div class="table-responsive">
145			<table class="table table-striped table-hover">
146				<tr>
147					<th>
148						{select_all checkbox_names='checked[]'}
149					</th>
150					<th>
151						<a href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={if $sort_mode eq 'email_desc'}email_asc{else}email_desc{/if}">{tr}Email{/tr} - {tr}User{/tr}</a>
152					</th>
153					<th>
154						<a href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={if $sort_mode eq 'valid_desc'}valid_asc{else}valid_desc{/if}">{tr}Valid{/tr}</a>
155					</th>
156					<th>
157						<a href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={if $sort_mode eq 'subscribed_desc'}subscribed_asc{else}subscribed_desc{/if}">{tr}Subscribed{/tr}</a>
158					</th>
159					<th></th>
160				</tr>
161
162				{section name=user loop=$channels}
163					<tr>
164						<td class="checkbox-cell">
165							<div class="form-check">
166								<input type="checkbox" name="checked[]" value="{$channels[user].code}" {if $smarty.request.checked and in_array($channels[user].code, $smarty.request.checked)}checked="checked"{/if}>
167							</div>
168						</td>
169						<td class="username">
170							{if $channels[user].isUser == "y"}
171								{$channels[user].email|userlink}
172							{else}
173								{$channels[user].email|escape}
174							{/if}
175						</td>
176						<td class="text">
177							{if $channels[user].valid == "n"}
178								<a
179									class="link"
180									href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={$sort_mode|urlencode}&amp;valid={$channels[user].nlId|urlencode}&amp;{if $channels[user].isUser eq "y"}user{else}email{/if}={$channels[user].email|escape:"url"}"
181									title="{tr}Valid{/tr}"
182									onclick="confirmSimple(event, '{tr}Mark subscription as valid?{/tr}', '{ticket mode=get}')"
183								>
184									{tr}No{/tr}
185								</a>
186							{elseif $channels[user].valid == "x"}
187								{tr}Unsubscribed{/tr}
188							{else}
189								{tr}Yes{/tr}
190							{/if}
191						</td>
192						<td class="date">{$channels[user].subscribed|tiki_short_datetime}</td>
193						<td class="action">
194							<a
195								class="tips text-danger"
196								title=":{tr}Remove{/tr}"
197								href="tiki-admin_newsletter_subscriptions.php?nlId={$nlId|urlencode}&amp;offset={$offset|urlencode}&amp;sort_mode={$sort_mode|urlencode}&amp;remove={$channels[user].nlId|urlencode}&amp;{if $channels[user].isUser eq "y"}subuser{else}email{/if}={$channels[user].email|escape:"url"}"
198								onclick="confirmSimple(event, '{tr}Remove subscription?{/tr}', '{ticket mode=get}')"
199							>
200								{icon name='remove'}
201							</a>
202						</td>
203					</tr>
204				{sectionelse}
205					{norecords _colspan=5}
206				{/section}
207			</table>
208		</div>
209
210		{if $channels}
211			<div class="input-group col-sm-8">
212				<select class="form-control" name="action">
213					<option value="no_action" selected="selected">
214						{tr}Select action to perform with checked{/tr}...
215					</option>
216					<option
217						value="delsel_x"
218						class="confirm-simple"
219						data-confirm-text="{tr}Remove selected subscriptions?{/tr}"
220					>
221						{tr}Remove subscription{/tr}
222					</option>
223				</select>
224				<span class="input-group-append">
225					<button
226						type="submit"
227						class="btn btn-secondary"
228						onclick="confirmSimple(event)"
229					>
230						{tr}OK{/tr}
231					</button>
232				</span>
233			</div>
234		{/if}
235
236		</form>
237
238		{pagination_links cant=$cant_pages step=$prefs.maxRecords offset=$offset}{/pagination_links}
239	{/tab}
240
241	{tab name="{tr}Add subscribers{/tr}"}
242
243		<h2>{tr}Add subscribers{/tr}</h2>
244		<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
245			{ticket}
246			<input type="hidden" name="nlId" value="{$nlId|escape}">
247			<div class="form-group row">
248				<label class="col-sm-3 col-form-label">{tr}Email{/tr}</label>
249				<div class="col-sm-9">
250					<textarea cols="70" rows="6" wrap="soft" name="email" class="form-control"></textarea>
251					<div class="small-hint">
252						{tr}You can add several email addresses by separating them with commas.{/tr}
253					</div>
254				</div>
255			</div>
256			<div class="form-group row">
257				<label class="col-sm-3 col-form-label">{tr}User{/tr}</label>
258				<div class="col-sm-9">
259					<select name="subuser" class="form-control">
260						<option value="">---</option>
261						{foreach key=id item=one from=$users}
262							<option value="{$one|escape}">{$one|escape}</option>
263						{/foreach}
264					</select>
265				</div>
266			</div>
267			<div class="form-group row">
268				<label class="col-sm-3 form-check-label">{tr}Add email{/tr}</label>
269				<div class="col-sm-3">
270					<div class="form-check">
271						<input type="radio" name="addemail" value="y" class="form-check-input">
272					</div>
273				</div>
274				<label class="col-sm-3 form-check-label">{tr}Add user{/tr}</label>
275				<div class="col-sm-3">
276					<div class="form-check">
277						<input type="radio" name="addemail" value="n" checked="checked" class="form-check-input">
278					</div>
279				</div>
280			</div>
281			<div class="form-group row">
282				<label class="col-sm-3 form-check-label">{tr}All users{/tr}</label>
283				<div class="col-sm-9">
284					<div class="form-check">
285						<input type="checkbox" name="addall" class="form-check-input">
286					</div>
287				</div>
288			</div>
289			<div class="form-group row">
290				<label class="col-sm-3 col-form-label">{tr}Users from group{/tr}</label>
291				<div class="col-sm-9">
292					<select name="group" class="form-control">
293						<option value="">---</option>
294						{section name=x loop=$groups}
295							<option value="{$groups[x]|escape}">{$groups[x]|escape}</option>
296						{/section}
297					</select>
298					<div class="small-hint">
299						{tr}Group subscription also subscribes included groups{/tr}
300					</div>
301				</div>
302			</div>
303			{if $nl_info.validateAddr eq "y"}
304			<div class="form-group row">
305				<label class="col-sm-3 form-check-label">{tr}Don't send confirmation email{/tr}</label>
306				<div class="col-sm-9">
307					<div class="form-check">
308						<input type="checkbox" name="confirmEmail" checked="checked" class="form-check-input">
309						<div class="small-hint">
310							{tr}The user email will be refreshed at each newsletter sending{/tr}
311						</div>
312					</div>
313				</div>
314			</div>
315			{/if}
316			<div class="form-group row">
317				<label class="col-sm-3 col-form-label"></label>
318				<div class="col-sm-9">
319					<input type="submit" class="btn btn-primary" name="add" value="{tr}Add{/tr}">
320				</div>
321			</div>
322		</form>
323
324		{if $tiki_p_batch_subscribe_email eq "y" && $tiki_p_subscribe_email eq "y"}
325			<h2>{tr}Import emails from file{/tr}</h2>
326			<form action="tiki-admin_newsletter_subscriptions.php" method="post" enctype="multipart/form-data" class="mb-4">
327				{ticket}
328				<input type="hidden" name="nlId" value="{$nlId|escape}">
329				<div class="form-group row">
330					<label class="col-sm-3 col-form-label">{tr}File:{/tr}</label>
331					<div class="col-sm-9">
332						<input type="file" name="batch_subscription" class="form-control">
333						<div class="small-hint">
334							{tr}.txt file, one email per line{/tr}
335						</div>
336					</div>
337				</div>
338				{if $nl_info.validateAddr eq "y"}
339				<div class="form-group row">
340					<label class="col-sm-3 form-check-label">{tr}Don't send confirmation emails{/tr}</label>
341					<div class="col-sm-9">
342						<div class="form-check">
343							<input type="checkbox" name="confirmEmail" checked="checked" class="form-check-input">
344						</div>
345					</div>
346				</div>
347				{/if}
348				<div class="form-group row">
349					<label class="col-sm-3 col-form-label"></label>
350					<div class="col-sm-9">
351						<input type="submit" class="btn btn-primary" name="addbatch" value="{tr}Add{/tr}">
352					</div>
353				</div>
354			</form>
355			<h2>{tr}Import emails from wiki page{/tr}</h2>
356			<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
357				{ticket}
358				<input type="hidden" name="nlId" value="{$nlId|escape}">
359				<div class="form-group row">
360					<label class="col-sm-3 col-form-label">Wiki page</label>
361					<div class="col-sm-9">
362						<input type="text" name="wikiPageName" value="" size="60" class="form-control">
363						<div class="small-hint">
364							{tr}Wiki page, one email per line{/tr}
365						</div>
366					</div>
367				</div>
368				{if $nl_info.validateAddr eq "y"}
369				<div class="form-group row">
370					<label class="col-sm-3 form-check-label">{tr}Don't send confirmation emails{/tr}</label>
371					<div class="col-sm-9">
372						<div class="form-check">
373							<input type="checkbox" name="confirmEmail" checked="checked" class="form-check-input">
374						</div>
375					</div>
376				</div>
377				{/if}
378				<div class="form-group row">
379					<label class="col-sm-3 col-form-label"></label>
380					<div class="col-sm-9">
381						<input type="submit" class="btn btn-primary" name="importPage" value="{tr}Add{/tr}">
382					</div>
383				</div>
384			</form>
385			<h2>{tr}Import emails from tracker{/tr}</h2>
386			<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
387				{ticket}
388				<input type="hidden" name="nlId" value="{$nlId|escape}">
389				<div class="form-group row">
390					<label class="col-sm-3 col-form-label">{tr}Tracker:{/tr}</label>
391					<div class="col-sm-9">
392						<select name="tracker" class="form-control">
393							<option value="">---</option>
394							{section name=tracker loop=$listTrackers}
395								<option value="{$listTrackers[tracker].trackerId|escape}">{$listTrackers[tracker].name|escape}</option>
396							{/section}
397						</select>
398					</div>
399				</div>
400				<div class="form-group row">
401					<label class="col-sm-3 form-check-label">{tr}Don't send confirmation emails{/tr}</label>
402					<div class="col-sm-9">
403						<div class="form-check">
404							<input type="checkbox" name="confirmEmail" checked="checked" class="form-check-input">
405						</div>
406					</div>
407				</div>
408				<div class="form-group row">
409					<label class="col-sm-3 col-form-label"></label>
410					<div class="col-sm-9">
411						<input type="submit" class="btn btn-primary" name="addTracker" value="{tr}Add{/tr}">
412					</div>
413				</div>
414			</form>
415		{/if}
416
417		<h2>{tr}Subscribe group{/tr}</h2>
418		<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
419			{ticket}
420			<input type="hidden" name="nlId" value="{$nlId|escape}">
421			<div class="form-group row">
422				<label class="col-sm-3 col-form-label">{tr}Group{/tr}</label>
423				<div class="col-sm-9">
424					<select name="group" class="form-control">
425						<option value="">---</option>
426						{section name=x loop=$groups}
427							<option value="{$groups[x]|escape}">{$groups[x]|escape}</option>
428						{/section}
429					</select>
430				</div>
431			</div>
432			<div class="form-group row">
433				<label class="col-sm-3 form-check-label">{tr}Including group inheritance{/tr}</label>
434				<div class="col-sm-9">
435					<div class="form-check">
436						<input type="checkbox" name="include_groups" value="y" class="form-check-input">
437						<div class="small-hint">
438							{tr}Including group, group users and emails will be refreshed at each newsletter sending{/tr}
439						</div>
440					</div>
441				</div>
442			</div>
443			<div class="form-group row">
444				<label class="col-sm-3 col-form-label"></label>
445				<div class="col-sm-9">
446					<input type="submit" class="btn btn-primary" name="addgroup" value="{tr}Add{/tr}">
447				</div>
448			</div>
449		</form>
450
451		<h2>{tr}Use subscribers of another newsletter{/tr}</h2>
452		<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
453			{ticket}
454			<input type="hidden" name="nlId" value="{$nlId|escape}">
455			<div class="form-group row">
456				<label class="col-sm-3 col-form-label">{tr}Newsletter:{/tr}</label>
457				<div class="col-sm-9">
458					<select name="included" class="form-control">
459						<option value="">---</option>
460						{section name=x loop=$newsletters}
461							{if $nlId ne $newsletters[x].nlId}
462								<option value="{$newsletters[x].nlId|escape}">{$newsletters[x].name|escape}</option>
463							{/if}
464						{/section}
465					</select>
466				</div>
467			</div>
468			<div class="form-group row">
469				<label class="col-sm-3 col-form-label"></label>
470				<div class="col-sm-9">
471					<input type="submit" class="btn btn-primary" name="addincluded" value="{tr}Add{/tr}">
472				</div>
473			</div>
474		</form>
475
476		<h2>{tr}Use emails from wiki page{/tr}</h2>
477		<form action="tiki-admin_newsletter_subscriptions.php" method="post" class="mb-4">
478			{ticket}
479			<input type="hidden" name="nlId" value="{$nlId|escape}">
480			<div class="form-group row">
481				<label class="col-sm-3 col-form-label">{tr}Wiki page{/tr}</label>
482				<div class="col-sm-9">
483					<input type="text" name="wikiPageName" value="" size="60" class="form-control">
484					<div class="small-hint">
485						{tr}Emails on a wiki page which will be added at each newsletter sending, one email per line{/tr}
486					</div>
487					{autocomplete element='input[name=wikiPageName]' type='pagename'}
488				</div>
489			</div>
490			<div class="form-group row">
491				<label class="col-sm-3 form-check-label">{tr}Don't send confirmation emails{/tr}</label>
492				<div class="col-sm-9">
493					<div class="form-check">
494						<input type="checkbox" name="noConfirmEmail" checked="checked" class="form-check-input">
495					</div>
496				</div>
497			</div>
498			<div class="form-group row">
499				<label class="col-sm-3 form-check-label">{tr}Don't subscribe emails{/tr}</label>
500				<div class="col-sm-9">
501					<div class="form-check">
502						<input type="checkbox" name="noSubscribeEmail" checked="checked" class="form-check-input">
503					</div>
504				</div>
505			</div>
506			<div class="form-group row">
507				<label class="col-sm-3 col-form-label"></label>
508				<div class="col-sm-9">
509					<input type="submit" class="btn btn-primary" name="addPage" value="{tr}Add{/tr}">
510				</div>
511			</div>
512		</form>
513	{/tab}
514
515
516	{tab name="{tr}Export Subscriber Emails{/tr}"}
517		<h2>{tr}Export Subscriber Emails{/tr}</h2>
518		<br>
519		<form action="tiki-admin_newsletter_subscriptions.php" method="post">
520			<input type="hidden" name="nlId" value="{$nlId|escape}">
521			<div class="form-group row mx-0">
522				<div class="col-sm-12 mb-3">
523					<input type="submit" class="btn btn-primary" name="export" value="{tr}Export{/tr}">
524				</div>
525			</div>
526		</form>
527	{/tab}
528
529{/tabset}
530