You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
325 lines
11 KiB
325 lines
11 KiB
<?php
|
|
|
|
/*
|
|
Slovenski narečni atlas / Slovenian dialectal atlas
|
|
Copyright (C) 2017 Gregor Šajn
|
|
|
|
This program is free software: you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
?>
|
|
|
|
<div class="container container-panel">
|
|
<?
|
|
$this->load->view('admin/index_view.php');
|
|
?>
|
|
<div class="row" style="overflow: none">
|
|
<?
|
|
$this->load->view('admin/admin_nav.php');
|
|
?>
|
|
|
|
<!-- tukaj se naloži poljuben pogled -->
|
|
<div class="col-sm-9">
|
|
<ol class="breadcrumb">
|
|
<li><a href="<?=$this->url?>transcriptions">Fonetični zapisi</a></li>
|
|
<li><a href="<?=$this->url?>edit_transcription/<?=$transcription['id']?>"><span class="ZRCola"><?=$transcription['phonetic_writing']?></span></a></li>
|
|
</ol>
|
|
<div class="row">
|
|
<div class="col-sm-9"><h4 class="text-muted ZRCola"><?=$transcription['phonetic_writing']?></h4></div>
|
|
<div class="col-sm-3 text-right">
|
|
<a class="btn btn-danger confirm" href="<?=$this->url?>transcription_delete/<?=$transcription['id']?>" title="Odstrani transkripcijo">Odstrani</a></div>
|
|
</div>
|
|
<br>
|
|
<!-- alerts -->
|
|
<?
|
|
if(isset($errfields) and $errfields)
|
|
{
|
|
$alert_text='<ul>';
|
|
foreach($errfields as $errfield)
|
|
{
|
|
$alert_text.='<li>'.$errfield.'</li>';
|
|
}
|
|
$alert_text.='</ul>'
|
|
?>
|
|
<div class="alert alert-danger fade in" id="alert_err" role="alert">
|
|
<button type="button" class="close">
|
|
<span aria-hidden="true">×</span>
|
|
</button>
|
|
<span class="glyphicon glyphicon-exclamation-sign text-danger"></span> <?=$alert_text?>
|
|
</div>
|
|
<?
|
|
}
|
|
elseif(isset($status) and $status=='ok')
|
|
{
|
|
?>
|
|
<div class="alert alert-success fade in" id="alert_ok" role="alert">
|
|
<button type="button" class="close">
|
|
<span aria-hidden="true">×</span>
|
|
</button>
|
|
<span class="text-success glyphicon glyphicon-ok"></span> Spremembe uspešno shranjene!
|
|
</div>
|
|
<?
|
|
}
|
|
?>
|
|
|
|
<form class="form-horizontal form-border" action="<?=$this->url?>post_edit_transcription" method="POST" enctype="multipart/form-data" id="edit_subject">
|
|
<input type="hidden" id="id" name="id" value="<?=$transcription['id']?>">
|
|
<div class="form-group">
|
|
<label for="phonetic_writing" class="col-sm-2 control-label">Fonetični zapis<span class="text-danger">*</span></label>
|
|
<div class="col-sm-10">
|
|
<input type="text" class="form-control input-md ZRCola" style="width:300px;" value="<?=$transcription['phonetic_writing']?>" id="phonetic_writing" name="phonetic_writing">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group">
|
|
<label for="subjects" class="col-sm-2 control-label">Tema<span class="text-danger">*</span></label>
|
|
<div class="col-sm-10">
|
|
<select class="form-control" style="width:300px;" id="subjects" name="subjects" onchange="ajax_update_words();">
|
|
<?
|
|
foreach($subjects as $id=>$subject)
|
|
{
|
|
?><option value="<?=$id?>" <?=$id==$transcription['id_subject']?'selected="selected"':''?> ><?=$subject?></option><?
|
|
}
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="words" class="col-sm-2 control-label">Beseda<span class="text-danger">*</span></label>
|
|
<div class="col-sm-10">
|
|
<select class="form-control" style="width:300px;" name="words" id="words" onchange="ajax_update_lexems();">
|
|
<?
|
|
foreach($words as $id=>$word)
|
|
{
|
|
?><option value="<?=$id?>" <?=$id==$transcription['id_word']?'selected="selected"':''?>><?=$word?></option><?
|
|
}
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="lexems_select" class="col-sm-2 control-label">Leksem<span class="text-danger">*</span></label>
|
|
<div class="col-sm-10">
|
|
<select class="form-control" id="lexems_select" name="lexems_select" style="width:300px;" >
|
|
<?
|
|
foreach($lexems as $id=>$title)
|
|
{
|
|
?><option value="<?=$id?>" <?=$id==$transcription['id_lexem']?'selected="selected"':''?>><?=$title?></option><?
|
|
}
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="short_name" class="col-sm-2 control-label">Kraj<span class="text-danger">*</span></label>
|
|
<div class="col-sm-10">
|
|
<select class="form-control" style="width:300px;" name="locations" id="locations_select">
|
|
<?
|
|
foreach($locations as $id=>$location)
|
|
{
|
|
?><option value="<?=$id?>" <?=$id==$transcription['id_location']?'selected="selected"':''?>><?=$location?></option><?
|
|
}
|
|
?>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="title" class="col-sm-2 control-label">Zvočni posnetek</label>
|
|
<div class="col-sm-10">
|
|
<?
|
|
if($transcription['audio'])
|
|
{
|
|
?>
|
|
<div style="padding-top:2px;">
|
|
<audio controls>
|
|
<source src="<?php echo base_url().$transcription['audio']?>" type="audio/mpeg">
|
|
</audio>
|
|
<div>
|
|
<a href="javascript:;" onclick="if(confirm('Izbriši zvočni posnetek?')){ajax_audio_delete(<?=$transcription['id']?>,'<?=$transcription['audio']?>');}" class="text-danger"><span>Odstrani zvočni posnetek</span></a>
|
|
</div>
|
|
</div>
|
|
<?
|
|
}
|
|
else
|
|
{
|
|
?>
|
|
<input type="file" class="upload-btn" id="audio_file" name="audio_file">
|
|
<?
|
|
}
|
|
?>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="trans_text" class="col-sm-2 control-label">Beseda - besedilo</label>
|
|
<div class="col-sm-10">
|
|
<textarea type="text" class="form-control ZRCola textarea-size" style="width:300px;" id="trans_text" name="trans_text"><?=$transcription['trans_text']?></textarea>
|
|
</div>
|
|
</div>
|
|
<br>
|
|
<div class="form-group">
|
|
<div class="col-sm-offset-2 col-sm-10">
|
|
<button type="submit" class="btn btn-success button-medium">Shrani</button>
|
|
<button type="submit" class="btn btn-default button-medium" name=save_close>Shrani in zapri</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<br>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<script type="text/javascript">
|
|
$('.close').click(function() {
|
|
$('#alert_err').fadeOut(500);
|
|
$('#alert_ok').fadeOut(500);
|
|
});
|
|
|
|
$('.confirm').click(function() {
|
|
return window.confirm("Izbriši transkripcijo?");
|
|
});
|
|
|
|
|
|
function ajax_update_words()
|
|
{
|
|
var id_subject=$("#subjects option:selected").val();
|
|
|
|
$.ajax({
|
|
type: "POST",
|
|
url: "<?=$this->url?>ajax_update_words",
|
|
cache: false,
|
|
data: {
|
|
id_subject: id_subject
|
|
},
|
|
dataType: "json",
|
|
success: function(data){
|
|
if(data.status=='ok')
|
|
{
|
|
var options;
|
|
$('#words').empty();
|
|
|
|
$.each(data.words, function(id, title){
|
|
options += '<option value=' + id + '>' + title + '</option>';
|
|
});
|
|
|
|
$('#words').append(options);
|
|
|
|
var locations;
|
|
$('#locations_select').empty();
|
|
|
|
//sort by name
|
|
var sortable = [];
|
|
for (var location in data.locations) {
|
|
sortable.push([location, data.locations[location]]);
|
|
}
|
|
var first=sortable.shift();
|
|
sortable.sort(function(a, b) {
|
|
return a[1].localeCompare(b[1]);
|
|
});
|
|
sortable.unshift(first);
|
|
|
|
$.each(sortable, function(id, title){
|
|
locations += '<option value=' + title[0] + '>' + title[1] + '</option>';
|
|
});
|
|
|
|
$('#locations_select').append(locations);
|
|
|
|
}
|
|
},
|
|
error: function(){
|
|
alert('Prišlo je do napake pri nalaganju podatkov. Prosimo poskusite ponovno!');
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
function ajax_update_lexems()
|
|
{
|
|
var id_word=$("#words option:selected").val();
|
|
var id_subject=$("#subjects option:selected").val();
|
|
|
|
$.ajax({
|
|
type: "POST",
|
|
url: "<?=$this->url?>ajax_update_lexems",
|
|
cache: false,
|
|
data: {
|
|
id_word: id_word,
|
|
id_subject:id_subject,
|
|
|
|
},
|
|
dataType: "json",
|
|
success: function(data){
|
|
if(data.status=='ok')
|
|
{
|
|
var options;
|
|
$('#lexems_select').empty();
|
|
|
|
//sort by name
|
|
var sortable = [];
|
|
for (var lexem in data.lexems) {
|
|
sortable.push([lexem, data.lexems[lexem]]);
|
|
}
|
|
var first=sortable.shift();
|
|
sortable.sort(function(a, b) {
|
|
return a[1].localeCompare(b[1]);
|
|
});
|
|
sortable.unshift(first);
|
|
|
|
$.each(sortable, function(id, title){
|
|
options += '<option value=' + title[0] + '>' + title[1] + '</option>';
|
|
});
|
|
|
|
$('#lexems_select').append(options);
|
|
|
|
|
|
}
|
|
},
|
|
error: function(){
|
|
alert('Prišlo je do napake pri nalaganju podatkov. Prosimo poskusite ponovno!');
|
|
}
|
|
});
|
|
}
|
|
|
|
function ajax_audio_delete(id_transcription,audio)
|
|
{
|
|
$.ajax({
|
|
type: "POST",
|
|
url: "<?=$this->url?>ajax_audio_delete",
|
|
cache: false,
|
|
data:{
|
|
id_transcription:id_transcription,
|
|
audio,audio
|
|
},
|
|
dataType: "json",
|
|
success: function(data){
|
|
if(data.status=='ok')
|
|
{
|
|
location.reload();
|
|
}
|
|
else
|
|
{
|
|
var errors='';
|
|
$.each(data.errfields, function(i, error){
|
|
errors+=error+'\n';
|
|
});
|
|
alert(errors);
|
|
}
|
|
},
|
|
error: function(){
|
|
alert('Prišlo je do napake pri nalaganju podatkov. Prosimo poskusite ponovno!');
|
|
}
|
|
});
|
|
}
|
|
|
|
</script>
|