1{* $Id$ *}
2{title help="References" admpage="wiki" url="tiki-references.php"}{tr}References{/tr}{/title}
3<div class="t_navbar mb-4">
4	{if isset($referenceinfo.ref_id)}
5		{button href="?add=1" class="btn btn-primary" _text="{tr}Add a new library reference{/tr}"}
6	{/if}
7</div>
8{tabset name='tabs_admin_references'}
9
10	{* ---------------------- tab with list -------------------- *}
11{if $references|count > 0}
12	{tab name="{tr}References{/tr}"}
13		<h2>{tr}References{/tr}</h2>
14		<form method="get" class="form-horizontal small" action="tiki-references.php">
15			<div class="form-group row">
16				<label class="col-form-label col-sm-4" for="find">{tr}Find{/tr}</label>
17				<div class="col-sm-8">
18					<input type="text" class="form-control form-control-sm" id="find" name="find" value="{$find|escape}">
19				</div>
20			</div>
21			<div class="form-group row">
22				<label class="col-form-label col-sm-4" for="numrows">{tr}Number of displayed rows{/tr}</label>
23				<div class="col-sm-8">
24					<input class="form-control form-control-sm" type="number" id="maxRecords" name="maxRecords" value="{$maxRecords|escape}">
25				</div>
26			</div>
27			<div class="form-group row">
28				<div class="col-sm-8 offset-sm-4">
29					<input type="submit" class="btn btn-primary btn-sm" value="{tr}Find{/tr}" name="search">
30				</div>
31			</div>
32		</form>
33		<div id="admin_references-div">
34			<div class="{if $js}table-responsive {/if}ts-wrapperdiv">
35				<table id="admin_references" class="table normal table-striped table-hover" data-count="{$references|count}">
36					<thead>
37					<tr>
38						<th>
39							{tr}Biblio Code{/tr}
40						</th>
41						<th>
42							{tr}Author{/tr}
43						</th>
44						<th>
45							{tr}Year{/tr}
46						</th>
47						<th>
48							{tr}Title{/tr}
49						</th>
50						<th id="actions"></th>
51					</tr>
52					</thead>
53					<tbody>
54					{section name=reference loop=$references}
55						{$reference_code = $references[reference].biblio_code|escape}
56						<tr>
57							<td class="reference_code">
58								<a class="link tips" href="tiki-references.php?referenceId={$references[reference].ref_id}&details=1{if $prefs.feature_tabs ne 'y'}#tab2{/if}" title="{$reference_code}:{tr}Edit reference settings{/tr}">
59									{$reference_code}
60								</a>
61							</td>
62							<td class="reference_author">
63								{$references[reference].author|truncate:60|escape}
64							</td>
65							<td class="reference_year">
66								{$references[reference].year|escape}
67							</td>
68							<td class="reference_title">
69								{$references[reference].title|truncate:60|escape}
70							</td>
71							<td class="action">
72								{actions}
73									{strip}
74										<action>
75											<a href="{query _noauto='y' _type='relative' referenceId=$references[reference].ref_id details='1'}">
76												{icon name="edit" _menu_text='y' _menu_icon='y' alt="{tr}Edit{/tr}"}
77											</a>
78										</action>
79										<action>
80											<a href="{query _noauto='y' _type='relative' referenceId=$references[reference].ref_id usage='1'}">
81												{icon name="link" _menu_text='y' _menu_icon='y' alt="{tr}Reference usage{/tr}"}
82											</a>
83										</action>
84										<action>
85											<a href="{query _noauto='y' _type='relative' referenceId=$references[reference].ref_id action=delete}" onclick="confirmSimple(event, '{tr}Delete reference?{/tr}', '{ticket mode=get}')">
86												{icon name="remove" _menu_text='y' _menu_icon='y' alt="{tr}Delete{/tr}"}
87											</a>
88										</action>
89									{/strip}
90								{/actions}
91							</td>
92						</tr>
93					{/section}
94					</tbody>
95				</table>
96			</div>
97		</div>
98	{pagination_links cant=$cant step=$maxRecords offset=$offset}
99		tiki-references.php?find={$find}&maxRecords={$maxRecords}
100	{/pagination_links}
101	{/tab}
102{/if}
103	{* ---------------------- tab with form -------------------- *}
104	<a id="tab2"></a>
105{if isset($referenceinfo.ref_id) && $referenceinfo.ref_id}
106	{$add_edit_reference_tablabel = "{tr}Edit reference{/tr}"}
107	{$schedulename = "<i>{$referenceinfo.biblio_code|escape}</i>"}
108{else}
109	{$add_edit_reference_tablabel = "{tr}Add a new library reference{/tr}"}
110	{$schedulename = ""}
111{/if}
112
113{tab name="{$add_edit_reference_tablabel} {$schedulename}"}
114	<br>
115	<br>
116{if isset($referenceinfo.id) && $referenceinfo.ref_id}
117	<div class="row">
118		<div class="offset-md-2 col-md-6">
119			{remarksbox type="note" title="{tr}Information{/tr}"}
120			{tr}If you change the value of Biblio Code, you might loose the link between references{/tr}
121			{/remarksbox}
122		</div>
123	</div>
124{/if}
125	<form class="form form-horizontal" action="tiki-references.php" method="post" enctype="multipart/form-data" id="references-edit-form" name="RegForm" autocomplete="off">
126		{ticket}
127		{if empty($referenceinfo.biblio_code)}
128			<div class="form-group row">
129				<label class="col-sm-2 col-form-label" for="add_ref_auto_biblio_code">{tr}Auto generate Biblio Code{/tr}:</label>
130				<div class="col-sm-10">
131					<input type="checkbox" class="form-check wikiedit" name="ref_auto_biblio_code" id="add_ref_auto_biblio_code" checked="checked" />
132				</div>
133			</div>
134		{/if}
135		<div class="form-group row" id="ref_biblio_code_block" {if empty($referenceinfo.biblio_code)}style="display: none;"{/if}>
136			<label class="col-sm-3 col-md-2 col-form-label" for="ref_biblio_code">{tr}Biblio Code{/tr}</label>
137			<div class="col-sm-7 col-md-6">
138				<input type="text" id='ref_biblio_code' class="form-control" name='ref_biblio_code' value="{$referenceinfo.biblio_code|escape}">
139			</div>
140		</div>
141		<div class="form-group row">
142			<label class="col-sm-3 col-md-2 col-form-label" for="ref_author">{tr}Author{/tr}</label>
143			<div class="col-sm-7 col-md-6">
144				<input type="text" id='ref_author' class="form-control" name='ref_author' value="{$referenceinfo.author|escape}">
145			</div>
146		</div>
147		<div class="form-group row">
148			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Title{/tr}</label>
149			<div class="col-sm-7 col-md-6">
150				<input type="text" id='ref_title' class="form-control" name='ref_title' value="{$referenceinfo.title|escape}">
151			</div>
152		</div>
153		<div class="form-group row">
154			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Year{/tr}</label>
155			<div class="col-sm-7 col-md-6">
156				<input type="text" id='ref_year' class="form-control" name='ref_year' value="{$referenceinfo.year|escape}">
157			</div>
158		</div>
159		<div class="form-group row">
160			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Part{/tr}</label>
161			<div class="col-sm-7 col-md-6">
162				<input type="text" id='ref_part' class="form-control" name='ref_part' value="{$referenceinfo.part|escape}">
163			</div>
164		</div>
165		<div class="form-group row">
166			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}URI{/tr}</label>
167			<div class="col-sm-7 col-md-6">
168				<input type="text" id='ref_uri' class="form-control" name='ref_uri' value="{$referenceinfo.uri|escape}">
169			</div>
170		</div>
171		<div class="form-group row">
172			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Code{/tr}</label>
173			<div class="col-sm-7 col-md-6">
174				<input type="text" id='ref_code' class="form-control" name='ref_code' value="{$referenceinfo.code|escape}">
175			</div>
176		</div>
177		<div class="form-group row">
178			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Publisher{/tr}</label>
179			<div class="col-sm-7 col-md-6">
180				<input type="text" id='ref_publisher' class="form-control" name='ref_publisher' value="{$referenceinfo.publisher|escape}">
181			</div>
182		</div>
183		<div class="form-group row">
184			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Location{/tr}</label>
185			<div class="col-sm-7 col-md-6">
186				<input type="text" id='ref_location' class="form-control" name='ref_location' value="{$referenceinfo.location|escape}">
187			</div>
188		</div>
189		<div class="form-group row">
190			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Style{/tr}</label>
191			<div class="col-sm-7 col-md-6">
192				<input type="text" id='ref_style' class="form-control" name='ref_style' value="{$referenceinfo.style|escape}">
193			</div>
194		</div>
195		<div class="form-group row">
196			<label class="col-sm-3 col-md-2 col-form-label" for="ref_title">{tr}Template{/tr}</label>
197			<div class="col-sm-7 col-md-6">
198				<input type="text" id='ref_template' class="form-control" name='ref_template' value="{$referenceinfo.template|escape}">
199			</div>
200		</div>
201		<div class="form-group row">
202			<div class="col-sm-7 col-md-6 offset-sm-3 offset-md-2">
203				{if isset($referenceinfo.ref_id) && $referenceinfo.ref_id}
204					<input type="hidden" name="referenceId" value="{$referenceinfo.ref_id|escape}">
205					<input type="hidden" name="editreference" value="1">
206					<input type="submit" class="btn btn-secondary" name="save" value="{tr}Save{/tr}">
207				{else}
208					<input type="submit" class="btn btn-secondary" name="addreference" value="{tr}Add{/tr}">
209				{/if}
210			</div>
211		</div>
212	</form>
213{/tab}
214	<a id="tab3"></a>
215{if isset($referenceinfo.ref_id) && $referenceinfo.ref_id}
216	{tab name="{tr}Reference usage{/tr}"}
217		<h2>{tr _0=$referenceinfo.biblio_code|escape}Pages using reference %0{/tr}</h2>
218		<table class="table normal table-striped table-hover">
219			<thead>
220			<tr>
221				<th>Page Name</th>
222			</tr>
223			</thead>
224			<tbody>
225			{section name=page loop=$pagereferences}
226				<tr>
227					<td>
228						<a href="{$pagereferences[page].pageName|sefurl}" class="link tips" title="{$pagereferences[page].pageName|escape}:{tr}View page{/tr}">
229							{$pagereferences[page].pageName|truncate:$prefs.wiki_list_name_len:"...":true|escape}
230						</a>
231					</td>
232				</tr>
233			{/section}
234			</tbody>
235		</table>
236	{/tab}
237{/if}
238{/tabset}
239{if empty($referenceinfo.biblio_code)}
240	{jq}
241		$('#add_ref_auto_biblio_code').click(function(){
242		if ($('#add_ref_auto_biblio_code').is(':checked')) {
243		$('#ref_biblio_code_block').hide();
244		$('#ref_biblio_code').val('');
245		} else {
246		$('#ref_biblio_code_block').show();
247		}
248		});
249	{/jq}
250{/if}
251{jq}
252	$('#references-edit-form').submit(function(event){
253	var ck_code = /^[A-Za-z0-9]+$/;
254	{* var ck_uri = /^((https?|ftp|smtp):\/\/)?(www.)?[a-z0-9]+(\.[a-z]{2, }){1, 3}(#?\/?[a-zA-Z0-9#]+)*\/?(\?[a-zA-Z0-9-_]+=[a-zA-Z0-9-%]+&?)?$/; *}
255	var ck_year = /^[1-2][0-9][0-9][0-9]$/;
256	if (!$('#add_ref_auto_biblio_code').is(':checked') && $('#ref_biblio_code').val() == '') {
257	alert('Please fill the biblio code field or enable biblio code auto generator');
258	return false;
259	}
260	if(!$('#add_ref_auto_biblio_code').is(':checked') && !ck_code.test($('#ref_biblio_code').val())){
261	alert('Biblio code is not valid');
262	return false;
263	}
264	{* if(!$('#add_ref_uri').val() == '' &&  !ck_uri.test($('#add_ref_uri').val())){
265		alert('uri no valid');
266		return false;
267	} *}
268	if(!$('#ref_author').val().trim()){
269	alert('Author is not valid');
270	return false;
271	}
272	if(!$('#ref_year').val() == '' && !ck_year.test($('#ref_year').val())){
273	alert('Year is not valid');
274	return false;
275	}
276	return true;
277	})
278{/jq}
279