[CLOSED] Script Error with Calendar "types[config.xtype || defaultType] is not a constructor"

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    [CLOSED] Script Error with Calendar "types[config.xtype || defaultType] is not a constructor"

    Error: types[config.xtype || defaultType] is not a constructor
    Source File: http://localhost/Aksia.Intranet.2010...t-all-debug.js
    
    
    Line in ext-all-debug.js:
            create : function(config, defaultType){
                return config.render ? config : new types[config.xtype || defaultType](config);
            },
    Getting this from error console using FireFox 3.6.

    Page code:

    <%@ Page Title="" Language="C#" AutoEventWireup="true" CodeBehind="Calendar.aspx.cs"
        Inherits="Aksia.Intranet.Calendar" %>
    
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title>Ext.NET Calendar</title>
        <ext:ResourcePlaceHolder ID="ResourcePlaceHolder1" runat="server" Mode="Style" />
        <link href="App_Themes/AksiaOriginal/calendar.css" rel="stylesheet" type="text/css" />
        <ext:ResourcePlaceHolder ID="ResourcePlaceHolder2" runat="server" Mode="Script" />
        <script src="Scripts/Calendar.js" type="text/javascript"></script>
    </head>
    <body>
        <form id="Form1" runat="server">
        <ext:ResourceManager ID="ResourceManager1" runat="server" ScriptMode="Debug" IDMode="Explicit"
            InitScriptMode="Linked" RemoveViewState="true" Namespace="AksiaCalendar" />
        <ext:Viewport ID="Viewport1" runat="server" Layout="Border">
            <Items>
                <ext:Panel ID="Panel1" runat="server" Height="35" Border="false" Region="North" Cls="app-header"
                    BodyCssClass="app-header-content">
                    <Content>
                        <div id="app-logo">
                            <div class="logo-top">
                                &nbsp;</div>
                            <div id="logo-body">
                                &nbsp;</div>
                            <div class="logo-bottom">
                                &nbsp;</div>
                        </div>
                        <h1>
                            Aksia Calendar</h1>
                        <span id="app-msg" class="x-hidden"></span>
                    </Content>
                </ext:Panel>
                <ext:Panel ID="Panel2" runat="server" Title="..." Layout="Border" Region="Center"
                    Cls="app-center">
                    <Items>
                        <ext:Panel ID="Panel3" runat="server" Width="176" Region="West" Border="false" Cls="app-west">
                            <Items>
                                <ext:DatePicker ID="DatePicker1" runat="server" Cls="ext-cal-nav-picker">
                                    <Listeners>
                                        <Select Fn="AksiaCalendar.setStartDate" Scope="AksiaCalendar" />
                                    </Listeners>
                                </ext:DatePicker>
                            </Items>
                            <TopBar>
                                <ext:Toolbar ID="Toolbar1" runat="server">
                                    <Items>
                                        <ext:Button ID="Button1" runat="server" Text="Save All Events" Icon="Disk" OnClientClick="AksiaCalendar.record.saveAll();" />
                                    </Items>
                                </ext:Toolbar>
                            </TopBar>
                        </ext:Panel>
                        <ext:CalendarPanel ID="CalendarPanel1" runat="server" Region="Center" ActiveIndex="2"
                            Border="false">
                            <GroupStore ID="GroupStore1" runat="server">
                                <Groups>
                                    <ext:Group CalendarId="1" Title="Client Meetings" />
                                    <ext:Group CalendarId="2" Title="Leave Tracker" />
                                    <ext:Group CalendarId="3" Title="Manager Meetings" />
                                </Groups>
                            </GroupStore>
                            <EventStore ID="EventStore1" runat="server" DateFormat="M$">
                                <Proxy>
                                    <ext:HttpProxy Url="Services/CalendarService.asmx/GetEvents" Json="true" />
                                </Proxy>
                                <Reader>
                                    <ext:JsonReader Root="d" />
                                </Reader>
                                <BaseParams>
                                    <ext:Parameter Name="start" Value="" Mode="Value" />
                                    <ext:Parameter Name="end" Value="" Mode="Value" />
                                </BaseParams>
                            </EventStore>
                            <MonthView ID="MonthView1" runat="server" ShowHeader="true" ShowWeekLinks="true"
                                ShowWeekNumbers="true" />
                            <Listeners>
                                <ViewChange Fn="AksiaCalendar.viewChange" Scope="AksiaCalendar" />
                                <EventClick Fn="AksiaCalendar.record.show" Scope="AksiaCalendar" />
                                <DayClick Fn="AksiaCalendar.dayClick" Scope="AksiaCalendar" />
                                <RangeSelect Fn="AksiaCalendar.rangeSelect" Scope="AksiaCalendar" />
                                <EventMove Fn="AksiaCalendar.record.move" Scope="AksiaCalendar" />
                                <EventResize Fn="AksiaCalendar.record.resize" Scope="AksiaCalendar" />
                                <EventDelete Fn="AksiaCalendar.record.remove" /> 
                            </Listeners>
                        </ext:CalendarPanel>
                    </Items>
                </ext:Panel>
            </Items>
        </ext:Viewport>
        <ext:EventEditWindow ID="EventEditWindow1" runat="server" Hidden="true" GroupStoreID="GroupStore1">
            <Listeners>
                <EventAdd Fn="AksiaCalendar.record.add" Scope="AksiaCalendar" />
                <EventUpdate Fn="AksiaCalendar.record.update" Scope="AksiaCalendar" />
                <EditDetails Fn="AksiaCalendar.record.edit" Scope="AksiaCalendar" />
                <EventDelete Fn="AksiaCalendar.record.remove" Scope="AksiaCalendar" />
            </Listeners>
        </ext:EventEditWindow>
        </form>
    </body>
    </html>
    Calendar.js

    var AksiaCalendar = {
        getCalendar: function () {
            return AksiaCalendar.CalendarPanel1;
        },
    
        getStore: function () {
            return AksiaCalendar.EventStore1;
        },
    
        getWindow: function () {
            return AksiaCalendar.EventEditWindow1;
        },
    
        viewChange: function (p, vw, dateInfo) {
            var win = this.getWindow();
    
            if (win) {
                win.hide();
            }
    
            if (dateInfo !== null) {
                // will be null when switching to the event edit form, so ignore
                this.DatePicker1.setValue(dateInfo.activeDate);
                this.updateTitle(dateInfo.viewStart, dateInfo.viewEnd);
            }
        },
    
        updateTitle: function (startDt, endDt) {
            var msg = '';
    
            if (startDt.clearTime().getTime() == endDt.clearTime().getTime()) {
                msg = startDt.format('F j, Y');
            } else if (startDt.getFullYear() == endDt.getFullYear()) {
                if (startDt.getMonth() == endDt.getMonth()) {
                    msg = startDt.format('F j') + ' - ' + endDt.format('j, Y');
                } else {
                    msg = startDt.format('F j') + ' - ' + endDt.format('F j, Y');
                }
            } else {
                msg = startDt.format('F j, Y') + ' - ' + endDt.format('F j, Y');
            }
    
            this.Panel1.setTitle(msg);
        },
    
        setStartDate: function (picker, date) {
            this.getCalendar().setStartDate(date);
        },
    
        rangeSelect: function (cal, dates, callback) {
            this.record.show(cal, dates);
            this.getWindow().on('hide', callback, cal, { single: true });
        },
    
        dayClick: function (cal, dt, allDay, el) {
            this.record.show.call(this, cal, {
                StartDate: dt,
                IsAllDay: allDay
            }, el);
        },
    
        record: {
            add: function (win, rec) {
                win.hide();
                rec.data.IsNew = false;
                this.getStore().add(rec);
                this.ShowMsg('Event ' + rec.data.Title + ' was added');
            },
    
            update: function (win, rec) {
                win.hide();
                rec.commit();
                this.ShowMsg('Event ' + rec.data.Title + ' was updated');
            },
    
            remove: function (win, rec) {
                this.getStore().remove(rec);
                win.hide();
                this.ShowMsg('Event ' + rec.data.Title + ' was deleted');
            },
    
            edit: function (win, rec) {
                win.hide();
                this.getCalendar().showEditForm(rec);
            },
    
            resize: function (cal, rec) {
                rec.commit();
                this.ShowMsg('Event ' + rec.data.Title + ' was updated');
            },
    
            move: function (cal, rec) {
                rec.commit();
                this.ShowMsg('Event ' + rec.data.Title + ' was moved to ' + rec.data.StartDate.format('F jS' + (rec.data.IsAllDay ? '' : ' \\a\\t g:i a')));
            },
    
            show: function (cal, rec, el) {
                this.getWindow().show(rec, el);
            },
    
    //        saveAll: function () {
    //            CompanyX.getStore().submitData();
    //        }
            saveAll: function () {
                Ext.net.DirectEvent.request({
                    url: "../Services/CalendarService.asmx/SaveAll",
                    json: true,
                    cleanRequest: true,
                    extraParams: {
                        events: AksiaCalendar.getStore().getRecordsValues()
                    }
                });
            }
    
        }
    };
    Last edited by Daniil; Oct 18, 2010 at 6:47 PM. Reason: Please use [CODE] tags for any code, [CLOSED]
  2. #2
    Hi,

    Unfortunatelly, I cannot reproduce that error. Try to update from SVN
  3. #3
    I updated and still getting same.
    I tried to change from Debug to Release mode in the resource manger and I'm getting a similiar, but slightly different error:

    Error: b[d.xtype || e] is not a constructor
    Source File: http://localhost/Aksia.Intranet.2010...tjs/ext-all.js
    Line: 7

    My Ext.NET 1.0 version is:
    1.0.3938.16138
  4. #4
    Could this have something to do with the config file not being there? I noticed in the Examples Calendar/Remote_Data that there is a config file. I didn't use this...
  5. #5
    Hi,

    No, it cannot be the issue. Can you post generated html (in the browser click on View source)?
  6. #6
    Hi Vlad,
    Worth noting, the line:
    <script type="text/javascript" src="/Aksia.Intranet.2010/extnet/ux/calendar/calendar-all.js"></script>

    I map the VD "extnet" to the "Ext.Net/Build/Ext.Net" folder.

    These scripts are located in "extnet/ux/extensions/calendar/calendar-all.js" on my machine, not the URL above...

    Could that be the problem?

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1"><title>
    	Ext.NET Calendar
    </title>
    	<link rel="stylesheet" type="text/css" href="/Aksia.Intranet.2010/extnet/extjs/resources/css/ext-all.css" />
    
    	<link rel="stylesheet" type="text/css" href="/Aksia.Intranet.2010/extnet/ux/calendar/resources/css/calendar.css" />
    <link href="App_Themes/AksiaOriginal/calendar.css" rel="stylesheet" type="text/css" />
    	<script type="text/javascript" src="/Aksia.Intranet.2010/extnet/extjs/adapter/ext/ext-base.js"></script>
    	<script type="text/javascript" src="/Aksia.Intranet.2010/extnet/extjs/ext-all.js"></script>
    	<script type="text/javascript" src="/Aksia.Intranet.2010/extnet/extnet/extnet-core.js"></script>
    
    	<script type="text/javascript" src="/Aksia.Intranet.2010/extnet/ux/calendar/calendar-all.js"></script>
    	<script type="text/javascript" src="/Aksia.Intranet.2010/extnet/extnet/extnet-data.js"></script>
    	<script type="text/javascript">
    	//<![CDATA[
    		Ext.net.ResourceMgr.init({id:"ResourceManager1",BLANK_IMAGE_URL:"/Aksia.Intranet.2010/extnet/extjs/resources/images/default/s.gif",aspForm:"Form1",theme:"blue",ns:"AksiaCalendar",appName:"Aksia.Intranet.2010",icons:["Disk"]});Ext.onReady(function(){Ext.QuickTips.init();Ext.ns("AksiaCalendar");Ext.apply(AksiaCalendar, { ShowMsg:function(msg,config){Ext.net.DirectMethod.request("ShowMsg",Ext.applyIf(config || {}, {params:{msg:msg}}));} });new Ext.net.Viewport({id:"Viewport1",renderTo:"Form1",items:[{id:"Panel1",contentEl:"Panel1_Content",cls:"app-header",height:35,region:"north",bodyCssClass:"app-header-content",border:false},{id:"Panel2",cls:"app-center",region:"center",items:[{id:"Panel3",cls:"app-west",region:"west",width:176,items:{id:"DatePicker1",xtype:"datepicker",cls:"ext-cal-nav-picker",format:"n/j/Y",listeners:{select:{scope:AksiaCalendar,fn:AksiaCalendar.setStartDate}}},layout:"auto",tbar:{id:"Toolbar1",xtype:"toolbar",items:[{id:"Button1",handler:function(el,e){AksiaCalendar.record.saveAll();},iconCls:"icon-disk",text:"Save All Events"},{xtype:"nettbspacer"}]},border:false},{id:"CalendarPanel1",xtype:"calendarpanel",region:"center",activeItem:2,border:false,calendarStore:this.AksiaCalendar.GroupStore1=new Ext.ux.data.PagingStore({proxyId:"GroupStore1",autoLoad:true,reader:new Ext.data.JsonReader({fields:[{name:"CalendarId",type:"int"},{name:"Title",type:"string"}],idProperty:"CalendarId"}),directEventConfig:{},proxy:new Ext.data.PagingMemoryProxy([{"CalendarId":1,"Title":"Client Meetings"},{"CalendarId":2,"Title":"Leave Tracker"},{"CalendarId":3,"Title":"Manager Meetings"}], false)}),eventStore:this.AksiaCalendar.EventStore1=new Ext.net.Store({proxyId:"EventStore1",autoLoad:true,proxy:new Ext.data.HttpProxy({url:"/Aksia.Intranet.2010/Services/CalendarService.asmx/GetEvents",json:true}),reader:new Ext.data.JsonReader({fields:[{name:"EventId",type:"int"},{name:"CalendarId",type:"int"},{name:"Title",type:"string"},{name:"StartDate",type:"date",dateFormat:"M$"},{name:"EndDate",type:"date",dateFormat:"M$"},{name:"Location",type:"string"},{name:"Notes",type:"string"},{name:"Url",type:"string"},{name:"IsAllDay",type:"boolean"},{name:"Reminder",type:"string"},{name:"IsNew",type:"boolean"}],root:"d"}),directEventConfig:{},beforeLoadParams:function(store,options){if (!options.params){options.params = {};};Ext.apply(options.params,{"end":""});Ext.applyIf(options.params,{"start":""});}}),monthViewCfg:{id:"MonthView1",xtype:"monthview",showHeader:true,showWeekLinks:true,showWeekNumbers:true},editViewCfg:{renderFormElement : false},listeners:{dayclick:{scope:AksiaCalendar,fn:AksiaCalendar.dayClick},eventclick:{scope:AksiaCalendar,fn:AksiaCalendar.record.show},eventdelete:{fn:AksiaCalendar.record.remove},eventmove:{scope:AksiaCalendar,fn:AksiaCalendar.record.move},eventresize:{scope:AksiaCalendar,fn:AksiaCalendar.record.resize},rangeselect:{scope:AksiaCalendar,fn:AksiaCalendar.rangeSelect},viewchange:{scope:AksiaCalendar,fn:AksiaCalendar.viewChange}}}],layout:"border",title:"..."}],layout:"border"});new Ext.calendar.EventEditWindow({id:"EventEditWindow1",hidden:true,calendarStore:AksiaCalendar.GroupStore1,listeners:{eventadd:{scope:AksiaCalendar,fn:AksiaCalendar.record.add},eventdelete:{scope:AksiaCalendar,fn:AksiaCalendar.record.remove},eventupdate:{scope:AksiaCalendar,fn:AksiaCalendar.record.update},editdetails:{scope:AksiaCalendar,fn:AksiaCalendar.record.edit}}});});
    	//]]>
    	</script>
    
        <script src="Scripts/Calendar.js" type="text/javascript"></script>
    <link href="App_Themes/AksiaOriginal/alerts.css" type="text/css" rel="stylesheet" /><link href="App_Themes/AksiaOriginal/calendar.css" type="text/css" rel="stylesheet" /><link href="App_Themes/AksiaOriginal/dynamicForms.css" type="text/css" rel="stylesheet" /><link href="App_Themes/AksiaOriginal/feedviewer.css" type="text/css" rel="stylesheet" /><link href="App_Themes/AksiaOriginal/portoflio.css" type="text/css" rel="stylesheet" /><link href="App_Themes/AksiaOriginal/StyleSheet.css" type="text/css" rel="stylesheet" /></head>
    <body>
        <form name="Form1" method="post" action="Calendar.aspx" id="Form1">
    
    <div>
    <input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" />
    <input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" />
    
    </div>
    
    <script type="text/javascript">
    //<![CDATA[
    var theForm = document.forms['Form1'];
    if (!theForm) {
        theForm = document.Form1;
    }
    function __doPostBack(eventTarget, eventArgument) {
        if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
            theForm.__EVENTTARGET.value = eventTarget;
            theForm.__EVENTARGUMENT.value = eventArgument;
            theForm.submit();
        }
    }
    //]]>
    </script>
    
    
        
        
    	
    	<div id="Panel1_Content" class="x-hidden">
                        <div id="app-logo">
                            <div class="logo-top">
                                &nbsp;</div>
    
                            <div id="logo-body">
                                &nbsp;</div>
                            <div class="logo-bottom">
                                &nbsp;</div>
                        </div>
                        <h1>Aksia Calendar</h1>
                        <span id="app-msg" class="x-hidden"></span>
                    </div>
    
    	
    	
    
    
    	
    
    
    
    
    
    
    	
    
    
    
    
    
    
    
    
    
        
    
    
        </form>
    </body>
    </html>

Similar Threads

  1. [CLOSED] How does "MaskCls" work for "AutoLoad" mask in panel control
    By leon_tang in forum 1.x Legacy Premium Help
    Replies: 5
    Last Post: Jul 19, 2012, 12:09 PM
  2. Replies: 5
    Last Post: May 02, 2012, 5:37 PM
  3. Replies: 4
    Last Post: Oct 11, 2011, 2:42 AM
  4. Replies: 3
    Last Post: Sep 22, 2010, 10:30 AM
  5. Replies: 14
    Last Post: Mar 09, 2010, 12:49 PM

Posting Permissions