D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
ltfsolutionsco
/
public_html
/
wp-content
/
plugins
/
fusion-builder
/
js
/
models
/
Filename :
model-view-manager.js
back
Copy
/* global fusionAllElements */ var FusionPageBuilder = FusionPageBuilder || {}; ( function( $ ) { $( document ).ready( function() { var fusionElements = [], fusionGeneratorElements = []; // Loop over all available elements and add them to Fusion Builder. // Ignore elements tagged with 'hide_from_builder' attribute. _.each( fusionAllElements, function( element ) { var newElement; if ( 'undefined' === typeof element.hide_from_builder ) { newElement = { title: element.name, label: element.shortcode }; if ( 'undefined' === typeof element.generator_only ) { fusionElements.push( newElement ); } else { newElement.generator_only = true; } fusionGeneratorElements.push( newElement ); } } ); //Sort elements alphabetically fusionElements.sort( function( a, b ) { var titleA = a.title.toLowerCase(), titleB = b.title.toLowerCase(); if ( titleA < titleB ) { return -1; } if ( titleA > titleB ) { return 1; } return 0; } ); // Sort generator elements alphabetically fusionGeneratorElements.sort( function( a, b ) { var titleA = a.title.toLowerCase(), titleB = b.title.toLowerCase(); if ( titleA < titleB ) { return -1; } if ( titleA > titleB ) { return 1; } return 0; } ); FusionPageBuilder.ViewManager = Backbone.Model.extend( { defaults: { modules: fusionElements, generator_elements: fusionGeneratorElements, elementCount: 0, views: {} }, getView: function( cid ) { return this.get( 'views' )[ cid ]; }, getChildViews: function( parentID ) { var views = this.get( 'views' ), childViews = {}; _.each( views, function( view, key ) { if ( parentID === view.model.attributes.parent ) { childViews[ key ] = view; } } ); return childViews; }, generateCid: function() { var elementCount = this.get( 'elementCount' ) + 1; this.set( { elementCount: elementCount } ); return elementCount; }, addView: function( cid, view ) { var views = this.get( 'views' ); views[ cid ] = view; this.set( { views: views } ); }, removeView: function( cid ) { var views = this.get( 'views' ), updatedViews = {}; _.each( views, function( value, key ) { if ( key != cid ) { // jshint ignore:line updatedViews[ key ] = value; } } ); this.set( { views: updatedViews } ); }, removeViews: function() { var updatedViews = {}; this.set( { views: updatedViews } ); }, countElementsByType: function( elementType ) { var views = this.get( 'views' ), num = 0; _.each( views, function( view ) { if ( view.model.attributes.type === elementType ) { num++; } } ); return num; } } ); window.FusionPageBuilderViewManager = new FusionPageBuilder.ViewManager(); // jshint ignore:line } ); }( jQuery ) );
Name
Size
Last Modified
Owner
Permissions
Actions
.htaccess
0.193
KB
June 03 2023 11:57:37
ltfsolutionsco
0644
model-dynamic-params.js
2.134
KB
October 23 2019 10:16:08
ltfsolutionsco
0755
model-dynamic-values.js
1.844
KB
October 23 2019 10:16:08
ltfsolutionsco
0755
model-element.js
0.253
KB
October 23 2019 10:16:08
ltfsolutionsco
0755
model-view-manager.js
2.894
KB
October 23 2019 10:16:08
ltfsolutionsco
0755
2017 © D7net | D704T team