<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>app/models/app/view_item.rb</filename>
    </added>
    <added>
      <filename>app/models/vm/builders/view_item.rb</filename>
    </added>
    <added>
      <filename>merbivize.rb</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/adapter/ext-base.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/CompositeElement.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/DomHelper.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/DomQuery.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/Element.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/EventManager.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/Ext.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/Fx.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/Template.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/core/UpdateManager.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/ArrayReader.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/Connection.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/DataField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/DataProxy.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/DataReader.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/GroupingStore.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/HttpProxy.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/JsonReader.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/JsonStore.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/MemoryProxy.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/Record.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/ScriptTagProxy.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/SimpleStore.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/SortTypes.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/Store.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/StoreMgr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/Tree.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/data/XmlReader.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DDCore.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DragSource.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DragTracker.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DragZone.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DropTarget.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/DropZone.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/Registry.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/ScrollManager.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/dd/StatusProxy.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/debug.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/license.txt</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-af.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-bg.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ca.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-cs.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-da.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-de.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-el_GR.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-en.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-en_UK.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-es.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-fa.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-fr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-fr_CA.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-gr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-he.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-hr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-hu.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-id.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-it.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ja.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ko.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-lt.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-lv.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-mk.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-nl.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-no_NB.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-no_NN.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-pl.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-pt.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-pt_BR.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ro.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ru.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-sk.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-sl.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-sr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-sr_RS.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-sv_SE.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-th.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-tr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-ukr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-vn.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-zh_CN.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/locale/ext-lang-zh_TW.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/state/CookieProvider.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/state/Provider.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/state/StateManager.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/CSS.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/ClickRepeater.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/Date.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/DelayedTask.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/Format.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/History.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/JSON.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/KeyMap.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/KeyNav.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/MixedCollection.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/Observable.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/TaskMgr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/TextMetrics.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/util/XTemplate.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Action.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/BoxComponent.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Button.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/ColorPalette.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Component.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/ComponentMgr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Container.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/CycleButton.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/DataView.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/DatePicker.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Editor.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Layer.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/LoadMask.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/MessageBox.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/PagingToolbar.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Panel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/PanelDD.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/ProgressBar.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Resizable.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Shadow.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Slider.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/SplitBar.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/SplitButton.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/StatusBar.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/TabPanel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Toolbar.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Viewport.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/Window.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/WindowManager.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Action.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/BasicForm.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Checkbox.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/CheckboxGroup.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Combo.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/DateField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Field.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/FieldSet.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Form.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Hidden.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/HtmlEditor.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Label.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/NumberField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/Radio.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/RadioGroup.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/TextArea.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/TextField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/TimeField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/TriggerField.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/form/VTypes.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/AbstractSelectionModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/CellSelectionModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/CheckboxSelectionModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/ColumnDD.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/ColumnModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/ColumnSplitDD.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/EditorGrid.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/GridDD.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/GridEditor.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/GridPanel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/GridView.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/GroupingView.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/PropertyGrid.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/RowNumberer.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/grid/RowSelectionModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/AbsoluteLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/AccordionLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/AnchorLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/BorderLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/CardLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/ColumnLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/ContainerLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/FitLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/FormLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/layout/TableLayout.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/Adapter.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/BaseItem.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/CheckItem.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/ColorItem.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/ColorMenu.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/DateItem.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/DateMenu.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/Item.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/Menu.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/MenuMgr.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/Separator.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/menu/TextItem.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tips/QuickTip.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tips/QuickTips.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tips/Tip.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tips/ToolTip.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/AsyncTreeNode.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeDragZone.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeDropZone.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeEditor.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeEventModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeFilter.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeLoader.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeNode.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeNodeUI.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreePanel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeSelectionModel.js</filename>
    </added>
    <added>
      <filename>public/viewers/extjs/ext/extjs 2.2/widgets/tree/TreeSorter.js</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -43,7 +43,7 @@ task :init_schema  =&gt; :merb_env do
   [VM::Schema,
    VM::SchemaElement,
    App::Entity, 
-   App::Fileldet].each{|m| m.create_table!}  
+   App::Fieldlet].each{|m| m.create_table!}
 end
 
 </diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -13,8 +13,8 @@ module App
 		# setup the views according to the registerd view routes
 		#
 		def set_view
-				return if params[:dir] &amp;&amp; @view = App::VIEW_ROUTES[:dir][params[:dir]]				
-				return if @view = App::VIEW_ROUTES[:host][request.host] 
+				return if params[:dir] &amp;&amp; @view = App::VIEW_ROUTES[:dir][params[:dir]]
+				return if @view = App::VIEW_ROUTES[:host][request.host]
 				return if @view = App::VIEW_ROUTES[:catch_all]
 				raise NotFoundException
 		end</diff>
      <filename>app/controllers/app/app.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,52 +1,52 @@
 module App
-	class Entities &lt; AppController
-	  provides :xml, :json
-	  layout false # no layouts
+  class Entities &lt; AppController
+    provides :xml, :json
+    layout false # no layouts
 	  
-	  def show
-	    @entity = @ns::Entity.find_with_fieldlets(params[:id])
-		  raise NotFoundException if !@entity
-		  set_last_modified_headers()
+    def show
+      @entity = @ns::Entity.find_with_fieldlets(params[:id])
+      raise NotFoundException if !@entity
+      set_last_modified_headers()
       return display_entity()
-	  end
+    end
 	  
-	  def new
-	    @entity = @ns::Entity.get_subclass_by_id(params[:id]).new
-	    @entity.apply_constructor!
-	    apply_actions!
-	    return display_entity()
-	  end
+    def new
+      @entity = @ns::Entity.get_subclass_by_id(params[:id]).new
+      @entity.apply_constructor!
+      apply_actions!
+      return display_entity()
+    end
 	  
-	  def create
-	    @entity = @ns::Entity.get_subclass_by_id(params[:id]).new
-	    apply_actions!
-	    return @entity.save_changes ? display_entity() : display_entity_errors()
-	  end
+    def create
+      @entity = @ns::Entity.get_subclass_by_id(params[:id]).new
+      apply_actions!
+      return @entity.save_changes ? display_entity() : display_entity_errors()
+    end
 	  
 	  
-	  def update
-	    @entity = @ns::Entity.find_with_fieldlets(params[:id])
-	    apply_actions!
-	    return @entity.save_changes ? display_entity() : display_entity_errors()
-	  end
+    def update
+      @entity = @ns::Entity.find_with_fieldlets(params[:id])
+      apply_actions!
+      return @entity.save_changes ? display_entity() : display_entity_errors()
+    end
 	  
-	  def destroy
-	    @entity = @ns::Entity[params[:id]]
+    def destroy
+      @entity = @ns::Entity[params[:id]]
       return @entity.destroy ? ok() : display_entity_errors()
-	  end
+    end
 	
 	
-		def search
-			entity_dataset = @ns::Entity.filter('`display` LIKE ?', &quot;#{params[:search]}%&quot;)
-			entity_dataset.filter!(:kind =&gt; params[:kind]) if params[:kind]
-			entity_dataset.limit!(30)
+    def search
+      entity_dataset = @ns::Entity.filter('`display` LIKE ?', &quot;#{params[:search]}%&quot;)
+      entity_dataset.filter!(:kind =&gt; params[:kind]) if params[:kind]
+      entity_dataset.limit!(30)
 			
-			@entities = entity_dataset.all
-			return {
-				:entities =&gt; @entities,
-				:total =&gt; @entities.size
-			}.to_json
-		end
+      @entities = entity_dataset.all
+      return {
+        :entities =&gt; @entities,
+        :total =&gt; @entities.size
+      }.to_json
+    end
 		
 		
     protected
@@ -54,28 +54,28 @@ module App
     ##
     # Sets the last modified headers for the entity
     #
-	  def set_last_modified_headers
-	   # turned off due to weird FF3 bug
-	   #self.headers['Last-modified'] = @entity[:updated_at].httpdate 
-	  end
+    def set_last_modified_headers
+      # turned off due to weird FF3 bug
+      #self.headers['Last-modified'] = @entity[:updated_at].httpdate
+    end
 	  
 	
-	  ##
-	  # queues the async actions of the current @entity, if given
-	  #
-	  def set_async_actions!
-	    return if !@entity.async_actions
+    ##
+    # queues the async actions of the current @entity, if given
+    #
+    def set_async_actions!
+      return if !@entity.async_actions
 	    
-	    async_actions.each do |async_proc|
-	      run_later(&amp;async_proc)
+      async_actions.each do |async_proc|
+        run_later(&amp;async_proc)
       end
-	  end
+    end
 	  
-	  ##
-	  # a shortcut to applying actions on the currently loaded entity
-	  def apply_actions!
-	    @entity.apply_actions!(params[:entity])
-			set_async_actions!
+    ##
+    # a shortcut to applying actions on the currently loaded entity
+    def apply_actions!
+      @entity.apply_actions!(params[:entity])
+      set_async_actions!
     end
     
     ##
@@ -85,7 +85,7 @@ module App
     #
     # @return [String] the response match 
     def display_entity(extra_hash = {})
-		  display @entity, nil, extra_hash.merge!({:view =&gt; @view})
+      display @entity, nil, extra_hash.merge!({:view =&gt; @view})
     end
     
     ##
@@ -95,5 +95,5 @@ module App
       display @entity.errors, nil, extra_hash.merge!({:view =&gt; @view})
     end
   	  
-	end
+  end
 end
\ No newline at end of file</diff>
      <filename>app/controllers/app/entities.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,31 +2,31 @@
 
 module App
 	
-	class Views &lt; AppController
+  class Views &lt; AppController
 	  
-		def index
-			fix_path!
+    def index
+      fix_path!
 			
-			render :template =&gt; &quot;viewers/#{@view::VIEWER}&quot;,
-			       :layout   =&gt; false
-		end
+      render :template =&gt; &quot;viewers/#{@view::VIEWER}&quot;,
+        :layout   =&gt; false
+    end
 		
-		def page
-		  page = @view::PAGES[params[:page]]
-		  return display(page) if page
-		  raise NotFoundException
-	  end
+    def page
+      page = @view::PAGES[params[:page]]
+      return display(page) if page
+      raise NotFoundException
+    end
 		
-		protected
+    protected
 		
-		##
-		# fix the path of the request for fixing bad directory path
-		#
-		def fix_path!
-		  return if request.uri[-1,1] == '/'
-			return redirect('/') if(!params[:dir])
-			return redirect(&quot;/#{params[:dir]}/&quot;)
-		end
+    ##
+    # fix the path of the request for fixing bad directory path
+    #
+    def fix_path!
+      return if request.uri[-1,1] == '/'
+      return redirect('/') if(!params[:dir])
+      return redirect(&quot;/#{params[:dir]}/&quot;)
+    end
 
-	end
+  end
 end
\ No newline at end of file</diff>
      <filename>app/controllers/app/views.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,6 +4,15 @@ module App
   # The view class is binded to a schema and a viewer
   #
   class View
-  
+    
+    ##
+    # Get the view item by the given type and identifier
+    #
+    # @param [Symbol] type the type identifier for the view element
+    # @param [Symbol/String] identifier identifier for the view
+    def self.get_view_item(type, identifier = nil)
+      self::VIEW_ITEMS.find{|i| i::TYPE == type &amp;&amp; i::FOR == identifier}
+    end
+
   end
 end
\ No newline at end of file</diff>
      <filename>app/models/app/view.rb</filename>
    </modified>
    <modified>
      <diff>@@ -105,7 +105,7 @@ module VM
       # @return [Class] the generated model
       def generate_model_for_namespace
         @ns.const_set(&quot;#{@model_class_name}#{@id}&quot;,
-																Class.new(self.get_model_super_class()))
+          Class.new(self.get_model_super_class()))
       end
 
       ##
@@ -118,16 +118,16 @@ module VM
       #   we'll create an inherit model from the one in the App namespace
       #   and set it in the target namespace
       #
-			# * We set the NAMESPACE const on the created model to point to the given
-			#   namespcae
-			#
+      # * We set the NAMESPACE const on the created model to point to the given
+      #   namespcae
+      #
       def get_model_super_class
         return @ns.const_get(@model_class_name) if @ns.constants.include?(@model_class_name)
 
         # no model was found, inherit it from the App namespace
 
         model = @ns.const_set(@model_class_name,
-                    Class.new(::App.const_get(@model_class_name)))
+          Class.new(::App.const_get(@model_class_name)))
 
         model.const_set('NAMESPACE', @ns)
 </diff>
      <filename>app/models/vm/builders/abstract.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,58 +1,58 @@
 module VM
   module Builders
-   class EntityBuilder &lt; AbstractBuilder
-     register_for :entity
-     set_options  :model_class_name =&gt; 'Entity',
-                  :extras =&gt; [
-                    :set_fields,
-                    :set_title_format,
-                    :set_actions,
-                    :set_constructors
-                  ]
+    class EntityBuilder &lt; AbstractBuilder
+      register_for :entity
+      set_options  :model_class_name =&gt; 'Entity',
+        :extras =&gt; [
+        :set_fields,
+        :set_title_format,
+        :set_actions,
+        :set_constructors
+      ]
 
 
-     ##
-     # Setup the fields constants
-     # 
-     def set_fields
+      ##
+      # Setup the fields constants
+      #
+      def set_fields
         fields = @element.children_with_type(:field).collect{|e| e.generated}
         field_ids = fields.collect{|klass| klass::IDENTIFIER}
 
         self.set_consts!({'FIELDS' =&gt; fields, 'FIELD_IDS' =&gt; field_ids})
-     end
+      end
 
-     ##
-     # Setup the title formatting
-     #
-     def set_title_format
-       title_format = @prefs['titleFormat']
-       self.set_consts!('TITLE_FORMAT' =&gt; nil) &amp;&amp; return if !title_format
+      ##
+      # Setup the title formatting
+      #
+      def set_title_format
+        title_format = @prefs['titleFormat']
+        self.set_consts!('TITLE_FORMAT' =&gt; nil) &amp;&amp; return if !title_format
        
-       self.set_consts!({
-         'TITLE_FORMAT' =&gt; proc do |fieldlets_value|
-           # replace all the guids with their ids
-           return title_format.gsub(/\{[a-f0-9]{16}\}/) do |v|
-             fieldlets_value[v.sub('}','').sub('{','')].value
-           end
-         end
-         })
-       end
+        self.set_consts!({
+            'TITLE_FORMAT' =&gt; proc do |fieldlets_value|
+              # replace all the guids with their ids
+              return title_format.gsub(/\{[a-f0-9]{16}\}/) do |v|
+                fieldlets_value[v.sub('}','').sub('{','')].value
+              end
+            end
+          })
+      end
 
-     ##
-     #  Setup actions
-     #
-     def set_actions
+      ##
+      #  Setup actions
+      #
+      def set_actions
        
-     end
+      end
 
-     ##
-     # Setup constructors
-     #
-     def set_constructors
+      ##
+      # Setup constructors
+      #
+      def set_constructors
        
-     end
+      end
 
      
-   end
+    end
   end
 end
\ No newline at end of file</diff>
      <filename>app/models/vm/builders/entity.rb</filename>
    </modified>
    <modified>
      <diff>@@ -34,7 +34,7 @@ module VM
 
        duplication_hash = {}
        duplication['target_classes'].each do |k,v|
-						duplication_hash[@schema[k].generated] = @schema[v].generated
+						duplication_hash[@schema.get(k).generated] = @schema.get(v).generated
 			 end
 
 </diff>
      <filename>app/models/vm/builders/field.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,30 +1,65 @@
 module VM
   module Builders
-   class ViewBuilder &lt; AbstractBuilder
-     register_for :view
-     set_options  :model_class_name =&gt; 'View',
-                  :extras =&gt; [
-                    :set_viewer,
-                    :register_routing
-                  ]
-
-
-     ##
-     # set the viewer
-     #
-     def set_viewer
-       self.set_consts!({
-         'VIEWER' =&gt; @prefs['viewer']
-         })
-     end
-
-     ##
-     # Register this view in the schema 
-     #
-     def register_routing
-       @schema.register_route(@prefs['routing'], @model)
-     end
-
-   end
+    class ViewBuilder &lt; AbstractBuilder
+      register_for :view
+      set_options  :model_class_name =&gt; 'View',
+        :extras =&gt; [
+        :set_viewer,
+        :register_routing,
+        :set_view_items
+      ]
+
+
+      ##
+      # set the viewer
+      #
+      def set_viewer
+        self.set_consts!({
+            'VIEWER' =&gt; @prefs['viewer']
+          })
+      end
+
+      ##
+      # Register this view in the schema
+      #
+      def register_routing
+        @schema.register_route(@prefs['routing'], @model)
+      end
+
+      ##
+      # Setup the base prefs
+      #
+      def set_base_prefs
+        return if(!@prefs['basePrefs']) # if no base prefs given, return
+
+        base_pref_view_item = @schema.get(@prefs['basePrefs'])
+        
+        self.set_consts!({
+          'BASE_PREFS' =&gt; base_pref_view_item
+          })
+      end
+
+      ##
+      # set all the view items
+      #
+      def set_view_items
+        view_items = []
+
+        # quick access hash
+        view_items_for = Hash.new{|hash,key| hash[key] = []}
+          
+        @element.children_with_type(:view_item).each do |e|
+          item = e.generated
+          view_items &lt;&lt; item
+          view_items_for[item::PREFS['for']] &lt;&lt; item
+        end
+
+        self.set_consts!({
+            'VIEW_ITEMS'     =&gt; view_items,
+            'VIEW_ITEMS_FOR' =&gt; view_items_for
+          })
+      end
+     
+    end
   end
 end
\ No newline at end of file</diff>
      <filename>app/models/vm/builders/view.rb</filename>
    </modified>
    <modified>
      <diff>@@ -26,26 +26,26 @@ module VM
 
       
       ##
-	    # Parse the given xml node. can be overriden by subclasses
-	    #
-	    # @overrideable
-	    #
-	    # === Notes: 
-	    # * We're iterating through xml_node children and creates new SchemaElement
-	    #   for each of them
-	    #
-	    # * if the extra_parsing method is implemented, we call it with the newly created
-	    #   schema element, the xml node of it, it's position, it's parent element and the schema
-	    #   object
-	    #
-	    # * We yield the newly created SchemaElement and it's xml node for children parsing
-	    #   unless the dont_parse_children method is defined
-	    #
-	    ############
+      # Parse the given xml node. can be overriden by subclasses
+      #
+      # @overrideable
+      #
+      # === Notes:
+      # * We're iterating through xml_node children and creates new SchemaElement
+      #   for each of them
+      #
+      # * if the extra_parsing method is implemented, we call it with the newly created
+      #   schema element, the xml node of it, it's position, it's parent element and the schema
+      #   object
+      #
+      # * We yield the newly created SchemaElement and it's xml node for children parsing
+      #   unless the dont_parse_children method is defined
+      #
+      ############
       def parse
         external_children_parsing = self.external_children_parsing? 
         @xml_node.children.each_with_index do |element_node, position|
-          schema_el = @schema[&quot;%016x&quot; % element_node['id'].to_i(16)]
+          schema_el = @schema.get(element_node['id'])
           schema_el ||= SchemaElement.new(:type =&gt; self.options[:schema_element_type])
           schema_el[:guid]      = element_node['id'].to_i(16) if schema_el.new?
           schema_el[:name]      = element_node['name']</diff>
      <filename>app/models/vm/parsers/abstract.rb</filename>
    </modified>
    <modified>
      <diff>@@ -56,8 +56,8 @@ module VM
         hash = @parent_element.prefs if @parent_element.class == SchemaElement
         # a hash
         
-        hash[:sub_items] ||= []
-        hash[:sub_items] &lt;&lt; sub_items
+        hash['sub_items'] ||= []
+        hash['sub_items'] &lt;&lt; sub_items
         # serialize the prefs again
         @parent_element.prefs = hash if @parent_element.class == SchemaElement
       end</diff>
      <filename>app/models/vm/parsers/sub_item.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,21 +4,22 @@ require 'preferences_tools'
 #
 
 module VM
-	class Schema &lt; Sequel::Model
-		include PreferencesTools
-		
-		@@loaded_schemas 	= {}
-		
-		set_schema(:nifty_schemas) do
-		 	bigint  :guid, :unsigned =&gt; true, :null =&gt; false
-			varchar :name
-			boolean :active, :default =&gt; false
-			text		:preferences
-			# primary key :guid
-			index :active
-			primary_key [:guid]
-		end
-		set_primary_key :guid
+  class Schema &lt; Sequel::Model
+    include PreferencesTools
+		
+    @@loaded_schemas 	= {}
+		
+    set_schema(:nifty_schemas) do
+      bigint  :guid, :unsigned =&gt; true, :null =&gt; false
+      varchar :name
+      boolean :active, :default =&gt; false
+      text    :preferences
+      # primary key :guid
+      index :active
+      primary_key [:guid]
+    end
+
+    set_primary_key :guid
 
     after_initialize do
       @routes = []
@@ -41,57 +42,62 @@ module VM
     end
 		
 		
-		before_destroy :unload! # unload before destroying
-		after_destroy  :destroy_schema_elements_on_destruction
+    before_destroy :unload! # unload before destroying
+    after_destroy  :destroy_schema_elements_on_destruction
 		
 		
-		def load_schema_elements
-			@elements = {}
-			@children_of_element = {}
-			return false if self.new?
-			self.schema_elements().each do |schema_element|
-				self.push_schema_element(schema_element)
-			end
-		end
+    def load_schema_elements
+      @elements = {}
+      @children_of_element = {}
+      return false if self.new?
+      self.schema_elements().each do |schema_element|
+        self.push_schema_element(schema_element)
+      end
+    end
 		
-		def push_schema_element(schema_element)
-			hex_guid = schema_element.hex_guid
-			parent_hex_guid = schema_element[:parent_guid]
-			parent_hex_guid = &quot;%016x&quot; % parent_hex_guid if parent_hex_guid
+    def push_schema_element(schema_element)
+      hex_guid = schema_element.hex_guid
+      parent_hex_guid = schema_element[:parent_guid]
+      parent_hex_guid = &quot;%016x&quot; % parent_hex_guid if parent_hex_guid
 		
 			
 			
 			
-			@elements[hex_guid] = schema_element
+      @elements[hex_guid] = schema_element
 			
-			if parent_hex_guid
-				@children_of_element[parent_hex_guid] ||= []
-				@children_of_element[parent_hex_guid] &lt;&lt; schema_element
-			end
-		end
-		
-		def children_of(guid)
-			@children_of_element[guid]
-		end
-		
-		def [](guid)
-			@elements[guid] if @elements
-		end
+      if parent_hex_guid
+        @children_of_element[parent_hex_guid] ||= []
+        @children_of_element[parent_hex_guid] &lt;&lt; schema_element
+      end
+    end
+		
+    def children_of(guid)
+      @children_of_element[guid]
+    end
+		
+    def get(guid)
+      guid = &quot;%016x&quot; % guid.to_i(16) if(guid.size != 16) #normlize
+      @elements[guid] if @elements
+    end
+
+    def [](value)
+      raise &quot;Calling to Schema#[] with #{value}&quot;
+    end
 				
-		# generate models from the loaded schema
-		def instansiate
-			elements = @elements.values
+    # generate models from the loaded schema
+    def instansiate
+      elements = @elements.values
 			
-			@generated = elements.collect{|e| e.build(@namespace) rescue puts &quot;skipping #{e}&quot;}
-			elements.each{|e| e.set_extras! rescue puts &quot;skipping #{e}&quot;}
+      @generated = elements.collect{|e| e.build(@namespace) rescue puts &quot;skipping #{e}&quot;}
+      elements.each{|e| e.set_extras! }#rescue puts &quot;skipping #{e.values.inspect}&quot;}
 			
-			@generated
-		end
+      @generated
+    end
 		
-		def setup_namespace
-			@namespace = ::App.const_set(&quot;Schema#{&quot;%016x&quot; % @values[:guid]}&quot;, Module.new)
-			@namespace.const_set('SCHEMA', &quot;%016x&quot; % @values[:guid])
-		end	
+    def setup_namespace
+      @namespace = ::App.const_set(&quot;Schema#{&quot;%016x&quot; % @values[:guid]}&quot;, Module.new)
+      @namespace.const_set('SCHEMA', &quot;%016x&quot; % @values[:guid])
+    end
 		
 
     ##
@@ -105,7 +111,7 @@ module VM
     end
 		
 		
-		def load!
+    def load!
       self.setup_namespace()
       self.load_schema_elements()
       @@loaded_schemas[&quot;%016x&quot; % @values[:guid]] = self
@@ -117,7 +123,7 @@ module VM
       self.setup_routes()
 
       @generated
-		end
+    end
 
     ##
     # Setup routes on the App::VIEW_ROUTES
@@ -142,31 +148,31 @@ module VM
       self.shema_elements().each{|i| i.destroy}
     end
 	
-		attr_accessor :generated
+    attr_accessor :generated
 		
-		def unload!
+    def unload!
 			
-			::App.send(:remove_const, &quot;Schema#{&quot;%016x&quot; % @values[:guid]}&quot;.to_sym)
+      ::App.send(:remove_const, &quot;Schema#{&quot;%016x&quot; % @values[:guid]}&quot;.to_sym)
 			
-			@@loaded_schemas.delete(&quot;%016x&quot; % @values[:guid])
-		end
-		
-		# load all the active schemas
-		def self.load!
-			self.filter(:active =&gt; true).all.each do |schema|
-				schema.load!
-			end
-		end
-		
-		def self.unload!
-			@@loaded_schemas.values.each do |schema|
-				schema.unload!
-			end
-		end
-		
-		def self.loaded_schemas
-			@@loaded_schemas
-		end
+      @@loaded_schemas.delete(&quot;%016x&quot; % @values[:guid])
+    end
+		
+    # load all the active schemas
+    def self.load!
+      self.filter(:active =&gt; true).all.each do |schema|
+        schema.load!
+      end
+    end
+		
+    def self.unload!
+      @@loaded_schemas.values.each do |schema|
+        schema.unload!
+      end
+    end
+		
+    def self.loaded_schemas
+      @@loaded_schemas
+    end
 				
-	end
+  end
 end
\ No newline at end of file</diff>
      <filename>app/models/vm/schema.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,62 +1,62 @@
 module VM
-	class SchemaElement &lt; Sequel::Model
-		include PreferencesTools
+  class SchemaElement &lt; Sequel::Model
+    include PreferencesTools
 
-		@@builders ||= {}
+    @@builders ||= {}
 		
-		set_schema do
-			bigint  :schema, :unsigned =&gt; true, :null =&gt; false			
-			bigint  :guid,   :unsigned =&gt; true, :null =&gt; false
-			bigint	:parent_guid, :unsigned =&gt; true
-			varchar :name
-			varchar :type, :size =&gt; 40, :null =&gt; false
-			integer :position, :unsigned =&gt; true
+    set_schema do
+      bigint  :schema, :unsigned =&gt; true, :null =&gt; false
+      bigint  :guid,   :unsigned =&gt; true, :null =&gt; false
+      bigint	:parent_guid, :unsigned =&gt; true
+      varchar :name
+      varchar :type, :size =&gt; 40, :null =&gt; false
+      integer :position, :unsigned =&gt; true
 			
-			text		:preferences
+      text		:preferences
 			
-			index		[:parent_guid, :position] # index for ordering
-			primary_key [:schema, :guid]
-		end
+      index		[:parent_guid, :position] # index for ordering
+      primary_key [:schema, :guid]
+    end
 		
-		set_primary_key :schema, :guid
+    set_primary_key :schema, :guid
 		
 		
-		# schema assocc:
-		# get from the loaded schemas or load from the DB
-		# === Returns
-		# * schema&lt;Schema&gt;
-		def schema
-			@schema ||= Schema.loaded_schemas[&quot;%016x&quot; % @values[:schema]]
-		end
+    # schema assocc:
+    # get from the loaded schemas or load from the DB
+    # === Returns
+    # * schema&lt;Schema&gt;
+    def schema
+      @schema ||= Schema.loaded_schemas[&quot;%016x&quot; % @values[:schema]]
+    end
 		
-		# get the parent from the schema or load from the DB		
-		# === Returns
-		# * parent&lt;SchemaElement&gt;
-		def parent
-			@parent ||= self.schema[&quot;%016x&quot; % @values[:parent_guid]]# || SchemaElement.find(:schema =&gt; @values[:schema], :guid =&gt; @values[:parent_guid])
-		end
+    # get the parent from the schema or load from the DB
+    # === Returns
+    # * parent&lt;SchemaElement&gt;
+    def parent
+      @parent ||= self.schema.get(&quot;%016x&quot; % @values[:parent_guid])# || SchemaElement.find(:schema =&gt; @values[:schema], :guid =&gt; @values[:parent_guid])
+    end
 		
-		# get all the children from the schema or load from the DB
-		# === Returns
-		# * [&lt;SchemaElement&gt;, ...] - Array of children schema elements
-		def children
-			@children ||= self.schema.children_of(&quot;%016x&quot; % @values[:guid])# || SchemaElement.filter(:parent_guid =&gt; @values[:guid]).all
-		end
+    # get all the children from the schema or load from the DB
+    # === Returns
+    # * [&lt;SchemaElement&gt;, ...] - Array of children schema elements
+    def children
+      @children ||= self.schema.children_of(&quot;%016x&quot; % @values[:guid])# || SchemaElement.filter(:parent_guid =&gt; @values[:guid]).all
+    end
 		
-		def children_with_type(type)
-			type = type.to_s
-			k = children()
-			return k.find_all{|x| x.values[:type] == type} if k
-			return []
-		end
+    def children_with_type(type)
+      type = type.to_s
+      k = children()
+      return k.find_all{|x| x.values[:type] == type} if k
+      return []
+    end
 
 
     ##
     # Accessor for the builder of this element type
     # 
-		def builder(namespace)
+    def builder(namespace)
       @builder ||= self.builder_class.new(self,namespace)
-		end
+    end
 
     ##
     # Get the builder class for the this schema element
@@ -64,7 +64,7 @@ module VM
     # @return [Class] the builder class
     def builder_class
       @builder_class ||= @@builders[@values[:type].to_sym]
-			raise &quot;No builder class for :#{@values[:type]}&quot; if !@builder_class
+      raise &quot;No builder class for :#{@values[:type]}&quot; if !@builder_class
       return @builder_class
     end
 		
@@ -83,24 +83,24 @@ module VM
     ##
     # Setup the needed extras on the builded model
     #
-		def set_extras!
-			@builder.set_extras!
-		end
+    def set_extras!
+      @builder.set_extras!
+    end
 		
     ##
-		# get the generated model from the namespace
+    # get the generated model from the namespace
     #
-		def generated
+    def generated
       raise &quot;This element hasn't been built yet!&quot; if !@model
-			@model
-		end
+      @model
+    end
 
     ##
     # Accessor for the @@builders class var
     #
-		def self.builders
-			@@builders
-		end
+    def self.builders
+      @@builders
+    end
 
 
     ##
@@ -114,23 +114,23 @@ module VM
     end
 
 		
-		def hex_guid
-			@hex_guid ||= &quot;%016x&quot; % @values[:guid]
-		end
+    def hex_guid
+      @hex_guid ||= &quot;%016x&quot; % @values[:guid]
+    end
 		
-		# representation
-		def to_json(*args)
-			{
-				:id =&gt; self.hex_guid(),
-				:name =&gt; @values[:name],
-				:type =&gt; @values[:type],
-				:preferences =&gt; self.prefs,
-				:children =&gt; (self.children || []).collect{|c| c.hex_guid()}
-			}.to_json(*args)
-		end
+    # representation
+    def to_json(*args)
+      {
+        :id =&gt; self.hex_guid(),
+        :name =&gt; @values[:name],
+        :type =&gt; @values[:type],
+        :preferences =&gt; self.prefs,
+        :children =&gt; (self.children || []).collect{|c| c.hex_guid()}
+      }.to_json(*args)
+    end
 		
 		
-	end
+  end
 end
 
 # load schema elements type</diff>
      <filename>app/models/vm/schema_element.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,10 +1,10 @@
 # dependencies are generated using a strict version, don't forget to edit the dependency versions when upgrading.
-merb_gems_version = &quot;1.0.3&quot;
+merb_gems_version = &quot;1.0.6.1&quot;
 
 # For more information about each component, please read http://wiki.merbivore.com/faqs/merb_components
 #dependency &quot;merb-action-args&quot;, merb_gems_version
 dependency &quot;merb-assets&quot;, merb_gems_version  
-dependency &quot;merb-cache&quot;, merb_gems_version   
+dependency &quot;merb-cache&quot;, merb_gems_version
 dependency &quot;merb-helpers&quot;, merb_gems_version 
 dependency &quot;merb-mailer&quot;, merb_gems_version  
 dependency &quot;merb-slices&quot;, merb_gems_version  </diff>
      <filename>config/dependencies.rb</filename>
    </modified>
    <modified>
      <diff>@@ -66,8 +66,9 @@ Nifty.BootLoader.prototype = {
 		this.setExtBaseOptions();
 
 		this.setStatus('Loading Schema...');
-		Nifty.loaders.SchemaLoader.on('load', this.finishSchemaLoading, this);
-		Nifty.loaders.SchemaLoader.load();
+		//Nifty.loaders.SchemaLoader.on('load', this.finishSchemaLoading, this);
+		//Nifty.loaders.SchemaLoader.load();
+        this.finishSchemaLoading(null,{name: 'Lizzy'});
  	},
 
 </diff>
      <filename>public/viewers/extjs/javascripts/boot_loader.js</filename>
    </modified>
    <modified>
      <diff>@@ -5,18 +5,18 @@
  * 
  * Layout:
  * +---------+-------------------------------------------------------------+
- * |				 |																							  						 |
- * |         |																							 +-------------+
- * |         |   Subtitle																		 |	Toolbox		 |
- * |  ICON   |		Title (subtitle)													 +-------------+
- * |   OR    |																														 |
- * |  PICT   |   +---------------------------------------------------------+
- * |				 |   | topContianer 																					 |
+ * |		 |					   				  						   |
+ * |         |												 +-------------+
+ * |         |   Subtitle									 |	Toolbox	   |
+ * |  ICON   |		Title (subtitle)						 +-------------+
+ * |   OR    |															   |
+ * |  PIC    |   +---------------------------------------------------------+
+ * |		 |   | topContianer                                            |
  * |         |   +---------------------------------------------------------+
  * +---------+-------------------------------------------------------------+
- * |			                                                                 |
- * |						  						                                             |
- * |				                                                               |
+ * |			                                                           |
+ * |						  						                       |
+ * |				                                                       |
  * .                                                                       .
  * .                          MAIN CONTAINER                               .
  * .                                                                       .</diff>
      <filename>public/viewers/extjs/javascripts/widgets/main_pane.js</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>app/models/vm/view.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>b40d6f784092d5189bc3713dd078af6414f02d95</id>
    </parent>
  </parents>
  <author>
    <name>Shlomi Atar</name>
    <email>shlomiatar@gmail.com</email>
  </author>
  <url>http://github.com/shlomiatar/nifty-vm/commit/f4cc16948f23bd8664b06ee3b00dd8e228b3cd62</url>
  <id>f4cc16948f23bd8664b06ee3b00dd8e228b3cd62</id>
  <committed-date>2008-12-28T09:51:16-08:00</committed-date>
  <authored-date>2008-12-28T09:51:16-08:00</authored-date>
  <message>Moving to viewers</message>
  <tree>34231b2c13a0a8acc355e6cd52b71b3f024ecbe2</tree>
  <committer>
    <name>Shlomi Atar</name>
    <email>shlomiatar@gmail.com</email>
  </committer>
</commit>
