diff --git a/apps/calendar/ajax/getcal.php b/apps/calendar/ajax/getcal.php
index 06ebebc83a0206b06f75b0e804cc8fb364fb23bb..b20f22957c312a9c78e4b3a937270887eaf17e29 100755
--- a/apps/calendar/ajax/getcal.php
+++ b/apps/calendar/ajax/getcal.php
@@ -17,8 +17,10 @@
  * 59 Temple Place, Suite 330, Boston,            *
  * MA 02111-1307  USA                             *
  *************************************************/
-require_once ("../../lib/base.php");
+require_once ("../../../lib/base.php");
 if(!OC_USER::isLoggedIn()) {
 	die("<script type=\"text/javascript\">document.location = oc_webroot;</script>");
 }
-?>
\ No newline at end of file
+$output = new OC_TEMPLATE("calendar", "part.getcal");
+$output -> printpage();
+?>
diff --git a/apps/calendar/js/calendar.js b/apps/calendar/js/calendar.js
index 116c5717658a0dfeecbe526940a4c8c44202d6d3..614a593ca7487a5f5301c929f524f5b6871d0a8b 100755
--- a/apps/calendar/js/calendar.js
+++ b/apps/calendar/js/calendar.js
@@ -461,7 +461,7 @@ function oc_cal_switch2today() {
 }
 
 function oc_cal_update_eventsvar(loadyear) {
-	$("#js_events").load(oc_webroot + "/apps/calendar/ajax/ajax.php?task=load_events&year=" + loadyear);
+	$("#js_events").load(oc_webroot + "/apps/calendar/ajax/getcal.php?year=" + loadyear);
 	if(document.getElementById("js_events").innerHTML == "nosession") {
 		alert("You are not logged in. That can happen if you don't use owncloud for a long time.");
 		document.location(oc_webroot);
@@ -471,7 +471,7 @@ function oc_cal_update_eventsvar(loadyear) {
 			$( "#parsingfail_dialog" ).dialog();
 		});
 	} else {
-		events.concat(newevents);
+		oc_cal_events[loadyear] = newevents[loadyear];
 	}
 }
 
diff --git a/apps/calendar/js/calendar_init.js b/apps/calendar/js/calendar_init.js
index 72837f7a8b61b47579940fe7721c7c90fbc76202..ab40573da4dfcbfc7d8450f9c2a1863f497de154 100755
--- a/apps/calendar/js/calendar_init.js
+++ b/apps/calendar/js/calendar_init.js
@@ -27,6 +27,8 @@ $(document).ready(function(){
 			alert("abc");
    		}
 	});
+	oc_cal_update_eventsvar(oc_cal_year);
+	oc_cal_update_view('');
 });
 //init date vars
 var oc_cal_date = new Date();
@@ -53,13 +55,4 @@ var oc_cal_datemonthyear =  String(oc_cal_dayofmonth) + String(oc_cal_month) + S
 var oc_cal_calendars = new Array();
 //event vars
 var oc_cal_events = new Array();
-oc_cal_events[2011] = new Array();
-oc_cal_events[2011][7] = new Array();
-oc_cal_events[2011][7][7] = new Array();
-oc_cal_events[2011][7][7]['allday'] = new Array();
-oc_cal_events[2011][7][7]['allday'][1] = new Array();
-oc_cal_events[2011][7][7]['allday'][1]['description'] = 'allday event';
-oc_cal_events[2011][7][13] = new Array();
-oc_cal_events[2011][7][13][10] = new Array();
-oc_cal_events[2011][7][13][10][1] = new Array();
-oc_cal_events[2011][7][13][10][1]['description'] = '10:00 event';
+oc_cal_events[oc_cal_year] = new Array();
diff --git a/apps/calendar/templates/part.getcal.php b/apps/calendar/templates/part.getcal.php
new file mode 100644
index 0000000000000000000000000000000000000000..ad266aafea2a5bde4a609984325754fc7eee888f
--- /dev/null
+++ b/apps/calendar/templates/part.getcal.php
@@ -0,0 +1,15 @@
+<?php $year = $_GET["year"];
+//echo $year; ?>
+<script type="text/javascript">
+var newevents = new Array();
+newevents[2011] = new Array();
+newevents[2011][7] = new Array();
+newevents[2011][7][7] = new Array();
+newevents[2011][7][7]['allday'] = new Array();
+newevents[2011][7][7]['allday'][1] = new Array();
+newevents[2011][7][7]['allday'][1]['description'] = 'allday event';
+newevents[2011][7][13] = new Array();
+newevents[2011][7][13][10] = new Array();
+newevents[2011][7][13][10][1] = new Array();
+newevents[2011][7][13][10][1]['description'] = '10:00 event';
+</script>