function popupCalendar (dateText, dateButton,selectedDate,isTime,selectedTime,buttonsExist) {
var Event = YAHOO.util.Event,
Dom = YAHOO.util.Dom,
dialog,
calendar,
timeBoxString,
dateString = "",
datePage = "";
var showBtn = Dom.get("show"+Dom.get(dateText).value);
//Dialog creation with the calendar in it.
if (!dialog) {
function resetHandler() {
Dom.get(dateText).value = "";
Dom.get(dateText+"_DD").value = "";
Dom.get(dateText+"_MM").value = "";
Dom.get(dateText+"_YY").value = "";
if(Dom.get(dateText+"_HO")) Dom.get(dateText+"_HO").value = "";
if(Dom.get(dateText+"_HOVAL")) Dom.get(dateText+"_HOVAL").value = "";
if(Dom.get(dateText+"_MI")) Dom.get(dateText+"_MI").value = "";
if(Dom.get(dateText+"_MIVAL")) Dom.get(dateText+"_MIVAL").value = "";
dialog.destroy();
}
function closeHandler() {
if(Dom.get(dateText+"_HOVAL")) Dom.get(dateText+"_HO").value = Dom.get(dateText+"_HOVAL").value;
if(Dom.get(dateText+"_MIVAL")) Dom.get(dateText+"_MI").value = Dom.get(dateText+"_MIVAL").value;
dialog.destroy();
}
//Dialog is being created with or without buttons
if(buttonsExist){
dialog = new YAHOO.widget.Dialog("popupCalContainer", {
visible:true,
context:["show"+Dom.get(dateText).value, "tl", "bl"],
buttons:[ {text:"Sıfırla", handler: resetHandler, isDefault:true}, {text:"Kapat", handler: closeHandler}],
draggable:false
});
}else{
dialog = new YAHOO.widget.Dialog("popupCalContainer", {
visible:true,
context:["show"+Dom.get(dateText).value, "tl", "bl"],
draggable:false
});
}
dialog.setHeader('Tarih giriniz');
//Values of time boxes are being set and these boxes are being created.
if(isTime){
var minute = '';
var hour = '';
if(Dom.get(dateText+"_HO").value !='' && Dom.get(dateText+"_MI").value !=''){
Dom.get(dateText+"_MI").value = validateTimeStrings(Dom.get(dateText+"_MI").value);
Dom.get(dateText+"_HO").value = validateTimeStrings(Dom.get(dateText+"_HO").value);
minute = Dom.get(dateText+"_MI").value;
hour = Dom.get(dateText+"_HO").value
}else if(selectedTime !=''){
minute = validateTimeStrings(selectedTime.split(":")[1]);
hour = validateTimeStrings(selectedTime.split(":")[0]);
}
timeBoxString = '
Saat: :
';
}else
timeBoxString = '';
dialog.setBody(timeBoxString + '');
dialog.render(document.body);
if (YAHOO.env.ua.ie) {
//We want to let the dialog know that the content size has changed, when shown
dialog.fireEvent("changeContent");
}
}
dateString = Dom.get(dateText+"_MM").value+"/"+Dom.get(dateText+"_DD").value+"/"+Dom.get(dateText+"_YY").value;
datePage = Dom.get(dateText+"_MM").value+"/"+Dom.get(dateText+"_YY").value;
var navConfig = {strings : { month: "Lütfen bir ay seçiniz", year: "Lütfen bir yıl giriniz", submit: "Tamam", cancel: "İptal", invalidYear: "Lütfen geçerli bir tarih giriniz." }};
// Calendar Creation,if there is a selected date or not
if (!calendar) {
if(dateString=="//"){
calendar = new YAHOO.widget.Calendar("cal", {
iframe:false, // Turn iframe off, since container has iframe support.
hide_blank_weeks:true, // Enable, to demonstrate how we handle changing height, using changeContent
navigator:navConfig // Year navigation is enabled with the localization params
});
}else{
calendar = new YAHOO.widget.Calendar("cal", {
iframe:false, // Turn iframe off, since container has iframe support.
hide_blank_weeks:true, // Enable, to demonstrate how we handle changing height, using changeContent
selected:dateString, //Selected date is handled
pageDate:datePage, // Date page is choosen
navigator:navConfig // Year navigation is enabled with the localization params
});
}
//Localization
calendar.cfg.setProperty("MONTHS_SHORT", ["Oc", "Şub", "Mart", "Nis", "May", "Haz", "Tem", "Ağu", "Eyl", "Ekim", "Kas", "Ara"]);
calendar.cfg.setProperty("MONTHS_LONG", ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"]);
calendar.cfg.setProperty("WEEKDAYS_1CHAR", ["P", "S", "Ç", "P", "C", "C", "P"]);
calendar.cfg.setProperty("WEEKDAYS_SHORT", ["Pzt", "Sl", "Çr", "Pr", "Cm", "Cmt", "Pz"]);
calendar.cfg.setProperty("WEEKDAYS_MEDIUM",["Pzt", "Sl", "Çr", "Pr", "Cm", "Cmt", "Pz"]);
calendar.cfg.setProperty("WEEKDAYS_LONG", ["Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi", "Pazar"]);
calendar.selectEvent.subscribe(function() {
if (calendar.getSelectedDates().length > 0) {
var selDate = calendar.getSelectedDates()[0];
//Date Output
var dStr = selDate.getDate();
var mStr = selDate.getMonth()+1;
var yStr = selDate.getFullYear();
Dom.get(dateText).value = dStr + "-" + mStr + "-" + yStr;
Dom.get(dateText+"_DD").value = dStr;
Dom.get(dateText+"_MM").value = mStr;
Dom.get(dateText+"_YY").value = yStr;
if(isTime){
Dom.get(dateText+"_HOVAL").value = validateTimeStrings(Dom.get(dateText+"_HOVAL").value);
Dom.get(dateText+"_MIVAL").value= validateTimeStrings(Dom.get(dateText+"_MIVAL").value);
Dom.get(dateText+"_HO").value = Dom.get(dateText+"_HOVAL").value;
Dom.get(dateText+"_MI").value = Dom.get(dateText+"_MIVAL").value;
}
}
dialog.destroy();
});
calendar.renderEvent.subscribe(function() {
// Tell Dialog it's contents have changed
dialog.fireEvent("changeContent");
});
calendar.render();
}
var xy = Dom.getXY(Dom.get(dateButton));
xy[0] += 10;
xy[1] += 10;
Dom.setXY ('popupCalContainer', xy, false);
dialog.show();
}
function validateCalTime(object,hourOrMin,inputName){
var Dom = YAHOO.util.Dom;
object.value = object.value.replace(/[^0-9]/g, "");
if(hourOrMin==1 && object.value>=60) {
object.value = '00';
hourObject = Dom.get(inputName + '_HOVAL');
if(hourObject.value != '')
hourObject.value = parseInt(hourObject.value)+1;
if(Dom.get(inputName + '_HOVAL').value>24)
Dom.get(inputName + '_HOVAL').value = '00';
}
if(hourOrMin==0 && object.value>24){
object.value = '00';
}
}
function validateTimeStrings(stringValue){
if(stringValue == undefined)
return '';
if(stringValue.length==1)
stringValue = '0'+stringValue;
if(stringValue.length==0)
stringValue = '';
return stringValue;
}