seeing how to modify a fc event's colour...
This commit is contained in:
parent
2ff9765fdf
commit
e9e7ad187b
|
@ -1,252 +0,0 @@
|
|||
function removeFadeInput(){
|
||||
var span = $(this).parent();
|
||||
var pos = span.parent().parent().attr('id').split("_").pop();
|
||||
|
||||
var fadeIn, fadeOut, url;
|
||||
|
||||
var regExpr = new RegExp("^\\d{2}[:]\\d{2}[:]\\d{2}([.]\\d{1,6})?$");
|
||||
var oldValue = $("#pl_tmp_time").val();
|
||||
var newValue = $(this).val().trim();
|
||||
|
||||
if(newValue === "")
|
||||
newValue = '00:00:00';
|
||||
|
||||
if(span.parent().hasClass('pl_fade_in')){
|
||||
fadeIn = newValue;
|
||||
}
|
||||
else if(span.parent().hasClass('pl_fade_out')){
|
||||
fadeOut = newValue;
|
||||
}
|
||||
|
||||
//test that input is a time.
|
||||
if (!regExpr.test(newValue)) {
|
||||
span.empty();
|
||||
span.append(oldValue);
|
||||
span.click(addTextInput);
|
||||
alert("please put in a time '00:00:00 (.0000)'");
|
||||
return;
|
||||
}
|
||||
|
||||
url = '/Playlist/set-fade';
|
||||
url = url + '/format/json';
|
||||
url = url + '/pos/' + pos;
|
||||
|
||||
if (fadeIn !== undefined)
|
||||
url = url + '/fadeIn/' + fadeIn;
|
||||
if (fadeOut !== undefined)
|
||||
url = url + '/fadeOut/' + fadeOut;
|
||||
|
||||
$.post(
|
||||
|
||||
url,
|
||||
|
||||
function(json){
|
||||
var li, span, data;
|
||||
data = jQuery.parseJSON(json),
|
||||
|
||||
li = $("#pl_"+pos);
|
||||
if(data.error){
|
||||
var hidden = $("#pl_tmp_time");
|
||||
var time = hidden.val();
|
||||
|
||||
span = hidden.parent();
|
||||
span.empty();
|
||||
span.append(time);
|
||||
span.click(addTextInput);
|
||||
alert(data.error);
|
||||
}
|
||||
if(data.fadeIn){
|
||||
span = li.find(".pl_fade_in").find(".pl_time");
|
||||
span.empty();
|
||||
span.append(data.fadeIn);
|
||||
span.click(addTextInput);
|
||||
}
|
||||
if(data.fadeOut){
|
||||
span = li.find(".pl_fade_out").find(".pl_time");
|
||||
span.empty();
|
||||
span.append(data.fadeOut);
|
||||
span.click(addTextInput);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function removeCueInput(){
|
||||
var span = $(this).parent();
|
||||
var pos = span.parent().attr('id').split("_").pop();
|
||||
|
||||
var cueIn, cueOut, url;
|
||||
|
||||
var regExpr = new RegExp("^\\d{2}[:]\\d{2}[:]\\d{2}([.]\\d{1,6})?$");
|
||||
var oldValue = $("#pl_tmp_time").val();
|
||||
var newValue = $(this).val().trim();
|
||||
|
||||
if(span.hasClass('pl_cue_in')){
|
||||
if(newValue === "")
|
||||
newValue = '00:00:00';
|
||||
cueIn = newValue;
|
||||
}
|
||||
else if(span.hasClass('pl_cue_out')){
|
||||
cueOut = newValue;
|
||||
}
|
||||
|
||||
//test that input is a time.
|
||||
if (newValue!=="" && !regExpr.test(newValue)) {
|
||||
span.empty();
|
||||
span.append(oldValue);
|
||||
span.click(addTextInput);
|
||||
alert("please put in a time '00:00:00 (.0000)'");
|
||||
return;
|
||||
}
|
||||
|
||||
url = '/Playlist/set-cue';
|
||||
url = url + '/format/json';
|
||||
url = url + '/pos/' + pos;
|
||||
|
||||
if (cueIn !== undefined)
|
||||
url = url + '/cueIn/' + cueIn;
|
||||
if (cueOut !== undefined)
|
||||
url = url + '/cueOut/' + cueOut;
|
||||
|
||||
$.post(
|
||||
url,
|
||||
|
||||
function(json){
|
||||
var li, span, data;
|
||||
data = jQuery.parseJSON(json),
|
||||
|
||||
li = $("#pl_"+pos);
|
||||
if(data.error){
|
||||
var hidden = $("#pl_tmp_time");
|
||||
var time = hidden.val();
|
||||
|
||||
span = hidden.parent();
|
||||
span.empty();
|
||||
span.append(time);
|
||||
span.click(addTextInput);
|
||||
alert(data.error);
|
||||
return;
|
||||
}
|
||||
span = li.find(".pl_playlength");
|
||||
span.empty();
|
||||
span.append(data.cliplength);
|
||||
|
||||
span = $(".pl_duration");
|
||||
span.empty();
|
||||
span.append(data.length);
|
||||
|
||||
if(data.cueIn){
|
||||
span = li.find(".pl_cue_in");
|
||||
span.empty();
|
||||
span.append(data.cueIn);
|
||||
span.click(addTextInput);
|
||||
}
|
||||
if(data.cueOut){
|
||||
span = li.find(".pl_cue_out");
|
||||
span.empty();
|
||||
span.append(data.cueOut);
|
||||
span.click(addTextInput);
|
||||
}
|
||||
|
||||
span = li.find(".pl_fade_in").find(".pl_time");
|
||||
span.empty();
|
||||
span.append(data.fadeIn);
|
||||
|
||||
span = li.find(".pl_fade_out").find(".pl_time");
|
||||
span.empty();
|
||||
span.append(data.fadeOut);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function addTextInput(){
|
||||
var time = $(this).text().trim();
|
||||
var input = $("<input type='text' value="+time+" size='13' maxlength='15'/>");
|
||||
|
||||
//Firefox seems to have problems losing focus otherwise, Chrome is fine.
|
||||
$(":input").blur();
|
||||
$(this).empty();
|
||||
|
||||
$(this).append(input);
|
||||
input.focus();
|
||||
|
||||
if($(this).hasClass('pl_cue_in') || $(this).hasClass('pl_cue_out')) {
|
||||
input.blur(removeCueInput);
|
||||
}
|
||||
else if($(this).parent().hasClass('pl_fade_in') || $(this).parent().hasClass('pl_fade_out')){
|
||||
input.blur(removeFadeInput);
|
||||
}
|
||||
|
||||
input.keypress(function(ev){
|
||||
//don't want enter to submit.
|
||||
if (ev.keyCode === 13) {
|
||||
ev.preventDefault();
|
||||
$(this).blur();
|
||||
}
|
||||
});
|
||||
|
||||
input = $("<input type='hidden' value="+time+" size='10' id='pl_tmp_time'/>");
|
||||
$(this).append(input);
|
||||
|
||||
$(this).unbind('click');
|
||||
}
|
||||
|
||||
|
||||
function setPLContent(json) {
|
||||
|
||||
$('#pl_name').empty()
|
||||
.append(json.name);
|
||||
$('#pl_length').empty()
|
||||
.append(json.length);
|
||||
$('#pl_sortable').empty()
|
||||
.append(json.html);
|
||||
|
||||
$(".pl_time").click(addTextInput);
|
||||
}
|
||||
|
||||
function deletePLItem(){
|
||||
|
||||
var url, pos;
|
||||
|
||||
url = '/Playlist/delete-item/format/json/view/pl';
|
||||
|
||||
pos = $('form[name="PL"]').find(':checked').not('input[name="all"]').map(function() {
|
||||
return "/pos/" + $(this).attr('name');
|
||||
}).get().join("");
|
||||
|
||||
url = url + pos;
|
||||
|
||||
$.post(url, setPLContent);
|
||||
}
|
||||
|
||||
function movePLItem(event, ui) {
|
||||
var li, newPos, oldPos, url;
|
||||
|
||||
li = ui.item;
|
||||
|
||||
newPos = li.index();
|
||||
oldPos = li.attr('id').split("_").pop();
|
||||
|
||||
url = '/Playlist/move-item'
|
||||
url = url + '/format/json';
|
||||
url = url + '/view/pl';
|
||||
url = url + '/oldPos/' + oldPos;
|
||||
url = url + '/newPos/' + newPos;
|
||||
|
||||
$.post(url, setPLContent);
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
$("#pl_sortable").sortable();
|
||||
$("#pl_sortable" ).bind( "sortstop", movePLItem);
|
||||
|
||||
$(".pl_time").click(addTextInput);
|
||||
|
||||
$("#pl_remove_selected").click(deletePLItem);
|
||||
|
||||
$('input[name="all"]').click(function(){
|
||||
$('form[name="PL"]').find('input').attr("checked", $(this).attr("checked"));
|
||||
});
|
||||
|
||||
});
|
|
@ -372,6 +372,12 @@ function eventRender(event, element, view) {
|
|||
}
|
||||
|
||||
$(element).find(".fc-event-title").after(div);
|
||||
|
||||
$(element)
|
||||
.css({'border-color': 'red'})
|
||||
.find(".fc-event-time, a")
|
||||
.css({'background-color': 'red', 'border-color': 'red', 'color': 'white'});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue