$(function() {
$('.thumb').on('click' , function(e){
e.preventDefault();//リンクの停止
var str=$(this).data("video");
$(this).parent().html('');
});
//クリックしたときのファンクションをまとめて指定
$('.tab li').click(function() {
//.index()を使いクリックされたタブが何番目かを調べ、
//indexという変数に代入します。
var index = $(this).parent().children('li').index(this);
//コンテンツを一度すべて非表示にし、
$(this).parent().next('.content').children('li').css('display','none');
//クリックされたタブと同じ順番のコンテンツを表示します。
$(this).parent().next('.content').children('li').eq(index).css('display','block');
//一度タブについているクラスselectを消し、
$(this).parent().children().removeClass('select');
//クリックされたタブのみにクラスselectをつけます。
$(this).addClass('select')
});
});
function tab_change(index){
//コンテンツを一度すべて非表示にし、
$('.content li').css('display','none');
//クリックされたタブと同じ順番のコンテンツを表示します。
$('.content li').eq(index).css('display','block');
//一度タブについているクラスselectを消し、
$('.tab li').removeClass('select');
//クリックされたタブのみにクラスselectをつけます。
$('.tab li').eq(index).addClass('select')
}
function tab_change1(){
// コンテンツを一度すべて非表示にし、
$('#systemtabcontent li').css('display','none');
//クリックされたタブと同じ順番のコンテンツを表示します。
$('#systemtabcontent li').eq(0).css('display','block');
//一度タブについているクラスselectを消し、
$('#systemtab li').removeClass('select');
//クリックされたタブのみにクラスselectをつけます。
$('#systemtab li').eq(0).addClass('select');
}
function tab_change2(){
// コンテンツを一度すべて非表示にし、
$('#systemtabcontent li').css('display','none');
//クリックされたタブと同じ順番のコンテンツを表示します。
$('#systemtabcontent li').eq(1).css('display','block');
//一度タブについているクラスselectを消し、
$('#systemtab li').removeClass('select');
//クリックされたタブのみにクラスselectをつけます。
$('#systemtab li').eq(1).addClass('select');
}
function tab_change3(){
// コンテンツを一度すべて非表示にし、
$('#systemtabcontent li').css('display','none');
//クリックされたタブと同じ順番のコンテンツを表示します。
$('#systemtabcontent li').eq(3).css('display','block');
//一度タブについているクラスselectを消し、
$('#systemtab li').removeClass('select');
//クリックされたタブのみにクラスselectをつけます。
$('#systemtab li').eq(3).addClass('select');
}
$(function(){
var url = location.href;
url= encodeURIComponent(url);
var title = $('title').html();
// twitter シェアの生成
var text = encodeURIComponent(title);
var tweet_url = 'http://twitter.com/share?url=' + url + '&text=' + text;
$('a.js-twitter-share').attr("href", tweet_url);
// facebookシェアの生成
var facebook_url = 'https://www.facebook.com/sharer/sharer.php?u=' + url;
$('a.js-facebook-share').attr("href", facebook_url);
// LINEシェア
$('.js-line-share').off('click');
$('.js-line-share').on('click', function(){
var message = title + ' ';
var shareLink = 'http://line.me/R/msg/text/?' + encodeURIComponent(message)+url;
window.open(shareLink, '_blank');
});
// はてなブックマーク
// var hatena_url = 'http://b.hatena.ne.jp/entry/' + url;
// $('a.js-hatena-share').attr("href", hatena_url);
// 標準のはてなブックマークボタンには次の2つも付くが無くても動作する
// $('a.js-hatena-share').attr("data-hatena-bookmark-title", title);
// $('a.js-hatena-share').attr("data-hatena-bookmark-layout", "simple");
});
$.fn.extend({
animateCss: function (animationName) {
var animationEnd = 'webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend';
this.addClass('animated ' + animationName).one(animationEnd, function() {
$(this).removeClass('animated ' + animationName);
});
return this;
}
});
//************************************************************************
//swiperdell
//************************************************************************
//var tsJqSwipeX = -1;
//var tsJqSwipeY = -1;
//
//$(function(){
// // 初期状態で[削除]は非表示
// $(".badge").hide();
//
// // スワイプ処理
// $(".swipe-item").bind("touchstart", function(){
// tsJqSwipeX = event.changedTouches[0].pageX;
// tsJqSwipeY = event.changedTouches[0].pageY;
// });
// $(".swipe-item").bind("click touchend", function(){
// tsJqSwipeX = -1;
// flag = 0;
// });
// $(".swipe-item").bind("touchmove", function(){
// if (Math.abs(event.changedTouches[0].pageY - tsJqSwipeY) > 10) tsJqSwipeX = -1;
// if (tsJqSwipeX != -1 && Math.abs(event.changedTouches[0].pageX - tsJqSwipeX) > 10) {
// tsJqSwipeX = -1;
// // スワイプられた時の処理
// if ($(this).children("span").is(':visible')) {
// $(".swipe-item").animate({'left':'0px'},150);
// $(".badge").hide();
// } else {
// $(".swipe-item").animate({'left':'0px'},150);
// $(".badge").hide();
// $(this).animate({'left':'-80px'},150);
// //$(this).css('left',"-80px");
// $(this).children("span").show();
// }
// }
// });
//});
var luminousTrigger = document.querySelector('.luminous');
if( luminousTrigger !== null ) {
new Luminous(luminousTrigger);
}
var mypage=mainurl+"/"+area1+"/mypage/";
$(function(){
$('#loader-bg').css('display','block'); //ウィンドウの高さに合わせでローディング画面を表示
});
$(window).on('load',function(){
stopload();
});
$(function(){ //3秒たったらロードを終わらせる
setTimeout('stopload()',1500);
});
function stopload(){
$('#loader-bg').fadeOut(800);
}
//************************************************************************
//API call
//************************************************************************
function syscall(params,paramsJson,callback) {
var p = $.param(params);
if( p!=''&¶msJson!='')p = p + '&';
p = p + paramsJson;
$.ajax({
url:mainurl+'/model/interface_js.php',
type:"POST",
data:p,
dataType: "json",
timeout:100000,
success: callback,
error: function(XMLHttpRequest, textStatus, errorThrown) {
console.log(XMLHttpRequest);
console.log(textStatus);
console.log(errorThrown);
}
});
}
//************************************************************************
//API call
//************************************************************************
function syscall2(params) {
var p = $.param(params);
var res= $.ajax({
url:mainurl+'/model/interface_js.php',
type:"POST",
data:p,
dataType: "json",
cache : false,
async: false
}).responseText;
return res;
}
// ダイアログ表示前にJavaScriptで操作する
$('#staticModal').on('show.bs.modal', function(event) {
var recipient = $(event.relatedTarget).data('whatever'); //< "パラメーター1"を取得
$(this).find('.modal-body .recipient').text(recipient);
});
$( function() {
$('body').css('overflow-y', $(window).height() < $(document).height() ? "initial" : "scroll");
$( "#staffsortable" ).sortable({
items :'.sortable-item',
handle :'.sorthandle',
axis : 'y',
update: function() {
var updateArray = $("#staffsortable").sortable("toArray").join(",");
var params = {_apino:212,'updateArray':updateArray};
syscall(params,null,function(res){
if(res.success){
}else{
alert('並び替えに失敗しました。');
location.reload();
}
})
}
});
} );
//************************************************************************
//topに戻るぼたん
//************************************************************************
$(document).ready(function() {
var pagetop = $('.pagetop');
$(window).scroll(function () {
if ($(this).scrollTop() > 100) {
pagetop.fadeIn();
} else {
pagetop.fadeOut();
}
});
pagetop.click(function () {
$('body, html').animate({ scrollTop: 0 }, 500);
return false;
});
});
//************************************************************************
//スムーススクロール
//************************************************************************
$(function(){
//位置・時間調整
var adjust = 100;
var time = 500;
//URLのハッシュ値を取得
var urlHash = location.hash;
//ハッシュ値があればページ内スクロール
if(urlHash) {
//スクロールを0に戻しておく
$('body,html').stop().scrollTop(0);
setTimeout(function () {
//ロード時の処理を待ち、時間差でスクロール実行
scrollToAnker(urlHash,-250) ;
}, 100);
}
//通常のクリック時
$('a[href^="#"]').click(function(){
// ハッシュ値を取得して URI デコードする
// var decodedHash = decodeURI(this.hash);
var decodedHash= $(this).attr("href");
// ハッシュの確認
console.log(decodedHash);
//リンク先が#か空だったらhtmlに
var hash = decodedHash == "#" || decodedHash == "" ? 'html' : decodedHash;
//スクロール実行
scrollToAnker(hash,100);
return false;
});
// 関数:スムーススクロール
// 指定したアンカー(#ID)へアニメーションでスクロール
function scrollToAnker(hash,adjust) {
var target = $(hash);
var position = target.offset().top - adjust;
console.log(adjust)
console.log(position)
$('body,html').stop().animate({scrollTop:position}, time, 'swing');
}
})
//$(function(){
// var windowWidth = $(window).width();
// var headerHight = 100; //ヘッダの高さ
// $('a[href^="#"].anchor-link').click(function(){
// var speed = 500;
// var href= $(this).attr("href");
// var target = $(href == "#" || href == "" ? 'html' : href);
// var position = target.offset().top-headerHight;
// $("html, body").animate({scrollTop:position}, speed, "swing");
// return false;
// });
//});
function iinephcount(src){
var params = {_apino:209,'src':src}
syscall(params,null,function(res){
if(res.success){
$('[data-src="'+src+'"]').children('.phcaption').children('.iinemarkicon').children('small').html(res['data'][0]);
}
})
}
//************************************************************************
//写真いいね
//************************************************************************
//$(document).hammer().on('doubletap','.iineph',function(){
// var ph=$(this)
// var src=ph.data('src');
// var iineflag=ph.attr('data-iineflag');
// if(iineflag==1){
// //いいね消す
// var params = {_apino:208,'src':src,'dele':1}
// syscall(params,null,function(res){
// if(res.success){
// iinephcount(src);
// ph.children('.phcaption').children('.iinemarkicon').removeClass('iinemark');
// ph.attr('data-iineflag',0);
// }else{
// erroralert(res.error);
// }
// });
// }else{
// //いいねする
// var params = {_apino:208,'src':src}
// syscall(params,null,function(res){
// if(res.success){
// iinephcount(src);
// ph.children('.iinegif').children('img').attr('src',mainurl+"/img/2.gif?"+$.now());
// ph.children('.iinegif').show();
// setTimeout(function(){
// ph.children('.iinegif').hide();
// },2000);
// ph.children('.phcaption').children('.iinemarkicon').addClass('iinemark');
// ph.attr('data-iineflag',1);
// }else{
// erroralert(res.error);
// }
// })
// }
//})
//************************************************************************
//メニュー
//************************************************************************
$(document).on("click touchend",".mokuji",function(e){
e.preventDefault();
//クリックされた.accordion2の中のp要素に隣接する.accordion2の中の.innerを開いたり閉じたりする。
$(this).next().slideToggle();
//クリックされた.accordion2の中のp要素以外の.accordion2の中のp要素に隣接する.accordion2の中の.innerを閉じる
$('.mokuji').not($(this)).next().slideUp();
});
//************************************************************************
//換金
//************************************************************************
$(document).on("click touchend",".nonmail",function(e){
e.preventDefault();
alert('メールアドレスの登録がされていません。\nこのサービスをご利用になるにはメールアドレスの登録が必要です。');
location.href=mainurl+"/"+area1+"/mypage/profileedit/";
});
//************************************************************************
//換金
//************************************************************************
$(document).on("click touchend",".nonbank",function(e){
e.preventDefault();
alert('振込先銀行口座の登録がされていません。\nこのサービスをご利用になるには振込先銀行口座の登録が必要です。');
location.href=mainurl+"/"+area1+"/mypage/bankedit/";
});
//************************************************************************
//退会
//************************************************************************
$(document).on("click touchend","#unsubscribebtn",function(e){
e.preventDefault();
if(! $(this.form).validationEngine('validate',{promptPosition:"bottomLeft"})) {
return false;
}
var json=$(this.form).serialize();
var params = {_apino:20};
if ( window.confirm("本当に退会しますか?") ){
syscall(params,json,function(res){
if(res.success){
alert("退会手続きが完了しました。");
location.reload();
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//退会→復旧
//************************************************************************
$(document).on("click touchend","#resubscribebtn",function(e){
e.preventDefault();
var params = {_apino:21};
syscall(params,null,function(res){
if(res.success){
alert("復旧手続きが完了しました。");
location.href=mainurl+"/"+area1+"/mypage/";
}else{
erroralert(res.error);
}
})
});
//************************************************************************
//新規登録エラー問い合わせ
//************************************************************************
$(document).on("click touchend","#reginfobtn",function(e){
e.preventDefault();
var params = {_apino:22};
var json=$(this.form).serialize();
syscall(params,json,function(res){
if(res.success){
alert("お問い合わせを受け付けました。");
location.href=mainurl+"/top/";
}else{
erroralert(res.error);
}
})
});
//************************************************************************
//掲載のお申し込み
//************************************************************************
$(document).on("click touchend","#ad_form",function(e){
e.preventDefault();
if(! $(this.form).validationEngine('validate',{promptPosition:"bottomLeft"})) {
return false;
}
var params = {_apino:23};
var json=$(this.form).serialize();
if (confirm('このお申込み内容を送信していいですか?')) {
syscall(params,json,function(res){
if(res.success){
alert("お申し込みを受け付けました。");
location.href=mainurl+"/top/";
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//メッセージ削除
//************************************************************************
$(document).on("click touchend",".dellmsg",function(e){
e.preventDefault();
var msg_no=$(this).data('msgno');
var flag=$(this).data('flag');
var params = {_apino:142,msg_no:msg_no};
var confirmmsg;
if ( window.confirm('このメッセージを削除しますか?') ){
syscall(params,null,function(res){
if(res.success){
location.reload();
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//日記コメント非表示
//************************************************************************
$(document).on("click touchend",".diaryhidden",function(e){
e.preventDefault();
var diary_coment_no=$(this).data('diary_coment_no');
var flag=$(this).data('flag');
var params = {_apino:1071,diary_coment_no:diary_coment_no,flag:flag};
var confirmmsg;
if(flag==9){
confirmmsg="このコメントを非表示にしますか?";
}else if(flag==1){
confirmmsg="このコメントを再表示しますか?";
}
if ( window.confirm(confirmmsg) ){
syscall(params,null,function(res){
if(res.success){
location.reload();
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//換金
//************************************************************************
$(document).on("click touchend","#kankinbtn",function(e){
if(! $(this.form).validationEngine('validate',{promptPosition:"bottomLeft"})) {
return false;
}
var json=$(this.form).serialize();
var params = {_apino:202};
syscall(params,json,function(res){
if(res.success){
location.href=mainurl+"/"+area1+"/mypage/kankin_finish/";
}else{
erroralert(res.error);
}
});
});
//************************************************************************
//いいね
//************************************************************************
$(document).on("click touchend",".iinebtn",function(e){
e.preventDefault();
var obj= $(this);
var userno= $(this).data("userno");
var area= $(this).data("area");
var ip= $(this).data("ip");
var usertype= $(this).data("usertype");
var params = {_apino:190,'user_no':userno,'ip':ip,'usertype':usertype,'area':area}
var con=$(this).next(".iinecountbox").text();
syscall(params,null,function(res){
console.log(res);
if(res.success){
if(con){con=parseInt(con)+1;}else{con=1;}
obj.next(".iinecountbox").html(con);
obj.addClass('active');
obj.animateCss('heartBeat');
}else{
if(res.error==129){
alert("すでにいいね済みです");
obj.addClass('active');
obj.animateCss('heartBeat');
}
erroralert(res.error);
}
});
});
//************************************************************************
//いいね
//************************************************************************
//$(document).on("click touchend",".diaryiinebtn",function(e){
// e.preventDefault();
// var obj= $(this);
// var diaryno= $(this).data("diaryno");
// var ip= $(this).data("ip");
// var params = {_apino:195,'diaryno':diaryno,'ip':ip}
// var con=$(this).next(".iinecountbox").text();
// syscall(params,null,function(res){
// if(res.success){
// if(con){
// con=parseInt(con)+1;
// obj.next(".iinecountbox").html(con);
// }else{
// con=1;
// obj.next(".iinecountbox").html(con);
// }
//
// obj.addClass('active');
// obj.animateCss('heartBeat');
//
// }else{
// erroralert(res.error);
// }
// });
//});
//************************************************************************
//いいね
//************************************************************************
//$(document).on("click touchend","#iinebtn",function(e){
// e.preventDefault();
//
// if($(this).attr('data-userno') != undefined) {
// var userno= $(this).data("userno");
// var params = {_apino:190,'user_no':userno};
// } else {
// var diaryno= $(this).data("diaryno");
// var params = {_apino:195,'diary_no':diaryno};
// }
//
// var iinepoint= $(this).data("iinepoint");
//
// syscall(params,null,function(res){
// if(res.success){
//
// var iinecountbox=$('#iinecountbox').text();
// if(iinecountbox!=""||iinecountbox!=" "){iinecountbox=Number(iinecountbox)+1;}else{iinecountbox="";}
// $('#iinecountbox').text(iinecountbox);
//
// if($(this).attr('data-userno') != undefined) {
// if(iinepoint==1){
// $('#iinebtn').attr('id','freeiinebtn');
// }else{
// $('#iinebtn').remove();
// }
// }else{
// }
// }else{
// erroralert(res.error);
// }
// });
//});
//************************************************************************
//superいいね
//************************************************************************
$(document).on("click touchend","#superiinebtn",function(e){
e.preventDefault();
if($(this).attr('data-userno') != undefined) {
var userno= $(this).data("userno");
var params = {_apino:194,'user_no':userno};
} else {
var diaryno= $(this).data("diaryno");
var params = {_apino:198,'diary_no':diaryno};
}
if ( window.confirm("同じ日記、お店やホストに無料でいいね!が\nできるのは1日1回までです。\n\n10ポイントを消費していいね!しますか?") ){
syscall(params,null,function(res){
if(res.success){
alert("サンキュー!Superいいね!");
location.reload();
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//無料いいね
//************************************************************************
$(document).on("click touchend","#freeiinebtn",function(e){
e.preventDefault();
var userno= $(this).data("userno");
var params = {_apino:197,'user_no':userno};
var con=$(".iinecountbox").text();
if ( window.confirm("同じお店やホストに無料でいいね!が\nできるのは1日1回までです。\n\nホスコインを消費していいね!しますか?") ){
syscall(params,null,function(res){
if(res.success){
con=parseInt(con)+1;
$("#iinecountbox").html(con);
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//日記無料いいね
//************************************************************************
$(document).on("click touchend","#diaryfreeiinebtn",function(e){
e.preventDefault();
var diaryno= $(this).data("diaryno");
var params = {_apino:199,'diary_no':diaryno};
if ( window.confirm("同じ日記に無料でいいね!が\nできるのは1日1回までです。\n\nホスコインを消費していいね!しますか?") ){
syscall(params,null,function(res){
if(res.success){
location.reload();
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//プレゼント
//************************************************************************
$(document).on("click touchend",".giftsend",function(e){
e.preventDefault();
var itemid=$(this).data('itemid');
var point=$(this).data('point');
var staffname=$(this).data('name');
var staffno=$(this).data('staffno');
var itemname=$(this).data('itemname');
var point=$(this).data('point');
var params = {_apino:200,'itemid':itemid,'to_user':staffno};
if ( window.confirm("一度プレゼントしたアイテムの変更、ポイントの変換はできません。\n\n"+itemname+" を "+point+" ptを消費して "+staffname+" にプレゼントしますか?") ){
syscall(params,null,function(res){
if(res.success){
alert("プレゼントを贈りました!");
location.href=mainurl+"/"+area1+"/staffdata/?c="+staffno;
}else{
erroralert(res.error);
}
})
}
});
//************************************************************************
//投票
//************************************************************************
$(document).on("click touchend",".voteon",function(e){
e.preventDefault();
var obj=$(this);
var rankno=obj.data('rankno');
var staffno=obj.data('staffno');
var ip=obj.data('ip');
var params = {_apino:204,'rankno':rankno,'staffno':staffno,'ip':ip};
syscall(params,null,function(res){
if(res.success){
obj.removeClass('voteon');
obj.addClass('vote');
obj.find('small').text('(本日は投票済み)');
}else{
erroralert(res.error);
}
})
});
//************************************************************************
//ログインしている人の場合非表示コンテンツ
//************************************************************************
$(function(){
if(login_user_no==getUrlVars['c']){
$(".mylogin").hide();
}
});
//****************************************************************************
//絵文字エンコード
//****************************************************************************
function utf8mb4_encode_numericentity(str) {
var re = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
return str.replace(re, function(match) {
return '' + match.codePointAt(0).toString(16).toUpperCase() + ';';
});
}
//****************************************************************************
//絵文字デコード
//****************************************************************************
function utf8mb4_decode_numericentity(str) {
var re = /(x([0-9a-fA-F]{5,6})|\d{5,7});/g;
return str.replace(re, function(m) {
if (typeof arguments[2] !== 'undefined') {
var cp = parseInt(arguments[2], 16);
} else {
var cp = parseInt(arguments[1], 10);
}
return String.fromCodePoint(cp);
});
}
//************************************************************************
//headline
//************************************************************************
$(function(){
var $setElm = $('.ticker');
var effectSpeed = 1000;
var switchDelay = 6000;
var easing = 'swing';
$setElm.each(function(){
var effectFilter = $(this).attr('rel'); // 'fade' or 'roll' or 'slide'
var $targetObj = $(this);
var $targetUl = $targetObj.children('ul');
var $targetLi = $targetObj.find('li');
var $setList = $targetObj.find('li:first');
var ulWidth = $targetUl.width();
var listHeight = $targetLi.height();
$targetObj.css({height:(listHeight)});
$targetLi.css({top:'0',left:'0',position:'absolute'});
var liCont = $targetLi.length;
if(effectFilter == 'fade') {
$setList.css({display:'block',opacity:'0',zIndex:'98'}).stop().animate({opacity:'1'},effectSpeed,easing).addClass('showlist');
if(liCont > 1) {
setInterval(function(){
var $activeShow = $targetObj.find('.showlist');
$activeShow.animate({opacity:'0'},effectSpeed,easing,function(){
$(this).next().css({display:'block',opacity:'0',zIndex:'99'}).animate({opacity:'1'},effectSpeed,easing).addClass('showlist').end().appendTo($targetUl).css({display:'none',zIndex:'98'}).removeClass('showlist');
});
},switchDelay);
}
} else if(effectFilter == 'roll') {
$setList.css({top:'3em',display:'block',opacity:'0',zIndex:'98'}).stop().animate({top:'0',opacity:'1'},effectSpeed,easing).addClass('showlist');
if(liCont > 1) {
setInterval(function(){
var $activeShow = $targetObj.find('.showlist');
$activeShow.animate({top:'-3em',opacity:'0'},effectSpeed,easing).next().css({top:'3em',display:'block',opacity:'0',zIndex:'99'}).animate({top:'0',opacity:'1'},effectSpeed,easing).addClass('showlist').end().appendTo($targetUl).css({zIndex:'98'}).removeClass('showlist');
},switchDelay);
}
} else if(effectFilter == 'slide') {
$setList.css({left:(ulWidth),display:'block',opacity:'0',zIndex:'98'}).stop().animate({left:'0',opacity:'1'},effectSpeed,easing).addClass('showlist');
if(liCont > 1) {
setInterval(function(){
var $activeShow = $targetObj.find('.showlist');
$activeShow.animate({left:(-(ulWidth)),opacity:'0'},effectSpeed,easing).next().css({left:(ulWidth),display:'block',opacity:'0',zIndex:'99'}).animate({left:'0',opacity:'1'},effectSpeed,easing).addClass('showlist').end().appendTo($targetUl).css({zIndex:'98'}).removeClass('showlist');
},switchDelay);
}
}
});
});
//************************************************************************
//user profile画像アップロード
//************************************************************************
$(function() {
var file = null; // 選択されるファイル
var blob = null; // 画像(BLOBデータ)
var userno="";
const THUMBNAIL_WIDTH = 350; // 画像リサイズ後の横の長さの最大値
const THUMBNAIL_HEIGHT = 350; // 画像リサイズ後の縦の長さの最大値
// ファイルが選択されたら
$('input[name="user_photo"]').change(function() {
userno = $(this).data('userno');
// ファイルを取得
file = $(this).prop('files')[0];
// 選択されたファイルが画像かどうか判定
if (file.type != 'image/jpeg' && file.type != 'image/png') {
// 画像でない場合は終了
file = null;
blob = null;
return;
}
console.log(userno);
// 画像をリサイズする
var image = new Image();
var reader = new FileReader();
reader.onload = function(e) {
image.onload = function() {
var width, height;
if(image.width > image.height){
// 横長の画像は横のサイズを指定値にあわせる
var ratio = image.height/image.width;
width = THUMBNAIL_WIDTH;
height = THUMBNAIL_WIDTH * ratio;
} else {
// 縦長の画像は縦のサイズを指定値にあわせる
var ratio = image.width/image.height;
width = THUMBNAIL_HEIGHT * ratio;
height = THUMBNAIL_HEIGHT;
}
// サムネ描画用canvasのサイズを上で算出した値に変更
var canvas = $('#canvas')
.attr('width', width)
.attr('height', height);
var ctx = canvas[0].getContext('2d');
// canvasに既に描画されている画像をクリア
ctx.clearRect(0,0,width,height);
// canvasにサムネイルを描画
ctx.drawImage(image,0,0,image.width,image.height,0,0,width,height);
$("#upload").remove();
$("#photobtn").append("");
// canvasからbase64画像データを取得
var base64 = canvas.get(0).toDataURL('image/jpeg');
// base64からBlobデータを作成
var barr, bin, i, len;
bin = atob(base64.split('base64,')[1]);
len = bin.length;
barr = new Uint8Array(len);
i = 0;
while (i < len) {
barr[i] = bin.charCodeAt(i);
i++;
}
blob = new Blob([barr], {type: 'image/jpeg'});
}
image.src = e.target.result;
}
reader.readAsDataURL(file);
});
// アップロード開始ボタンがクリックされたら
$(document).on("click touchend",'#photoupload',function(){
// ファイルが指定されていなければ何も起こらない
if(!file || !blob) {
return;
}
var fd = new FormData();
fd.append('file', blob); // ファイルを添付する
fd.append('user_no', userno); // ファイルを添付する
$.ajax({
url: mainurl+"/model/user_photo_upload.php", // 送信先
type: 'POST',
dataType: 'text',
data: fd,
processData: false,
contentType: false
}).done(function( data, textStatus, jqXHR ) {
$("#upload").remove();
alert("画像の変更が完了しました");
location.reload();
}).fail(function( jqXHR, textStatus, errorThrown ) {
});
});
});
//************************************************************************
//delimit
//************************************************************************
var delimit = function(n) {
return String(n).replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1,');
};
//************************************************************************
//GET value
//************************************************************************
function getUrlVars(){
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for(var i = 0; i < hashes.length; i++)
{
hash = hashes[i].split('=');
vars.push(hash[0]);
vars[hash[0]] = hash[1];
}
return vars;
}
var getUrlVars=getUrlVars();
//************************************************************************
//rogo click
//************************************************************************
$(document).on("click touchend",".logo",function(e){
location.href=mainurl+"/"+area1+"/top/";
})
$(function(){
//************************************************************************
//slide menu
//************************************************************************
$(function(){
var MenuBtn = $('#panel-btn'),
menuOverlay = $('#menuOverlay'),
sidemenu = $('#sidemenu'),
main = $('#main'),
close = $('#close'),
switchPoint = 768,
slideSpeed = 300,
fadeSpeed = 500,
menuWidth = 260;
function menuSet(){
//if(window.innerWidth <= switchPoint){
MenuBtn.on('click', function(){
if(MenuBtn.hasClass('btnClose')){
MenuBtn.removeClass('btnClose').removeAttr('style');
menuOverlay.stop().animate({opacity:'0'},fadeSpeed,function(){
menuOverlay.removeAttr('style');
});
sidemenu.stop().animate({left:'-' + menuWidth + 'px'},slideSpeed);
main.css({position:'static'});
} else {
$(this).addClass('btnClose');
menuOverlay.css({display:'block',opacity:'0'}).stop().animate({opacity:'0.8'},fadeSpeed);
sidemenu.stop().animate({left:'0'},slideSpeed);
// main.css({position:'fixed',top:0,left:0});
}
});
menuOverlay.on('click', function(){
MenuBtn.removeClass('btnClose').removeAttr('style');
menuOverlay.stop().animate({opacity:'0'},fadeSpeed,function(){
menuOverlay.removeAttr('style');
});
sidemenu.stop().animate({left:'-' + menuWidth + 'px'},slideSpeed);
main.css({position:'static'})
});
//} else {
// menuOverlay.hide();
//}
}
$(window).on('resize', function(){
menuSet();
});
menuSet();
});
//************************************************************************
//areamenu
//************************************************************************
$(function(){
/*
var MenuBtn = $('#area_btn'),
menuOverlay = $('#menuOverlay'),
sidemenu = $('#areamenu'),
main = $('#main'),
close2 = $('#close2'),
switchPoint = 768,
slideSpeed = 300,
fadeSpeed = 500,
menuWidth = 240;
function areamenuSet(){
if(window.innerWidth <= switchPoint){
MenuBtn.on('click', function(){
if(MenuBtn.hasClass('btnClose')){
MenuBtn.removeClass('btnClose').removeAttr('style');
menuOverlay.stop().animate({opacity:'0'},fadeSpeed,function(){
menuOverlay.removeAttr('style');
});
sidemenu.stop().animate({right: + menuWidth + 'px'},slideSpeed);
main.css({position:'static'})
} else {
$(this).addClass('btnClose');
menuOverlay.css({display:'block',opacity:'0'}).stop().animate({opacity:'0.8'},fadeSpeed);
sidemenu.stop().animate({right:'0'},slideSpeed);
main.css({position:'fixed',top:0,left:0})
}
});
menuOverlay.on('click', function(){
MenuBtn.removeClass('btnClose').removeAttr('style');
menuOverlay.stop().animate({opacity:'0'},fadeSpeed,function(){
menuOverlay.removeAttr('style');
});
sidemenu.stop().animate({right:'-' + menuWidth + 'px'},slideSpeed);
main.css({position:'static'})
});
} else {
menuOverlay.hide();
}
}
$(window).on('resize', function(){
areamenuSet();
});
areamenuSet();
*/
});
//************************************************************************
//画像があるか
//************************************************************************
function userimg(user_no){
var filepath=mainurl+"/img/user/"+user_no+"/top.jpg";
var str=filepath;
var img = new Image();
img.src = filepath;
img.onerror = function() {
str = mainurl+"/img/no-photo.gif"; //代用
}
return str;
}
//************************************************************************
//画像がない場合差し替え
//************************************************************************
function shortdat2(dat){
var str;
//日付と時間に分ける
var arr = dat.split(" ");
//年・月・日に分ける
var arrDate = arr[0].split("-");
//時・分・秒に分ける
var arrTime = arr[1].split(":");
//今日
var today = new Date();
if(today.getDate()==arrDate[2]){
str="今日"+" "+arrTime[0]+":"+arrTime[1];
}else if(today.getDate()-1==arrDate[2]){
str="昨日"+" "+arrTime[0]+":"+arrTime[1];
}else if(today.getFullYear()-1==arrDate[0]){
str=arrDate[0]+"/"+arrDate[1]+"/"+arrDate[2]+" "+arrTime[0]+":"+arrTime[1];
}else{
str=arrDate[1]+"/"+arrDate[2]+" "+arrTime[0]+":"+arrTime[1];
}
return str;
}
//************************************************************************
//無限スクロール message
//************************************************************************
if(location.pathname=='/tokai/mypage/message/'){
var p=2;
let triggerFlag = false;
var from_user=$("#from_user").val();
var to_user=$("#to_user").val();
$(window).on('load scroll', function () {
var str="",
f,bgimg,
documentHeight= $(document).height(),
scrollBottomPosition = $(window).height() + $(window).scrollTop(),
triggerPoint = documentHeight - scrollBottomPosition;
if (!triggerFlag && triggerPoint <= 50) {
triggerFlag = true;
$(".loading").show();
var params = {_apino:143,from_user:from_user,p:p};
syscall(params,null,function(res){
if(res.success){
for(var i=0; i