I am using that to use the FullCalendar in Angularjs.
It displays the calendar and showing no errors;
<div class="calendar" ng-model="eventSources" id="eventCalendar" calendar="calendar" config="uiConfig.calendar" ui-calendar="uiConfig.calendar"></div>
but it wont display the events, i am not sure if i am doing it right, but it shows no error and i search through the internet and didnt find a solution yet. Could anybody give me a hint why its not working?
Here is the code snippet:
var calApp = angular.module('usercalapp', ['ui.bootstrap','dialogs','ngCookies','ui.calendar']);
calApp.controller('UserCtrl', function ($scope, $http, $rootScope, $timeout,,$dialogs,$cookieStore,$pile,uiCalendarConfig)
{
$scope.eventSources = [];
$scope.calendar = $('#calendar');
$scope.uiConfig = {
calendar : {
height: 450,
editable: true,
header: {
left: 'month basicWeek basicDay',
center: 'title',
right: 'today prev, next'
},
dayClick: $scope.alertEventOnClick,
eventDrop: $scope.alertOnDrop,
eventResize: $scope.alertOnSize
}
};
$scope.cal_func = function()
{
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$scope.eventSources = [
{
title: 'All Day Test Event',
start: new Date(y, m, 1)
},
{
title: 'Long Test Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, d - 2)
},
{
title: 'Test Birthday Party',
start: new Date(y, m, d + 1, 19, 0),
end: new Date(y, m, d + 1, 22, 30),
allDay: false
}];
$scope.calendar.fullCalendar('refetchEvents');
};
$scope.showColorPicker = function(index)
{
$cookieStore.showuserid = index;
dlg = $dialogs.create('/dialogs/pickColor.html','pickColorCtrl',{},{key:false ,back:'static'});
dlg.result.then(function()
{
$scope.cal_func();
});
};
....
so i wanted that the user chooses a color, and then 3 events should show up in the Calendar, but nothing happens...
I am using that https://github./angular-ui/ui-calendar to use the FullCalendar in Angularjs.
It displays the calendar and showing no errors;
<div class="calendar" ng-model="eventSources" id="eventCalendar" calendar="calendar" config="uiConfig.calendar" ui-calendar="uiConfig.calendar"></div>
but it wont display the events, i am not sure if i am doing it right, but it shows no error and i search through the internet and didnt find a solution yet. Could anybody give me a hint why its not working?
Here is the code snippet:
var calApp = angular.module('usercalapp', ['ui.bootstrap','dialogs','ngCookies','ui.calendar']);
calApp.controller('UserCtrl', function ($scope, $http, $rootScope, $timeout,,$dialogs,$cookieStore,$pile,uiCalendarConfig)
{
$scope.eventSources = [];
$scope.calendar = $('#calendar');
$scope.uiConfig = {
calendar : {
height: 450,
editable: true,
header: {
left: 'month basicWeek basicDay',
center: 'title',
right: 'today prev, next'
},
dayClick: $scope.alertEventOnClick,
eventDrop: $scope.alertOnDrop,
eventResize: $scope.alertOnSize
}
};
$scope.cal_func = function()
{
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
$scope.eventSources = [
{
title: 'All Day Test Event',
start: new Date(y, m, 1)
},
{
title: 'Long Test Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, d - 2)
},
{
title: 'Test Birthday Party',
start: new Date(y, m, d + 1, 19, 0),
end: new Date(y, m, d + 1, 22, 30),
allDay: false
}];
$scope.calendar.fullCalendar('refetchEvents');
};
$scope.showColorPicker = function(index)
{
$cookieStore.showuserid = index;
dlg = $dialogs.create('/dialogs/pickColor.html','pickColorCtrl',{},{key:false ,back:'static'});
dlg.result.then(function()
{
$scope.cal_func();
});
};
....
so i wanted that the user chooses a color, and then 3 events should show up in the Calendar, but nothing happens...
Share Improve this question edited Dec 9, 2014 at 13:52 VSri58 3,7612 gold badges16 silver badges16 bronze badges asked Dec 9, 2014 at 13:40 MrsNobodyMrsNobody 451 silver badge9 bronze badges 03 Answers
Reset to default 7Here, in your eventSources
you have entered the events directly.
What you should do is provide a list of arrays in which you have stored your events.
Something like this:
$scope.eventSources = [$scope.myEvents, $scope.someOtherArray, $scope.otherEvents];
and in $scope.myEvents
, you can put your events.
$scope.myEvents = [
{
title: 'All Day Test Event',
start: new Date(y, m, 1)
},
{
title: 'Long Test Event',
start: new Date(y, m, d - 5),
end: new Date(y, m, d - 2)
},
{
title: 'Test Birthday Party',
start: new Date(y, m, d + 1, 19, 0),
end: new Date(y, m, d + 1, 22, 30),
allDay: false
}
];
$scope.someOtherArray, $scope.otherEvents
can be some other source for events.
As far as colors are concerned, you can customize them either through events object or event source object
$scope.someOtherArray = [];
$scope.weeklyEvents = {
color: '#656565',
textColor: 'white',
events: []
};
$scope.otherEvents = {
color: '#B2B2B2',
textColor: 'black',
events: []
};
You can modify your code to use either of the above two mentioned approaches(Visit those links).
What worked me is.
Instead of this.
$scope.eventSources = [$scope.myEvents, $scope.someOtherArray, $scope.otherEvents];
TRY THIS
$scope.eventSources.push($scope.myEvents);
I used
$scope.callCalendar = function (){
... ...
};
and in html file:
<div ui-calendar="uiConfig.calendar" class="span8 calendar" ng-model="eventSources"></div>
The events doesn't show up in the calendar; but I found the $scope.events
has correct value in console.log($scope.events)
.