var clickTuch;
if(window.ontouchstart === undefined){clickTuch=1;}else if(window.ontouchstart === null){clickTuch=0;};
function ValChek(){//入力データチェック
  var YYY=$('#yydatabox [name=Year]').val();
  var MMM=$('#mmdatabox [name=month]').val();
  var yval= parseInt(YYY);
  var mval= parseInt(MMM);
  var flag = 0;
  if(YYY == ""){flag = 1;
  }else if(MMM == ""){flag = 1;};
  if(flag){window.alert('年・月 を入力してください');
  }else{
     if(yval<1700||yval>2700){alert('年は 1700 から 2700 の数値で入力してください');
     }else if(mval<1||mval>12){alert('月は 1 から 12 までの数値で入力してください');
     }else{ avoid(yval,mval);};
  };
}; 
function avoid(yval,mval){
  var yymmstr = yval +' 年 '+ mval +' 月';
  var mvalue = mval -1;//1月が0、12月が11。
  var yobi= new Array("日","月","火","水","木","金","土");//日曜が0、土曜日が6。
  var NowMonthObj = new Date();//当月の DateObject
  var PreMonthObj = new Date();//前月の DateObject
  var NextMonthObj = new Date();//翌月の DateObject
  NowMonthObj.setFullYear(yval, mvalue, 1);//当月の1日
  PreMonthObj.setFullYear(yval, mvalue, 0);//前月の末日,,setDate にゼロを指定すると前月末日
  var NexMonth;
  if(mvalue === 11){NexMonth=0}else{NexMonth=mvalue+1};//翌月の月設定
  NextMonthObj.setFullYear(yval, NexMonth, 0);//当月の末日
  var we= NowMonthObj.getDay();//当月1日の曜日//日曜が0、土曜日が6。
  var CstWe=yobi[we]; //当月1日の曜日
  var PreM_Last=PreMonthObj.getDate();//前月末日
  var NowM_Last=NextMonthObj.getDate();//当月の末日
  var koyomi = new Array();// 7*6の配列を作る(42個の2次元配列)
  var daycolor;
  var k;//日付代数 
  if(we===0){k=1;daycolor='#000000';
             k=(PreM_Last-6);daycolor='#c2c2c2';
  //当月1日が日曜の場合は、当月開始を2行目からにする(前月表示をゼロとすると、翌月表示が2行を超えるため)
  //そのため前月末日数値より k=前月末日数値-6
  }else{k=(PreM_Last-(we-1));daycolor='#c2c2c2';
  //当月1日が月から土の場合は1行目から当月開始の為、前月表示数は k=前月末日数値-(当月1日曜日数位-1)
  };
  //当月1日が日曜の場合日付'k'は1から始まり、それ以外は前月末日値から当月1日の曜日位置数を引く(日曜0から始まるので-1)
  for(var i = 0; i < 42; i++ ){
     koyomi[i] = new Array();//配列の2次元化宣言
     koyomi[i][0] = k;//配列'x-0'に日付を格納
     koyomi[i][1] = daycolor;
     k = k + 1;//日付加算
     if(i<12){ //前月末日の超過地点なのでアバウトな位置でOK
        if(k>PreM_Last){//kが前月末日を超えたら当月へ
           k = 1 ; daycolor = '#000000';};
        }else if(i>11){if(k>NowM_Last){k=1;daycolor='#c2c2c2';};//kが当月末日を超えたら翌月へ
     };
  };
  DomRemove();

 //DOM 作成
  var docHTML='<div id="ymd">'+ yymmstr +'</div>';
  for(i=0;i<42;i++){
     k=i+1;
     docHTML=docHTML+'<div id="day'+k+'" class="day" style= "color:'+koyomi[i][1]+'">'+ koyomi[i][0] +'</div>'
  };
  var element = document.createElement('div'); 
  element.id = 'dayagg'; 
  element.innerHTML = docHTML;
  var target = document.getElementById('target');//div id #target 内に作る
  target.appendChild(element);// target(親要素) .appendChild(対する子要素としての新要素)
};
function DomRemove(){// DOM 消去
  var element = document.getElementById('dayagg');
  element.parentNode.removeChild(element);
  //Div 要素ごっそり削除する
  //element.textContent = null; Textだけを消去する場合はこの構文
};
$(function(){
  if(clickTuch===1){//PC
    $('#start').on('click', function(){ValChek();});
  }else if(clickTuch===0){//mobile & tablet
    $('#start').on('touchstart',function(){isTouch=true;})
    .on('touchmove',function(){isTouch=false;})
    .on('touchend',function(){if(isTouch == true){ValChek();};
    });
  };//End if
});