mirror of https://github.com/abpframework/eventhub
13 changed files with 303 additions and 365 deletions
@ -1,178 +1,90 @@ |
|||||
$(function () { |
$(function () { |
||||
var l = abp.localization.getResource('EventHub'); |
var l = abp.localization.getResource('EventHub'); |
||||
|
|
||||
$("#Event_CountryId").prepend("<option value=''></option>"); |
var isOnline = $("#Event_IsOnline option:selected").val() |
||||
$("#Event_Language").prepend("<option value=''></option>"); |
if (isOnline === "True") { |
||||
|
$(".event-link-group").show(); |
||||
if($("#Event_IsOnline").is(":checked")) { |
$(".event-location-group").hide(); |
||||
$("#event-link-group").show(); |
} else { |
||||
$("#event-location-group").hide(); |
$(".event-link-group").hide(); |
||||
|
$(".event-location-group").show(); |
||||
} |
} |
||||
|
|
||||
$('#Event_IsOnline').click(function() { |
$('#Event_IsOnline').on('change', '', function () { |
||||
if ($(this).is(':checked')) { |
var isOnline = $("#Event_IsOnline option:selected").val() |
||||
$("#event-link-group").show(); |
if (isOnline === "True") { |
||||
$("#event-location-group").hide(); |
$(".event-link-group").show(); |
||||
}else{ |
$(".event-location-group").hide(); |
||||
$("#event-link-group").hide(); |
} else { |
||||
$("#event-location-group").show(); |
$(".event-link-group").hide(); |
||||
|
$(".event-location-group").show(); |
||||
} |
} |
||||
}); |
}); |
||||
|
|
||||
$("#btn-event-timing").click(function () { |
|
||||
$("#event-timing-preview-modal").modal("show"); |
|
||||
}); |
|
||||
|
|
||||
$("#event-timing-confirm").click(function () { |
|
||||
$("#Event_Timing_Form").submit(); |
|
||||
$("#event-timing-preview-modal").modal("hide"); |
|
||||
}) |
|
||||
|
|
||||
$("#Event_Timing_Form").submit(function (e) { |
|
||||
e.preventDefault(); |
|
||||
|
|
||||
if(!$(this).valid()) { |
|
||||
return false; |
|
||||
} |
|
||||
|
|
||||
var data = { |
|
||||
id: $('#EventTiming_Id').val(), |
|
||||
startTime: $('#EventTiming_StartTime').val(), |
|
||||
endTime: $('#EventTiming_EndTime').val() |
|
||||
}; |
|
||||
|
|
||||
$.ajax({ |
|
||||
url: abp.appPath + `api/event/update-timing`, |
|
||||
type: 'POST', |
|
||||
dataType: 'json', |
|
||||
data: data, |
|
||||
success: function (data) { |
|
||||
abp.message |
|
||||
.success(l("EventTimingChangeSuccessMessage")) |
|
||||
.then(data => window.location.href = "/events/" + $("#event-detail-url").val()); |
|
||||
}, |
|
||||
error: function (data) { |
|
||||
abp.message.error(data.responseJSON.error.message); |
|
||||
} |
|
||||
}); |
|
||||
}) |
|
||||
|
|
||||
// Cover Image Section
|
var infoArea = document.getElementById('upload-label'); |
||||
$('#event-cover-image-btnSubmit').prop( "disabled", true ); |
var fileInput = document.getElementById('Event_CoverImageFile'); |
||||
var fileInput = document.getElementById('event-cover-image-input'); |
|
||||
var file; |
var file; |
||||
|
|
||||
fileInput.addEventListener('change', function () { |
if (fileInput !== null) { |
||||
var showModal = true; |
fileInput.addEventListener('change', function () { |
||||
|
var showFile = true; |
||||
|
|
||||
file = fileInput.files[0]; |
file = fileInput.files[0]; |
||||
|
|
||||
if (file === undefined){ |
if (file === undefined) { |
||||
$('#event-cover-image-input').val(''); |
$('#Event_CoverImageFile').val(''); |
||||
$("#choose-cover-image").html(l("ChooseEventCoverImage")); |
$('#imageResult').attr('src', '#'); |
||||
$('#event-cover-image-btnSubmit').prop( "disabled", true ); |
infoArea.textContent = 'Choose file' |
||||
return; |
return; |
||||
}else{ |
|
||||
document.getElementById("choose-cover-image").innerHTML = file.name; |
|
||||
} |
|
||||
|
|
||||
var permittedExtensions = ["jpg", "jpeg", "png"] |
|
||||
var fileExtension = $(this).val().split('.').pop(); |
|
||||
if (permittedExtensions.indexOf(fileExtension) === -1) { |
|
||||
showModal = false; |
|
||||
abp.message.error(l('EventCoverImageExtensionNotAllowed')) |
|
||||
.then(() => { |
|
||||
$('#event-cover-image-file').val(''); |
|
||||
$("#choose-cover-image").html(l("ChooseEventCoverImage")); |
|
||||
file = null; |
|
||||
}); |
|
||||
} |
|
||||
else if(file.size > 1024*1024) { |
|
||||
showModal = false; |
|
||||
abp.message.error(l('EventCoverImageSizeExceedMessage')) |
|
||||
.then(() => { |
|
||||
$('#event-cover-image-file').val(''); |
|
||||
$("#choose-cover-image").html(l("ChooseEventCoverImage")); |
|
||||
file = null; |
|
||||
}); |
|
||||
} |
|
||||
|
|
||||
var img = new Image(); |
|
||||
img.onload = function() { |
|
||||
var imageError = true; |
|
||||
var sizes = { |
|
||||
width: this.width, |
|
||||
height: this.height |
|
||||
}; |
|
||||
URL.revokeObjectURL(this.src); |
|
||||
|
|
||||
if(showModal && imageError) { |
|
||||
readURL(file); |
|
||||
$('#cover-image-preview-modal').modal('show'); |
|
||||
} |
} |
||||
} |
|
||||
|
|
||||
var objectURL = URL.createObjectURL(file); |
|
||||
img.src = objectURL; |
|
||||
if (file.size > 0 && file.size < 1024*1024){ |
|
||||
$('#event-cover-image-btnSubmit').prop( "disabled", false); |
|
||||
} |
|
||||
}); |
|
||||
|
|
||||
function readURL(input) { |
|
||||
if (input) { |
|
||||
var reader = new FileReader(); |
|
||||
|
|
||||
reader.onload = function (e) { |
var permittedExtensions = ["jpg", "jpeg", "png"] |
||||
$('#img-upload').attr('src', e.target.result); |
var fileExtension = $(this).val().split('.').pop(); |
||||
|
if (permittedExtensions.indexOf(fileExtension) === -1) { |
||||
|
showFile = false; |
||||
|
abp.message.error(l('EventCoverImageExtensionNotAllowed')) |
||||
|
.then(() => { |
||||
|
$('#Event_CoverImageFile').val(''); |
||||
|
file = null; |
||||
|
}); |
||||
|
} else if (file.size > 1024 * 1024) { |
||||
|
showFile = false; |
||||
|
abp.message.error(l('EventCoverImageSizeExceedMessage')) |
||||
|
.then(() => { |
||||
|
$('#Event_CoverImageFile').val(''); |
||||
|
file = null; |
||||
|
}); |
||||
} |
} |
||||
|
|
||||
reader.readAsDataURL(input); |
var img = new Image(); |
||||
} |
img.onload = function () { |
||||
} |
var imageError = true; |
||||
|
var sizes = { |
||||
$('form#cover-image-form').submit(function (e) { |
width: this.width, |
||||
e.preventDefault(); |
height: this.height |
||||
|
}; |
||||
var eventId = document.getElementById("event-id").value; |
URL.revokeObjectURL(this.src); |
||||
|
|
||||
|
if (showFile && imageError) { |
||||
|
readURL(file); |
||||
|
} |
||||
|
} |
||||
|
|
||||
if(!$(this).valid()) { |
var objectURL = URL.createObjectURL(file); |
||||
return false; |
img.src = objectURL; |
||||
} |
}); |
||||
|
|
||||
var formData = new FormData(); |
function readURL(input) { |
||||
formData.append("EventId", eventId); |
if (input) { |
||||
formData.append("CoverImageFile", file); |
var reader = new FileReader(); |
||||
|
|
||||
$.ajax({ |
reader.onload = function (e) { |
||||
xhr: function() { |
$('#imageResult').attr('src', e.target.result); |
||||
var xhr = new window.XMLHttpRequest(); |
infoArea.textContent = 'File name: ' + input.name; |
||||
xhr.upload.addEventListener("progress", function(evt) { |
} |
||||
if (evt.lengthComputable) { |
|
||||
var percentComplete = evt.loaded / evt.total; |
|
||||
percentComplete = parseInt(percentComplete * 100); |
|
||||
if(percentComplete !== 100){ |
|
||||
fileInput.prop( "disabled", true ); |
|
||||
$('#event-cover-image-btnSubmit').prop( "disabled", true ); |
|
||||
} |
|
||||
} |
|
||||
}, false); |
|
||||
|
|
||||
return xhr; |
reader.readAsDataURL(input); |
||||
}, |
|
||||
url: abp.appPath + `api/event/save-cover-image`, |
|
||||
data: formData, |
|
||||
type: 'POST', |
|
||||
contentType: false, |
|
||||
processData: false, |
|
||||
success: function(data){ |
|
||||
abp.message |
|
||||
.success(l('EventCoverImageEditSuccessMessage')) |
|
||||
.then(data => window.location.href = "/events/" + $("#event-detail-url").val()); |
|
||||
}, |
|
||||
error: function (data) { |
|
||||
abp.message.error(data.responseJSON.error.message); |
|
||||
} |
} |
||||
}); |
} |
||||
}); |
} |
||||
}); |
}); |
||||
Loading…
Reference in new issue