View difference between Paste ID: HHRF88Tq and W5Le28Ys
SHOW: | | - or go back to the newest paste.
1-
/* From my index.html 
1+
//*********************************
2
// From my index.html file
3-
*/
3+
//*********************************
4
<script data-main="js/main" src="js/libs/require/require.js"></script>
5-
/* Main.js */
5+
6
7
//*********************************
8
// Main.js
9
//*********************************
10
11
require.config({
12
    paths:{
13
        jquery:'libs/jquery/jquery-1.7.2.min',
14
        underscore:'libs/underscore/underscore-min',
15
        backbone:'libs/backbone/backbone-min',
16
        text:'libs/require/text',
17
        order:'libs/require/order',
18
        xdomainajax:'libs/jquery/jquery.xdomainajax'
19
        //templates: '../templates'
20
    }
21
22
});
23
24
//Loading up the required library dependencies and the app.
25
require([
26
    // Loading the libs
27
    'order',
28
    'text',
29
    'order!jquery',
30
    'order!xdomainajax',
31
    'order!underscore',
32
    'order!backbone'
33
]);
34
35
define([
36
// Load our app module and pass it to our definition function
37
    'app'
38
], function (App)
39
    {
40
        // The "app" dependency is passed in as "App"
41
        // Again, the other dependencies passed in are not "AMD" therefore don't pass a parameter to this function
42
        App.initialize();
43
    }
44
);
45
46
47
//*********************************
48
// App.js
49
//*********************************
50
51
define(
52
    [
53
        "order!ConfigModel",
54
        "order!router"
55
    ], function (configModel,Router)
56
    {
57
        var dataURL = "http://mysite.com/downloadJson.aspx?config=1&db=prod";
58
        var init = function ()
59
        {
60
            console.log('Loading: ' + dataURL);
61
	    //Commenting the following try loading up the web service from the ConfigModel instead
62
            //getConfig(dataURL); 
63
        }
64
65
        return {
66
            initialize:init
67
        };
68
69
        function initRouter()
70
        {
71
            console.log("Starting Router");
72
            new Router();
73
            Backbone.history.start();
74
        }
75
76
        //Load up the JSON here.
77
        function getConfig(url)
78
        {
79
            //NOTE: Was running into a xdomain issue here. Now loading using jquery.xdomainajax.js
80
            $.ajax({
81
                url:dataURL,
82
                type:'GET', //Need to use GET for the xdomainajax plugin to work.
83
                success:function (data)
84
                {
85
                    venueAngles.disabled = false;
86
                    venueLayers.disabled = false;
87
88
                    if (data.responseText)
89
                    {
90
                        data = data.responseText.replace(/<script[^>]*>[\s\S]*?<\/script>/gi, '');
91
                        data = data.replace(/<head[^>]*>[\s\S]*?<\/head>/gi, '');
92
93
                        data = data.replace(/<body>/gi, "");
94
                        data = data.replace(/<p>/gi, "");
95
                        data = data.replace(/<\/p>/gi, "");
96
                        data = data.replace(/<\/body>/gi, "");
97
98
                        data = data.replace(/<html>/gi, "");
99
                        data = data.replace(/<\/html>/gi, "");//To do need JSON instead of HTML
100
                        data = jQuery.trim(data)
101
                        data = JSON.parse(data);
102
103
                        //Creating the ConfigModel and storing the JSON data in it.
104
                        console.log(configModel);
105
                        configModel.set({data:data});
106
                        var modelData=configModel.get("data");
107
                        console.log(modelData);
108
                     
109
                        //Start the router.
110
                        initRouter();
111
112
                    }
113
                }
114
            });
115
116
        }
117
118
119
    });
120
121
122
123
//*********************************
124
// ConfigModel.js
125
//*********************************
126
127
define([
128
], function ()
129
    {
130
        var ConfigModel =  Backbone.Model.extend(
131
        {
132
            defaults:
133
            {
134
                data:null
135
            },
136
            initialize : function()
137
            {
138
                console.log("ConfigModel Initialized!")
139
            },
140
            url: "http://myservice.com/downloadJson.aspx?config=1&db=prod",
141
            parse: function(resp,xhr)
142
            {
143
		//Not getting any response here :(
144
                alert("Response!!");
145
            }
146
147
        });
148
	
149
	//Should I be creating the model here? I need it to be a singleton and exist
150
	//all through the application.. Also be injected into Views/Controllers
151
        var configModel = new ConfigModel;
152
        return configModel;
153
    }
154
155
);