function check_hidebox_upload_2016() {
if ( document.getElementById('alg').checked) {
document.getElementById('algp').checked = false;
document.getElementById('algt').checked = false;
document.getElementById('upload2').style.display='none';
document.getElementById('uploaddoc').style.display='block';
document.getElementById('upwin').style.display='none';
document.getElementById('filelimit').style.display='none';
document.getElementById('photolimit').style.display='none';
document.getElementById('screenlimit').style.display='none';
document.getElementById('zip').checked = false;
document.getElementById('expert').checked = false;
document.getElementById('comment').value= "";
// document.getElementById('sound_play').checked = false;
document.getElementById("soundunit").innerHTML = "";
document.getElementById('upload').style.display='block';
document.getElementById('uploaddoc').style.display='none';
document.getElementById('upwin').style.display='block';
document.getElementById('expert_photo').checked = false;
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('screen_shot').style.display='none';
document.getElementById('expertbox_screen_shot').style.display='none';
document.getElementById('expertbox_screen_shot2').style.display='none';
document.getElementById('close_space').style.display='none';
document.getElementById('fileupload').style.display='block';
document.getElementById('photoupload').style.display='none';
} else {
document.getElementById('filelimit').style.display='inline';
document.getElementById('expertbox').style.display='none';
document.getElementById('upload').style.display='none';
document.getElementById('uploaddoc').style.display='block';
document.getElementById('upwin').style.display='none';
document.getElementById('close_space').style.display='block';
document.getElementById('fileupload').style.display='none';
document.getElementById('photoupload').style.display='none';
}
}
function check_hidebox_photo_2016() {
if ( document.getElementById('algp').checked) {
document.getElementById('upload2').style.display='block';
document.getElementById('uploaddoc').style.display='none';
document.getElementById('upwin').style.display='block';
document.getElementById('filelimit').style.display='none';
document.getElementById('photolimit').style.display='none';
document.getElementById('screenlimit').style.display='none';
document.getElementById('alg').checked = false;
document.getElementById('algt').checked = false;
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('upload').style.display='none';
document.getElementById('screen_shot').style.display='none';
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('expertbox_screen_shot').style.display='none';
document.getElementById('expertbox_screen_shot2').style.display='none';
document.getElementById('expert').checked = false;
document.getElementById('expertbox').style.display='none';
document.getElementById('close_space').style.display='none';
document.getElementById('fileupload').style.display='none';
document.getElementById('photoupload').style.display='block';
} else {
document.getElementById('photolimit').style.display='inline';
document.getElementById('upload2').style.display='none';
document.getElementById('uploaddoc').style.display='block';
document.getElementById('upwin').style.display='none';
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('close_space').style.display='block';
document.getElementById('fileupload').style.display='none';
document.getElementById('photoupload').style.display='none';
}
}
function check_screen_shot_2016() {
if ( document.getElementById('algt').checked) {
document.getElementById('upload2').style.display='none';
document.getElementById('uploaddoc').style.display='none';
document.getElementById('upwin').style.display='block';
document.getElementById('filelimit').style.display='none';
document.getElementById('photolimit').style.display='none';
document.getElementById('screenlimit').style.display='block';
document.getElementById('alg').checked = false;
document.getElementById('algp').checked = false;
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('upload').style.display='none';
document.getElementById('expert').checked = false;
document.getElementById('expertbox').style.display='none';
document.getElementById('screen_shot').style.display='block';
document.getElementById('expertbox_screen_shot').style.display='block';
document.getElementById('expertbox_screen_shot2').style.display='block';
document.getElementById('close_space').style.display='none';
document.getElementById("screen_shot_area").focus();
document.getElementById('fileupload').style.display='none';
} else {
document.getElementById('upload2').style.display='none';
document.getElementById('uploaddoc').style.display='block';
document.getElementById('upwin').style.display='none';
document.getElementById('screen_shot').style.display='none';
document.getElementById('screenlimit').style.display='none';
document.getElementById('filelimit').style.display='block';
document.getElementById('expertbox_photo').style.display='none';
document.getElementById('expertbox_screen_shot').style.display='none';
document.getElementById('expertbox_screen_shot2').style.display='none';
document.getElementById('close_space').style.display='block';
}
}
$(document).ready(function(){
var clipboard = new ClipboardJS('.btn');
clipboard.on('success', function(e) {
e.trigger.innerText = 'copyed';
setTimeout(function(){
e.clearSelection();
e.trigger.innerText = 'コピー';
},500);
});
if ( document.getElementById('alg').checked) {
document.getElementById('alg').checked = false;
}
if ( document.getElementById('algt').checked) {
document.getElementById('algt').checked = false;
}
if ( document.getElementById('algp').checked) {
document.getElementById('algp').checked = false;
}
$(function () {
// アップロードキャンセル用
var cancel_flg = 0;
// 複数同時アップロード用
var uploadcount = 0;
var uploadarray = [];
var execcount = 0;
var donecount = 0;
var processcnt = 0;
var timer = 0;
var upload_type = 0;
var current_photo_count = 0;
var upload_limit = 262144000;
var upload_limitd = '250M';
// まとめてダウンロードに使用
var zips = '';
var audio_file;
var audio = null;
var arc = '';
var upload_url = '';
$('#zips').val('');
$('#arc').val('');
$('#top').val('1');
file_upload_check();
//photo
var pct = 0;
var msie = navigator.appVersion.toLowerCase();
msie = (msie.indexOf('msie')>-1)?parseInt(msie.replace(/.*msie[ ]/,'').match(/^[0-9]+/)):0;
if( msie < 10 && msie > 1 ) {
$('#uploadbtn').html('お使いのブラウザはサポートしていません');
$('#uploadbtn').hide();
alert("お使いのブラウザはサポートしていません、IE10以上対象です");
}
var obj = $("#upload_dd");
obj.on('dragenter', function (e) {
e.stopPropagation();
e.preventDefault();
$(this).css('border', '0px solid #ffffff');
$(this).css('background-image', 'url(/images/hover_gif.gif)');
});
obj.on('dragover', function (e) {
e.stopPropagation();
e.preventDefault();
$(this).css('border', '0px solid #ffffff');
$(this).css('background-image', 'url(/images/hover_gif.gif?1234)');
});
obj.on('dragleave', function (e) {
$(this).css('background-image', 'url(/images/upload_dd.jpg)');
});
var obj2 = $("#photo_dd");
obj2.on('dragenter', function (e) {
e.stopPropagation();
e.preventDefault();
$(this).css('border', '0px solid #ffffff');
$(this).css('background-image', 'url(/images/hover_photo.gif)');
});
obj2.on('dragover', function (e) {
e.stopPropagation();
e.preventDefault();
$(this).css('border', '0px solid #ffffff');
$(this).css('background-image', 'url(/images/hover_photo.gif)');
});
obj2.on('dragleave', function (e) {
$(this).css('background-image', 'url(/images/upload_dd.jpg)');
});
try {
// ブラウザ対応拡張子取得
var audio = new Audio();
if (audio.canPlayType("audio/mp3") == 'maybe') { audio_file="/js/sound.mp3"; }
else if (audio.canPlayType("audio/wav") == 'maybe') { audio_file="/js/sound.wav"; }
else if (audio.canPlayType("audio/ogg") == 'maybe') { audio_file="/js/sound.ogg"; }
if ( audio_file ) {
audio = new Audio(audio_file);
}
} catch (e) {
audio_file = '';
}
$('#upload_cancel_btn').click(function () {
if ( jqxhr ) {
jqxhr.abort();
showAlert("アップロードを停止しました");
}
});
// アップロード画像クリック時の動作
$('#uploadbtn').click(function () {
var $elementReference = document.getElementById("upfile");
$elementReference.accept = '*';
var $accept = $elementReference.accept;
document.getElementById("upfile").innerHTML = $accept;
upload_type = 'file';
$('#upfile').show();
$('#upfile').trigger('click');
$('#upfile').hide();
});
$('#photobtn').click(function () {
var $elementReference = document.getElementById("upfile");
$elementReference.accept = 'image/jpeg,image/gif,image/png';
var $accept = $elementReference.accept;
document.getElementById("upfile").innerHTML = $accept;
upload_type = 'photo';
$('#upfile').show();
$('#upfile').trigger('click');
$('#upfile').hide();
});
obj2.on('drop', function (e) {
upload_type = 'photo';
$(this).css('background-image', 'url(/images/photo_dd.jpg)');
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;
var max_size = $('#max_size_photo').val();
var max_sized = $('#max_size_photod').val();
var max_count = $('#max_count_photo').val();
var count = handle_upload_file_read(files,'image',max_size,max_sized);
if ( count == 0 ) {
cancel_flg = 1;
return false;
}
// 選択されたファイル数を取得
uploadcount = count;
processcnt = count;
execcount = 0;
donecount = 0;
if ( count > max_count ) {
showAlert('1度にアップロード出来るファイルは' + max_count + 'ファイルまでです。');
cancel_flg = 1;
return false;
} else {
cancel_flg = 0;
}
$('#file_queue').val(count);
var rep = file_upload_qst(upload_type, count, current_photo_count);
if ( rep > 0 ) {
showAlert('ロールにアップロード出来るファイルは' + rep + 'ファイルまでです。');
cancel_flg = 1;
return false;
}
});
obj.on('drop', function (e) {
upload_type = 'file';
$(this).css('background-image', 'url(/images/upload_dd.jpg)');
e.preventDefault();
var files = e.originalEvent.dataTransfer.files;
var max_size = $('#max_size').val();
var max_sized = $('#max_sized').val();
var max_count = $('#max_count').val();
var count = handle_upload_file_read(files,'upload',max_size,max_sized);
if ( count == 0 ) {
cancel_flg = 1;
return false;
}
// 選択されたファイル数を取得
uploadcount = count;
processcnt = count;
execcount = 0;
donecount = 0;
if ( count > max_count ) {
showAlert('1度にアップロード出来るファイルは' + max_count + 'ファイルまでです。');
cancel_flg = 1;
return false;
} else {
cancel_flg = 0;
}
$('#file_queue').val(count);
file_upload_qst(upload_type, count, current_photo_count);
});
// アップロード前のチェック(通常用)
$('#upfile').change(function() {
var count = 0;
var max_size = $('#max_size').val();
var max_count = $('#max_count').val();
// 最大ファイル数チェック(通常用)
count = this.files.length;
if ( upload_type == 'photo' ) {
max_size = $('#max_size_photo').val();
max_count = $('#max_count_photo').val();
file_upload_qst(upload_type, count, current_photo_count);
var rep = handle_upload_file_read(this.files,'image',max_size,max_sized);
if ( rep == 0 ) {
cancel_flg = 1;
return false;
}
}
// 選択されたファイル数を取得
uploadcount = count;
processcnt = count;
execcount = 0;
donecount = 0;
if ( count > max_count ) {
showAlert('1度にアップロード出来るファイルは' + max_count + 'ファイルまでです。');
cancel_flg = 1;
return false;
} else {
cancel_flg = 0;
}
// 最大ファイルサイズチェック(通常用) - 1枚ずつチェックする
for ( var i = 0 ; i < count ; i++ ) {
if ( this.files[i].size > max_size ) {
if ( max_size == 262144000 ) {
showYesNo("1ファイルの容量制限エラー\n\nなお会員登録すると現在1Gまでのアップロードが可能です\n\n会員登録を行いますか?");
} else {
showAlert("1ファイルの容量制限エラー:" + max_sized + "MiB以上はドロップできません\n" + this.files[i].name );
}
cancel_flg = 1;
break;
} else {
cancel_flg = 0;
}
}
$('#file_queue').val(count);
var rep = file_upload_qst(upload_type, count, current_photo_count);
if ( rep > 0 ) {
showAlert('ロールにアップロード出来るファイルは' + rep + 'ファイルまでです。');
cancel_flg = 1;
return false;
}
});
// ファイルアップロード時のプログレスバー処理(通常用)
$('#upfile').fileupload({
prependFiles: true,
singleFileUploads: false,
dropZone: $("#upload_dd,#photo_dd"),
add: function (e, data) {
if ( upload_type == 'photo' ) {
if (! $('#photo_upload_url').val() ) {
showAlert('アップロードURLが取得できませんでした、再読み込みしてください。');
valid_upload();
return false;
}
data.url = $('#photo_upload_url').val();
} else {
if (! $('#file_upload_url').val() ) {
showAlert('アップロードURLが取得できませんでした、再読み込みしてください。');
valid_upload();
return false;
}
data.url = $('#file_upload_url').val();
}
if ( data.url === undefined ) {
showAlert('アップロードURLが取得できませんでした、再読み込みしてください。');
valid_upload();
return false;
}
// アップロードボタン無効化
invalid_upload();
// キャンセルフラグがONの場合は処理しない
if ( cancel_flg == 1 ) {
// アップロードボタン有効化
valid_upload();
return false;
}
uploadcount = data.files.length
for ( i = 0 ; i < uploadcount ; i++ ) {
var dataObj = $.extend(true, {}, data);
if ( uploadcount > 0 ) {
dataObj.files.splice(1,uploadcount - 1);
dataObj.originalFiles.splice(1,uploadcount - 1);
dataObj.paramName.splice(1,uploadcount - 1);
}
dataObj.files[0] = data.files[i];
dataObj.originalFiles[0] = data.originalFiles[i];
dataObj.paramName[0] = "Filename";
uploadarray.push(dataObj);
}
current_photo_count = current_photo_count + uploadcount;
if ( uploadcount > 0 ) {
document.getElementById('upload_cancel_btn').style.display='inline';
$('#progress').css('display','block');
$('#uploadmessage').html('アップロード開始' + uploadcount + '個目');
$('#progress .bar').css(
'width',
'0%'
);
showUpload_file();
}
},
done: function (e, data) {
if ( processcnt == 1 ) {
// アップロードボタン有効化
valid_upload();
}
var decodedUrl;
$('#uploadmessage').html('アップロード完了しました。');
document.getElementById('upload_cancel_btn').style.display='none';
decodedUrl = decodeURIComponent(data.result);
$('').html(decodedUrl).prependTo($('#thumbnails'));
if ( $('#sound_play').is(':checked') && processcnt == 1 && audio_file ) {
audio.play();
}
uploadcount = 0;
},
progress: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
var disp_progress = progress * 1;
$('#progress .bar').css(
'width',
disp_progress + '%'
);
$('#uploadmessage').html('「'+data.files[0].name+'」
firestorageにアップロード中('+progress+'%)');
if ( progress == 100 ) {
$('#uploadmessage').html('ウイルススキャン中 (100%)');
}
},
fail: function (e, data) {
$('#progress .bar').css(
'width',
0 + '%'
);
$('#uploadmessage').html('');
document.getElementById('upload_cancel_btn').style.display='none';
valid_upload();
}
});
// 複数同時アップロード
function showUpload_file() {
if ( execcount == 0 ) {
// 初回
execcount++;
var dataObj = uploadarray.shift();
var pict = $('#top').val();
console.log("s top " + pict);
jqxhr = dataObj.submit().done(function() {
donecount++;
processcnt--;
$('#file_queue').val(processcnt);
});
} else if ( execcount == donecount ) {
// 2回目以降
execcount++;
var dataObj = uploadarray.shift();
var pict = $('#top').val();
pict++;
$('#top').val(pict);
console.log("top " + pict);
jqxhr = dataObj.submit().done(function() {
donecount++;
processcnt--;
$('#file_queue').val(processcnt);
});
} else {
// アップロード中なのでsetTimeoutをキャンセル
clearTimeout(timer);
}
// 配列に残りがある場合は1秒後にもう一回
if ( uploadarray.length ) {
timer = setTimeout(function() {
showUpload_file();
},1000);
} else {
execcount = 0;
donecount = 0;
timer = 0;
return;
}
}
// アップロードボタンの無効化
function invalid_upload() {
$('#upfile').attr('disabled', true);
}
// アップロードボタンの有効化
function valid_upload() {
$('#upfile').removeAttr('disabled');
}
});
});
function file_upload_qst(upload_type, count, current_photo_count){
// qstをセット
var _nv=navigator;
n1 = escape(_nv.appCodeName);
n2 = escape(_nv.appName);
n3 = escape(_nv.platform);
n4 = escape(_nv.userAgent);
var qst = "n1="+n1+"&n2="+n2+"&n3="+n3+"&n4="+n4;
$('#qst').val(qst);
var comment = $('#comment').val();
$('#comments').val(comment);
if ( upload_type == 'photo' ) {
var comment = document.getElementById('comment_photo').value;
$('#comment').val(comment);
$('#comments').val('');
var ppass = document.getElementById('photo_pass').value;
$('#ppass').val(ppass);
$('#jqueryupload').val("0");
// expパラメータにセット
$('#exp').val($('#exp_value_photo').val());
var c = current_photo_count + count;
var max_count_photo = $('#max_count_photo').val();
if ( c > max_count_photo ) {
return max_count_photo;
}
} else {
var comment = document.getElementById('comment_upload').value;
$('#comments').val(comment);
$('#comment').val('');
var dpass = document.getElementById('download_pass').value;
$('#dpass').val(dpass);
$('#jqueryupload').val("1");
// expパラメータにセット
$('#exp').val($('#expire').val());
}
if ( $('#zip').is(':checked') ) {
var zip = $('#zip').val();
if ( zip == '' ) {
zip = Math.random() * 99999990;
}
// zipsをセット
$('#zips').val(zip);
} else {
// zipsを空にする
zips = '';
$('#zips').val('');
}
return 0;
}
function showYesNo(message) {
setTimeout(
function(){
var rep = confirm(message);
if ( rep == true ) {
location.href = "https://secure.firestorage.jp/entry.cgi";
}
},0
);
}
function showAlert(message) {
setTimeout(
function(){
alert(message);
},0
);
}
// debug用 - objectの中身を表示
function checkObject(_obj){
var text = "";
for(var key in _obj){
text += key +" : "+_obj[key] + "\n";
}
alert(text);
}
function handle_upload_file_read(files,obj,size,size_disp){
var c = 0;
for (var i = 0; i < files.length; i++) {
if ( files[i].size > size ) {
if ( size == 262144000 ) {
showYesNo("1ファイルの容量制限エラー\n\nなお会員登録すると現在1Gまでのアップロードが可能です。\n\n会員登録を行いますか?\n\n");
} else {
showAlert("1ファイルの容量制限エラー:" + size_disp + "MiB以上はドロップできません\n" + files[i].name );
}
return 0;
} else if ( obj == 'image' ) {
var type = files[i].type.split("/");
if ( type[0] != 'image' ) {
showAlert("アップロードできない形式です\n「" + files[i].name + "」\n" + files[i].type);
return 0;
}
}
c++;
}
return c;
}
function file_upload_check(){
//通信エラー用
setTimeout(function() {
checkajaxkill();
}, 15000);
var eid = $('#eid').val();
var isneedtoKillAjax = true;
var jsHost = (("https:" == document.location.protocol) ? "https://" : "http://");
var url = "//firestorage.jp/flashup.cgi?act=flashupjs&type=flash10b&photo=1&talk=1&json=1&eid=" + eid;
var myAjaxCall = $.getJSON(url, function(json){
isneedtoKillAjax = false;
var processid = json['processid'];
var folder_id = json['folder_id'];
var file_upload_url = json['upload'];
var photo_upload_url = json['photo'];
if ( processid ) {
$('#processid').val(processid);
}
if ( folder_id ) {
$('#folder_id').val(folder_id);
}
if ( file_upload_url ) {
$('#file_upload_url').val(file_upload_url);
}
if ( photo_upload_url ) {
$('#photo_upload_url').val(photo_upload_url);
}
});
function checkajaxkill(){
if ( isneedtoKillAjax ){
myAjaxCall.abort();
showAlert("通信エラーです、しばらくお待ちください\n");
}
}
}