PageSourceSearch

https://atu.edu.tr/scripts/ogrtopluluk.js?ver=20200117

js atu.edu.tr collected 2026-10-02 05:54:41 UTC 11,183 bytes, 378 lines download raw bytes

1 
2xApp.controller('ogrtoplulukController', function ogrtoplulukController($scope, $rootScope, $routeParams, $location, $q, $window, $route) {
3    $scope.Guid = "";
4    
5    var IcID = $routeParams.IcerikId;
6    var IcGuID = $routeParams.IcGuID;
7    var BirimID = parseInt($routeParams.birimId);
8    var GrupID = parseInt($routeParams.grupId);
9    var UMenuID = parseInt($routeParams.UstMenuId);
10
11    var menuTreeData = [];
12    var menuUstData = [];
13    var UstMenuPath = null;
14    $scope.path = "";
15 //   $scope.Bolumler = [];
16
17    angular.element(document).ready(function () {
18        $rootScope.SayfaUst();
19        $rootScope.AcilirPencere = 2;
20        var promisetopluluk = asyncXXXXTopluluk();
21
22        promisetopluluk.then(function (data) {
23            
24                $scope.topluluk = data;
25           
26                
27        }, function (error) {
28            $scope.topluluk = null;
29            $route.reload();
30            });
31
32        v
33       
34        var promiseTreeMenu = asyncXXXXTreeMenu();
35        
36        
37        promiseTreeMenu.then(function (data) {
38           // alert(JSON.stringify(data));
39            $scope.items = data;
40            var items  = unflatten(data);
41           
42
43        }, function (error) {
44            menuTreeData = null;
45            $route.reload();
46        });
47
48        var promiseUstMenuPath = asyncXXXXUstMenuPath();
49
50            promiseUstMenuPath.then(function (data) {
51                if (data.length === 1) {
52                    UstMenuPath = data[0];
53                    $scope.path = UstMenuPath.Yol2;
54        var promiseUstMenu = asyncXXXXUstMenu();
55
56
57        promiseUstMenu.then(function (data) {
58            
59            $scope.menuUstData = data;
60          
61
62        }, function (error) {
63            menuUstData = null;
64            $route.reload();
65        });
66        
67                }
68                else
69                    UstMenuPath = null;
70            }, function (error) {
71                UstMenuPath = null;
72                $route.reload();
73            });
74
75       
76
77    });
78
79    $scope.items = [];
80    $scope.treeViewItemDataDuzey = -1;
81
82    $scope.treeViewOptions = {
83         
84        width: 300,
85        height: "auto",
86        displayExpr: "MenuAd",
87        keyExpr: "ID",
88        parentIdExpr: "ParentID", 
89        dataStructure: "tree",
90        focusStateEnabled: true,      // Klavyedeki Tab ve Ok tuşlarıyla odaklanmayı sağlar
91        hoverStateEnabled: true,      // Fareyle üzerine gelindiğinde görsel geri bildirim verir
92        adaptivityEnabled: true,
93        bindingOptions: {
94            dataSource: "items"
95        },
96        onContentReady: function (e) {
97            // 1. Alt menüsü olmayan (yaprak) öğelerden aria-expanded özniteliğini kaldır
98            $(e.element).find('.dx-treeview-node-is-leaf').removeAttr('aria-expanded');
99
100            // 2. Rolü olmayan iç div'lerden aria-selected özniteliğini kaldır
101            $(e.element).find('.dx-treeview-item').removeAttr('aria-selected');
102
103            // 3. Ana kapsayıcıdaki aranan hayali ID sorununu çözmek için (gerekirse) aktifi temizleyin
104            $(e.element).removeAttr('aria-activedescendant');
105        },
106        onItemClick: function (e) {
107         
108            var item = e.itemData;
109            $scope.treeViewItemDataDuzey = item.Duzey; 
110
111            $window.location.href = "#!/birimler/" + item.BirimID + "/" + GrupID + "/" + UMenuID;
112             
113        }
114    };
115
116
117    $scope.UstMenuClick = function (IcerikID, IcerikTipNo, IcerikAdres, IcerikGuID, UstMenuID) {
118        if (IcerikTipNo === 1 && IcerikID !== 0)
119            window.open("#!/" + IcerikAdres + "/" + IcerikID + "/" + UstMenuID + "/" + IcerikGuID,"_self" );
120        else if (IcerikTipNo === 1 && IcerikID === 0 && IcerikAdres !== "")
121            window.open("#!/" + IcerikAdres + "/" + UstMenuID, "_self");
122
123        else if (IcerikTipNo === 2)
124            window.open(IcerikAdres, item.Hedef);
125        //$window.location.href = "#!/birimler/" + ID + "/" + GrupID + "/" + UMenuID;
126
127    }
128
129    //Find index to insert new item---->
130    function findItemIndex(arr, elem) {
131        var len = arr.length;
132        for (var i = 0; i < len; i++) {
133            if (arr[i].SiraNo > elem.SiraNo)
134                return i;
135        }
136        return len;
137    }
138
139    function unflatten(arr) {
140        var tree = [],
141            mappedArr = {},
142            arrElem,
143            mappedElem;
144
145        // First map the nodes of the array to an object -> create a hash table.
146        for (var i = 0, len = arr.length; i < len; i++) {
147            arrElem = arr[i];
148            mappedArr[arrElem.ID] = arrElem;
149            mappedArr[arrElem.ID]['items'] = [];
150        }
151
152
153        for (var ID in mappedArr) {
154            if (mappedArr.hasOwnProperty(ID)) {
155                mappedElem = mappedArr[ID];
156                // If the element is not at the root level, add it to its parent array of children.  
157
158                if (mappedElem.ParentID) {
159
160                    //mappedArr[mappedElem['ParentID']]['items'].push(mappedElem);
161                    pushIndex = findItemIndex(mappedArr[mappedElem['ParentID']]['items'], mappedElem);
162                    mappedArr[mappedElem['ParentID']]['items'].splice(pushIndex, 0, mappedElem);
163
164                }
165                // If the element is at the root level, add it to first level elements array.
166                else {
167
168                    //tree.push(mappedElem);
169                    pushIndex = findItemIndex(tree, mappedElem);
170                    tree.splice(pushIndex, 0, mappedElem);
171                }
172
173            }
174        }
175
176        return tree;
177    }
178     
179    $scope.dsTreeMenu = new DevExpress.data.DataSource({
180        store: {
181            type: "odata",
182            url: "https://odata.atu.edu.tr/odata/DataService.svc/Menu",
183            key: "ID",
184            keyType: "Int32"
185        },
186        sort: "SiraNo", 
187        paginate: false, 
188        map: function (itemData) {
189            return {
190                ID: itemData.ID,
191                MenuAd: itemData.MenuAd, 
192                ParentID: UMenuID,  
193                Duzey: 3,
194                IcerikAdres: itemData.IcerikAdres,
195                IcerikID: itemData.IcerikID,
196                IcerikGuID: itemData.IcerikGuID,
197                IcerikTipNo: itemData.IcerikTipNo,
198                BirimID: itemData.BirimID, 
199                Hedef: itemData.Hedef
200            };
201        }
202    });
203
204    
205    var asyncXXXXTreeMenu = function () {
206
207        var d = $q.defer();
208
209        $scope.dsTreeMenu.filter([["SiteID", "=", $scope.SiteID], "and", ["Durum", "=", 1], "and", ["DilKodu", "=", $scope.DilKodu], "and", ["UstMenuID", "=", UMenuID]]);
210        var result = $scope.dsTreeMenu.load();
211
212        result.done(function (data) {
213            
214            d.resolve(data);
215        })
216            .fail(function (error) {
217                d.reject(error);
218                $route.reload();
219            });
220
221        return d.promise;
222    }; 
223
224    var asyncXXXXTopluluk = function () {
225
226        var d = $q.defer();
227
228/*        var filter =  ["ID", "=", BirimID] ;*/
229 
230        //$scope.dsTopluluk.filter(filter);
231
232
233        var resulttopluluk = $scope.dsTopluluk.load();
234
235        resulttopluluk.done(function (data) {
236              
237            d.resolve(data);
238        })
239            .fail(function (error) {
240                d.reject(error);
241                $route.reload();
242            });
243
244        return d.promise;
245    };
246 
247    var asyncXXXXUstMenuPath = function () {
248
249        var d = $q.defer();
250
251        var resultUstMenuPath = $scope.dsUstMenuPath.load();
252
253        resultUstMenuPath.done(function (data) {
254            d.resolve(data);
255        })
256            .fail(function (error) {
257                d.reject(error);
258                $route.reload();
259            });
260
261        return d.promise;
262    };
263
264    $scope.dsUstMenuPath = new DevExpress.data.DataSource({
265        store: {
266            type: "odata",
267            url: "https://odata.atu.edu.tr/odata/DataService.svc/Menu",
268            key: "ID",
269            keyType: "Int32"
270        },
271        map: function (itemData) {
272            return {
273                ID: itemData.ID,
274                Yol2: itemData.Yol2 
275            };
276        } 
277    });
278
279    $scope.dsUstMenuPath.filter("ID", "=", UMenuID);
280
281   
282    var asyncXXXXUstMenu = function () {
283          
284        var str = $scope.path;
285    
286        var array = str.split(',');
287     
288        var filter = []; 
289        var filterID = [];
290 
291        for (var fID in array) {
292        
293            if (array.hasOwnProperty(fID)) {
294                if (array[fID] !== "") {
295                    filterID.push(["ID", "=", parseInt(array[fID])]);
296
297                    if ((array[fID] !== "") && (array[fID] !== array[array.length - 1])) {
298
299                        filterID.push("or");
300                    }
301                }
302
303            }
304        }
305      
306        filter = [["SiteID", "=", $scope.SiteID], "and", ["Durum", "=", 1], "and", ["DilKodu", "=", $scope.DilKodu]];
307        if (array.length>0) filter.push("and", filterID);
308       // alert(filter);
309        $scope.dsUstMenu.filter(filter);
310        $scope.dsUstMenu.sort("Seviye");
311
312        var d = $q.defer();
313  
314
315        var result = $scope.dsUstMenu.load();
316
317        result.done(function (data) {
318            
319            d.resolve(data);
320        })
321            .fail(function (error) {
322                d.reject(error);
323                $route.reload();
324            });
325
326        return d.promise;
327    }; 
328
329    $scope.dsUstMenu = new DevExpress.data.DataSource( 
330        { 
331        store: {
332            type: "odata",
333            url: "https://odata.atu.edu.tr/odata/DataService.svc/Menu",
334            key: "ID",
335            keyType: "Int32"
336        },
337        sort: "Seviye",
338        paginate: false,
339        map: function (itemData) {
340            return {
341                ID: itemData.ID,
342                MenuAd: itemData.MenuAd,
343                Adres: itemData.AdresSatiri, 
344                Duzey: itemData.Seviye,
345                IcerikTipNo: itemData.IcerikTipNo,
346                IcerikID: itemData.IcerikID,
347                UstMenuID: itemData.UstMenuID,
348                IcerikAdres: itemData.IcerikAdres,
349                IcerikGuID: itemData.IcerikGuID
350            };
351        }
352        });
353
354 
355
356    $scope.dsTopluluk = new DevExpress.data.DataSource({
357        store: {
358            type: "odata",
359            url: "https://odata.atu.edu.tr/tplodata/TPLODataService.svc/V_Topluluk",
360            key: "ID",
361            keyType: "Int32"
362        },
363        sort: "Ad", paginate: false,
364        map: function (itemData) {
365            return {
366                Ad: itemData.Ad,
367                Logo: itemData.Logo,
368                Link: itemData.Link 
369               
370            };
371        }
372
373    });
374    
375});
376
377
378 

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.