package { import flash.display.Sprite; import flash.events.MouseEvent; import fl.events.DataGridEvent; import fl.controls.dataGridClasses.DataGridColumn; import fl.data.DataProvider; import flash.events.Event; import flash.net.URLRequest; import flash.display.DisplayObject; public class Kalendar extends Sprite { public var ob:Object; public var calendar:gkalend = new gkalend ;//kalendar public var gapX:int = 30; public var gapY:int = 24; public var _current_date = new Date(); public var _dnesniYear:Number = _current_date.getFullYear(); public var _dnesniMonth:Number = _current_date.getMonth(); public var _currentYear:Number = _current_date.getFullYear(); public var _currentMonth:Number = _current_date.getMonth(); public var monthdaysOlympic_arr = new Array(31,29,31,30,31,30,31,31,30,31,30,31); public var monthdaysNormal_arr = new Array(31,28,31,30,31,30,31,31,30,31,30,31); public function Kalendar() { addChild(calendar); } function dayStart(month:int,year:int):int { var tmpDate:Date = new Date(year,month,1); return (tmpDate.getDay()); } function daysMonth(month:int,year:int):int { var tmp:int = year % 4; if (tmp==0) { return (monthdaysOlympic_arr[month]); } else { return (monthdaysNormal_arr[month]); } } public function fkalendar():void { ob.kal.clearCalendar(); ob.kal.builtCalendar(); ob.nahxml.nahlok(); ob.fun1.animtlac(); ob.loa.gsezserver(); } public function clearCalendar():void { var total:Number = ob.kal.calendar.mList.numChildren - 1; for (var i:int=total; i>=0; i--) { ob.kal.calendar.mList.getChildAt(i).removeEventListener(MouseEvent.MOUSE_DOWN,ob.kal.goznacdat); ob.kal.calendar.mList.removeChildAt(i); } } public function builtCalendar():void { var totalDay:int = ob.kal.daysMonth(_currentMonth,_currentYear); var firstDay:int = ob.kal.dayStart(_currentMonth,_currentYear); var hisY:int = 0; var item:DateItem; for (var i:int=1; i<=totalDay; i++) { item = new DateItem ; item.txt.text = String(i); item.addEventListener(MouseEvent.MOUSE_DOWN,ob.kal.goznacdat,false,0,true); item.x = gapX * firstDay; item.y = hisY; if (firstDay>=6) { firstDay = 0; hisY += gapY; } else { firstDay++; } ob.kal.calendar.mList.addChild(item); } ob.kal.calendar.title.text=_currentYear+"-"+ob.fun1.dat(_currentMonth+1); } public function nahxml():void { var request:URLRequest = new URLRequest("team.xml"); ob.prom.loadery.load(request); ob.prom.loadery.addEventListener(Event.COMPLETE, lloaderCompleteHandler); } public function lloaderCompleteHandler(event: Event):void { ob.prom.teamXML = new XML(ob.prom.loadery.data); var nameCol:DataGridColumn = new DataGridColumn("name"); nameCol.headerText = "Jméno"; nameCol.width = 90; var avgCol:DataGridColumn = new DataGridColumn("avg"); avgCol.headerText = "lokal"; avgCol.width = 60; var bvgCol:DataGridColumn = new DataGridColumn("bvg"); bvgCol.headerText = "server"; bvgCol.width = 60; var cvgCol:DataGridColumn = new DataGridColumn("cvg"); cvgCol.headerText = "stav"; cvgCol.width = 40; var one:XMLList = ob.prom.teamXML..p.attribute("name"); var arr:Array = new Array ; for (var i: uint = 0; i < one.length(); i++) { if (i<1) { arr.push({ name: one[i], cvg: "Ano" }); } else { arr.push({ name: one[i], cvg: "Ne" }); } } var myDP:DataProvider = new DataProvider(arr); calendar.aDg.columns = [nameCol,avgCol,bvgCol,cvgCol]; calendar.aDg.width = 250; calendar.aDg.dataProvider = myDP; calendar.aDg.addEventListener("change", gridItemSelected); calendar.aDg.rowCount = 4; calendar.aDg.allowMultipleSelection = true; ob.prom.loadery.removeEventListener(Event.COMPLETE, lloaderCompleteHandler); ob.nahk.ffvyber(); } public function gridItemSelected(e: Event):void { var dobj:Object; for (var pot: int = 0; pot < calendar.aDg.dataProvider.length; pot++) { dobj = calendar.aDg.getItemAt(pot); if (dobj.cvg == "Ano") { dobj.cvg = "Ne"; dobj.avg = ""; dobj.bvg = ""; } } /*if (e.target.selectedItem.cvg == "Ano") { e.target.selectedItem.cvg = "Ne"; e.target.selectedItem.avg = ""; e.target.selectedItem.bvg = ""; }*/ if (e.target.selectedItem.cvg != "Ano") { e.target.selectedItem.cvg = "Ano"; ob.text7.text = e.target.selectedItem.name; ob.text7.setTextFormat(ob.textFormat1); //fkalendar(); ob.loa.gsezserver(); ob.nahk.ffvyber(); } /*for (var spot: int = 0; spot < calendar.aDg.dataProvider.length; spot++) { dobj = calendar.aDg.getItemAt(spot); if (dobj.cvg == "Ne") { dobj.avg = ""; dobj.bvg = ""; } }*/ } public function goznacdat(event:MouseEvent):void { if (ob.prom.hlidej == 0) { ob.prom.objj = DisplayObject(event.target.parent); var total:int = calendar.mList.numChildren; var mbj:Object; for (var i:int =0; i ob.prom.krok) { ob.prom.krok++; } else { stage.removeEventListener(Event.ENTER_FRAME,kalennahrej); ob.prom.krok = 0; } } function prevMonth(e:MouseEvent):void { if (_currentMonth==0) { _currentMonth = 11; _currentYear--; } else { _currentMonth--; } clearCalendar(); builtCalendar(); ob.loa.gsezserver(); } function nextMonth(e:MouseEvent):void { if (_currentMonth==11) { _currentMonth = 0; _currentYear++; } else { _currentMonth++; } clearCalendar(); builtCalendar(); ob.loa.gsezserver(); } function prevYear(e:MouseEvent):void { _currentYear--; clearCalendar(); builtCalendar(); ob.loa.gsezserver(); } function nextYear(e:MouseEvent):void { _currentYear++; clearCalendar(); builtCalendar(); ob.loa.gsezserver(); } } }