From b9ad279ad2d8d93dd501115a028783cf8fe7fcbd Mon Sep 17 00:00:00 2001 From: Adam Young Date: Wed, 19 Jan 2011 12:26:14 -0500 Subject: rename static to ui Directory rename --- install/static/entity.js | 592 ----------------------------------------------- 1 file changed, 592 deletions(-) delete mode 100644 install/static/entity.js (limited to 'install/static/entity.js') diff --git a/install/static/entity.js b/install/static/entity.js deleted file mode 100644 index 9c58ee3d..00000000 --- a/install/static/entity.js +++ /dev/null @@ -1,592 +0,0 @@ -/*jsl:import ipa.js */ -/*jsl:import navigation.js */ - -/* Authors: - * Pavel Zuna - * Endi S. Dewata - * Adam Young - * - * Copyright (C) 2010 Red Hat - * see file 'COPYING' for use and warranty information - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -/* REQUIRES: ipa.js, details.js, search.js, add.js */ - -IPA.facet = function (spec) { - - spec = spec || {}; - - var that = {}; - that.display_class = spec.display_class || 'entity-facet'; - that.name = spec.name; - that.label = spec.label; - that._entity_name = spec.entity_name; - - that.init = spec.init || init; - that.create = spec.create || create; - that.setup = spec.setup || setup; - that.load = spec.load || load; - - that.__defineGetter__("entity_name", function(){ - return that._entity_name; - }); - - that.__defineSetter__("entity_name", function(entity_name){ - that._entity_name = entity_name; - }); - - that.create_action_panel = IPA.facet_create_action_panel; - - function init() { - } - - function create(container) { - } - - function setup(container) { - that.container = container; - } - - function load() { - } - - that.get_client_area = function() { - return $('.client', that.container); - }; - - that.get_action_panel = function() { - return $('.action-panel', that.container); - }; - - that.facet_init = that.init; - that.facet_create = that.create; - that.facet_setup = that.setup; - - return that; -}; - - -IPA.entity = function (spec) { - - spec = spec || {}; - - var that = {}; - that.name = spec.name; - that.label = spec.label; - - that.setup = spec.setup || IPA.entity_setup; - - that.dialogs = []; - that.dialogs_by_name = {}; - - that.facets = []; - that.facets_by_name = {}; - - that.facet_name = null; - - that.autogenerate_associations = false; - - that.associations = []; - that.associations_by_name = {}; - - that.get_dialog = function(name) { - return that.dialogs_by_name[name]; - }; - - that.add_dialog = function(dialog) { - dialog.entity_name = that.name; - that.dialogs.push(dialog); - that.dialogs_by_name[dialog.name] = dialog; - }; - - that.get_facet = function(name) { - return that.facets_by_name[name]; - }; - - that.add_facet = function(facet) { - facet.entity_name = that.name; - that.facets.push(facet); - that.facets_by_name[facet.name] = facet; - }; - - that.get_associations = function() { - return that.associations; - }; - - that.get_association = function(name) { - return that.associations_by_name[name]; - }; - - that.add_association = function(config) { - that.associations.push(config); - that.associations_by_name[config.name] = config; - }; - - that.create_association = function(spec) { - var config = IPA.association_config(spec); - that.add_association(config); - return config; - }; - - that.create_association_facet = function(attribute_member, other_entity, label, facet_group) { - - if (!attribute_member) { - attribute_member = IPA.get_member_attribute( - that.entity_name, other_entity); - } - - return IPA.association_facet({ - 'name': attribute_member+'_'+other_entity, - 'label': label, - 'other_entity': other_entity, - 'facet_group': facet_group, - 'attribute_member': attribute_member - }); - }; - - that.create_association_facets = function() { - - var attribute_members = IPA.metadata[that.name].attribute_members; - - for (var attribute_member in attribute_members) { - - // skip non-assignable associations - if (attribute_member === 'memberindirect') continue; - if (attribute_member === 'enrolledby') continue; - - var other_entities = attribute_members[attribute_member]; - - for (var j = 0; j < other_entities.length; j++) { - var other_entity = other_entities[j]; - var other_entity_name = IPA.metadata[other_entity].label; - - var label = other_entity_name; - - var relationships = IPA.metadata[that.name].relationships; - - var relationship = relationships[attribute_member]; - if (!relationship) - relationship = ['Member', '', 'no_']; - var facet_group = relationship[0]; - - var facet = that.create_association_facet( - attribute_member, other_entity, label, facet_group); - - if (that.get_facet(facet.name)) continue; - - that.add_facet(facet); - } - } - }; - - that.init = function() { - - if (!that.label) { - that.label = IPA.metadata[that.name].label; - } - - if (that.autogenerate_associations) { - that.create_association_facets(); - } - - for (var i=0; i', { - "class": "action-panel", - html: $('

',{ - text: IPA.metadata[entity_name].label - }) - }).appendTo(container); - function build_link(other_facet,label){ - var li = $('
  • ', { - "class" : other_facet.display_class, - title: other_facet.name, - text: label, - click: function(entity_name, other_facet_name) { - return function() { - if($(this).hasClass('entity-facet-disabled')){ - return false; - } - var this_pkey = $('input[id=pkey]', action_panel).val(); - IPA.switch_and_show_page( - entity_name, other_facet_name, - this_pkey); - return false; - }; - }(entity_name, other_facet_name) - }); - return li; - } - /*Note, for debugging purposes, it is useful to set var pkey_type = 'text';*/ - var pkey_type = 'hidden'; - $('', { - 'type': pkey_type, - id:'pkey', - name:'pkey' - }).appendTo(action_panel); - var ul = $('
      ', {'class': 'action'}).appendTo(action_panel); - var entity = IPA.get_entity(entity_name); - var facet_name = IPA.current_facet(entity); - var other_facet = entity.facets[0]; - var other_facet_name = other_facet.name; - var nested_tabs = IPA.nested_tabs(entity_name); - var main_facet = build_link(other_facet,other_facet.label); - for (var nested_index = 0 ; - nested_index < nested_tabs.length; - nested_index += 1){ - if (nested_tabs[nested_index] === entity_name){ - /*assume for now that entities with only a single facet - do not have search*/ - if (entity.facets.length > 0 ){ - if ( entity.facets[0].name === IPA.current_facet( entity)){ - ul.append($('
    • ')); - - }else{ - main_facet.html( - $('',{ - "class":"input_link" - }). - append(IPA.back_icon + ' Back to List ')); - main_facet.addClass('back-to-search'); - main_facet.appendTo(ul); - } - ul.append($('

    • ')); - - } - var facet_groups = {}; - var li; - for (var i=1; i', { - 'class': 'entity-facet entity-facet-relation-label', - 'text': other_facet.facet_group, - 'title': other_facet.facet_group - }); - ul.append(li); - facet_groups[facet_group] = li; - } - li = facet_groups[facet_group]; - var link = build_link(other_facet, other_facet.label); - link.addClass('facet-group-member'); - li.after(link ); - /* - If we are on the current facet, we make the text black, non-clickable, - add an icon and make sure the action controls are positioned underneath it. - */ - if ( other_facet.name === IPA.current_facet( entity)){ - var text = link.text(); - link.text(''); - link.append($('
        '). - append($('
      • ',{ - 'class': 'entity-facet-selected', - html: IPA.selected_icon + text - })). - append($('
      • ',{ - html:$('',{ - 'class':"action-controls" - }) - }))); - } - facet_groups[facet_group] = li.next(); - } else { - var innerlist = $('
          ').appendTo(ul); - var facet_link = build_link(other_facet, other_facet.label); - facet_link.addClass('entity-facet-selected'); - facet_link.prepend(IPA.selected_icon); - innerlist.append(facet_link); - if ( other_facet.name === IPA.current_facet( entity)){ - - innerlist.append($('
        • ')); - } - } - } - }else{ - $('
        • ', { - title: nested_tabs[nested_index], - text: IPA.metadata[nested_tabs[nested_index]].label, - "class": "search-facet", - click: function() { - var state = {}; - state[nested_tabs[0]+'-entity'] = - this.title; - nav_push_state(state); - return false; - } - }).appendTo(ul); - } - } - /*When we land on the search page, disable all facets - that require a pkey until one is selected*/ - if (facet_name === 'search'){ - $('.entity-facet', action_panel).addClass('entity-facet-disabled'); - } - return action_panel; -}; -- cgit