Skip to Content
Menu
This question has been flagged

I am using odoo v11. One boolean field is there in res.users object. Based on that field I want to load library in a calendar view. I have tried the following code, but this does not work. It will display an error like self._rpc is not a function.

var is_enable_custom_cal;
var CalendarView = require('web.CalendarView');

CalendarView.include({

    jsLibs: [],

    cssLibs: [],

    init: function (viewInfo, params) {

    var self = this; 

    this._super.apply(this, arguments);

        self._rpc({

            model: 'res.users',

            method: 'get_current_user_cal',

            args: [[]],

    }).then(function (result) {

    is_enable_custom_cal = result['is_enable_custom_cal'];

    if(is_enable_custom_cal){

    self.jsLibs.push('.../static/lib/fullcalendar.js');

    self.cssLibs.push('../static/src/css/fullcalendar.css');

              }else{

              self.jsLibs.push('/web/static/lib/fullcalendar/js/fullcalendar.js');

              self.cssLibs.push('/web/static/lib/fullcalendar/css/fullcalendar.css');

              }

            });

    },
    });
Some Help?

Avatar
Discard

I think you forget to define rpc in first of line on your file.

The rpc functions located in web module if you like to access rpc query and functions you should define below code.

var rpc = require('web.rpc');

We already did it to access calendar library in POS.

We’ll do it.

Author

web.rpc worked for me.Thanks.

Related Posts Replies Views Activity
2
May 22
2471
1
Sep 21
19276
2
May 24
1050
1
Jun 23
1999
0
Feb 23
1273