emergent-core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.bnsignore +16 -0
- data/History.txt +4 -0
- data/Manifest.txt +348 -0
- data/README.rdoc +47 -0
- data/Rakefile +39 -0
- data/app_generators/emergent_core/USAGE +5 -0
- data/app_generators/emergent_core/emergent_core_generator.rb +73 -0
- data/app_generators/emergent_core/templates/core/actionscript.properties +16 -0
- data/app_generators/emergent_core/templates/core/actionscriptair.properties +16 -0
- data/app_generators/emergent_core/templates/core/app.yaml.erb +12 -0
- data/app_generators/emergent_core/templates/core/default_tasks.rake +51 -0
- data/app_generators/emergent_core/templates/core/empty.txt +0 -0
- data/app_generators/emergent_core/templates/core/expressInstall.swf +0 -0
- data/app_generators/emergent_core/templates/core/flex.properties +2 -0
- data/app_generators/emergent_core/templates/core/generate.rb +17 -0
- data/app_generators/emergent_core/templates/core/html-template/AC_OETags.js +276 -0
- data/app_generators/emergent_core/templates/core/html-template/history/history.css +6 -0
- data/app_generators/emergent_core/templates/core/html-template/history/history.js +645 -0
- data/app_generators/emergent_core/templates/core/html-template/history/historyFrame.html +29 -0
- data/app_generators/emergent_core/templates/core/html-template/index.template.html +121 -0
- data/app_generators/emergent_core/templates/core/html-template/playerProductInstall.swf +0 -0
- data/app_generators/emergent_core/templates/core/index.html.erb +18 -0
- data/app_generators/emergent_core/templates/core/index.yaml +11 -0
- data/app_generators/emergent_core/templates/core/mainair-app.xml +134 -0
- data/app_generators/emergent_core/templates/core/mainapp-config.xml +21 -0
- data/app_generators/emergent_core/templates/core/mainapp.mxml +106 -0
- data/app_generators/emergent_core/templates/core/project-textmate.erb +52 -0
- data/app_generators/emergent_core/templates/core/project.properties +18 -0
- data/app_generators/emergent_core/templates/core/projectair.properties +24 -0
- data/app_generators/emergent_core/templates/core/swfobject.js +5 -0
- data/bin/emergent +17 -0
- data/lib/emergent_core.rb +49 -0
- data/lib/restfulx/active_foo.rb +194 -0
- data/lib/restfulx/active_record_tasks.rb +81 -0
- data/lib/restfulx/configuration.rb +76 -0
- data/lib/restfulx/datamapper_foo.rb +31 -0
- data/lib/restfulx/rails/recipes.rb +60 -0
- data/lib/restfulx/rails/swf_helper.rb +60 -0
- data/lib/restfulx/tasks.rb +85 -0
- data/lib/restfulx.rb +117 -0
- data/rails_generators/emergent_cms/USAGE +5 -0
- data/rails_generators/emergent_cms/emergent_cms_generator.rb +21 -0
- data/rails_generators/emergent_cms/templates/PagesEditModel.as +114 -0
- data/rails_generators/emergent_cms/templates/PagesEditView.mxml +102 -0
- data/rails_generators/emergent_config/USAGE +5 -0
- data/rails_generators/emergent_config/emergent_config_generator.rb +330 -0
- data/rails_generators/emergent_config/templates/app/controllers/accounts_controller.rb +104 -0
- data/rails_generators/emergent_config/templates/app/controllers/addresses_controller.rb +97 -0
- data/rails_generators/emergent_config/templates/app/controllers/application.rb +26 -0
- data/rails_generators/emergent_config/templates/app/controllers/assets_controller.rb +1 -0
- data/rails_generators/emergent_config/templates/app/controllers/content_assignments_controller.rb +97 -0
- data/rails_generators/emergent_config/templates/app/controllers/contents_controller.rb +114 -0
- data/rails_generators/emergent_config/templates/app/controllers/sessions_controller.rb +72 -0
- data/rails_generators/emergent_config/templates/app/controllers/sites_controller.rb +1 -0
- data/rails_generators/emergent_config/templates/app/controllers/users_controller.rb +97 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/command/ICommand.as +16 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/command/Undoable.as +46 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/command/UpdateDocumentCommand.as +73 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/event/DocumentEvent.as +46 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/event/NavigationEvent.as +31 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/event/ResourceEvent.as +27 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/event/UndoEvent.as +36 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/AboutUsManager.as +15 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/AccountManager.as +31 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/AuthenticationManager.as +76 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/ContentManager.as +92 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/DocumentManager.as +131 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/DocumentsManager.as +156 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/HomeManager.as +18 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/MainManager.as +23 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/PagesManager.as +71 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/ResourceManager.as +195 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/SiteManager.as +25 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/manager/UndoManager.as +143 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/DocumentMap.mxml +123 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/DocumentsMap.mxml +134 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/ManagerPresentationModelMap.mxml +59 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/ObjectMap.mxml +75 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/PresentationModelViewMap.mxml +81 -0
- data/rails_generators/emergent_config/templates/app/flex/application/controllers/map/PresenterViewMap.mxml +67 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/constant/DocumentType.as +52 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/constant/Resource.as +25 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/constant/ResourceAction.as +28 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/constant/ResourceResult.as +8 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Account.as +32 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Address.as +26 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Asset.as +25 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/AssetAssignment.as +25 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Content.as +46 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/ContentAssignment.as +33 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Document.as +131 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/PlainDocument.as +19 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/RichDocument.as +19 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Session.as +13 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/Snapshot.as +21 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/domain/User.as +28 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/factory/DocumentFactory.as +61 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/factory/DocumentViewFactory.as +59 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/factory/ResourceFactory.as +28 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/AboutUsModel.as +22 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/AccountModel.as +68 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/AuthenticationModel.as +44 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/ContactUsModel.as +45 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/ContentModel.as +70 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/DocumentModel.as +235 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/DocumentsModel.as +169 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/HomeModel.as +23 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/MainModel.as +35 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/PagesModel.as +44 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/ProfileModel.as +99 -0
- data/rails_generators/emergent_config/templates/app/flex/application/models/presentation/ResourceModel.as +100 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/about_us/about_us.mxml +105 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/account/account.mxml +97 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/contact_us/contact_us.mxml +65 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/document/document.mxml +71 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/document/documents.mxml +201 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/document/plain_document.mxml +9 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/document/rich_document.mxml +12 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/gallery/gallery.mxml +37 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/home/home.mxml +58 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/home/home_presenter.as +81 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/home/home_troparchy.mxml +71 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/login/login.mxml +50 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/main/main.mxml +131 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/main/main_presenter.as +166 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/main/main_troparchy.mxml +74 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_bottom_model.as +13 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_bottom_presenter.as +10 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_bottom_view.mxml +48 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_left_model.as +13 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_left_presenter.as +10 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_left_view.mxml +43 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_right_model.as +13 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_right_presenter.as +10 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_right_view.mxml +47 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_top_model.as +13 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_top_presenter.as +10 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bar_top_view.mxml +49 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bars_presenter.as +63 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bars_troparchy.mxml +63 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/navigation/navigation_bars_view.mxml +59 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/pages/pages.mxml +44 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/pages/pages_presenter.as +83 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/pages/pages_troparchy.mxml +62 -0
- data/rails_generators/emergent_config/templates/app/flex/application/views/profile/profile.mxml +73 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/fonts/MyriadPro-Bold.otf +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/fonts/MyriadPro-Regular.otf +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/html/lorem.html +3 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture10.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture11.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture12.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture13.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture14.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture3.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture4.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture5.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture6.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture7.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture8.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/alexgrey/Picture9.png +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_0.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_180.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_270.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_90.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_bottom.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/images/hot_nebula_top.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/itunes7Bg.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/jukebox.css +764 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/jukeboxGfx.swf +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/obsidian.css +734 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/obsidianBg.jpg +0 -0
- data/rails_generators/emergent_config/templates/app/flex/assets/styles/obsidianGfx.swf +0 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/actions/LayoutAction.as +377 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/actions/SimpleLayoutAction.as +210 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/animators/FourDTweenCollection.mxml +50 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/animators/IAnimator.as +39 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/animators/TweenMaxAnimator.as +269 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/cameras/AstroCamera.as +177 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/components/FourDDataGrid.mxml +105 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/components/FourDItemRenderer.mxml +54 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/CenterPerspectiveProjection.as +72 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/ComplexCondition.as +44 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/ConditionsUtil.as +82 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/FourDComponent.as +309 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/InstanceMethodInvoker.as +50 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/InstancePropertyInjector.as +43 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/MethodCaller.as +51 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Pathway.as +10 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/PathwayEvent.as +28 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Pheron.as +34 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Pheron2.as +41 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/PheronReceptor.as +125 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Properties.as +57 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Router.as +50 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/RouterUtil.as +70 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/SimpleCondition.as +42 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/SimpleZSortVO.as +1 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/SimpleZSorter.as +1 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Tecton.as +70 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/Tecton2.as +234 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonCache.as +111 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonEvent.as +39 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonMap.as +515 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonMap2.as +289 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonMapSample.mxml +73 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonReceptor.as +43 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonScope.as +38 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonScopeProperties.as +18 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/core/TectonUtils.as +51 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/events/LayoutActionEvent.as +75 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/layouts/CarouselLayout.as +85 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/layouts/CircleLayout.as +102 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/layouts/CoverFlowLayout.as +136 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/layouts/FourDLayout.as +272 -0
- data/rails_generators/emergent_config/templates/app/flex/com/fourD/utils/TweenUtil.as +110 -0
- data/rails_generators/emergent_config/templates/app/helpers/accounts_helper.rb +93 -0
- data/rails_generators/emergent_config/templates/app/helpers/application_helper.rb +3 -0
- data/rails_generators/emergent_config/templates/app/models/account.rb +84 -0
- data/rails_generators/emergent_config/templates/app/models/account_mailer.rb +24 -0
- data/rails_generators/emergent_config/templates/app/models/account_observer.rb +17 -0
- data/rails_generators/emergent_config/templates/app/models/address.rb +2 -0
- data/rails_generators/emergent_config/templates/app/models/asset.rb +6 -0
- data/rails_generators/emergent_config/templates/app/models/asset_assignment.rb +4 -0
- data/rails_generators/emergent_config/templates/app/models/category.rb +35 -0
- data/rails_generators/emergent_config/templates/app/models/comment.rb +98 -0
- data/rails_generators/emergent_config/templates/app/models/content.rb +89 -0
- data/rails_generators/emergent_config/templates/app/models/content_assignment.rb +21 -0
- data/rails_generators/emergent_config/templates/app/models/image.rb +3 -0
- data/rails_generators/emergent_config/templates/app/models/post.rb +76 -0
- data/rails_generators/emergent_config/templates/app/models/section.rb +97 -0
- data/rails_generators/emergent_config/templates/app/models/site.rb +1 -0
- data/rails_generators/emergent_config/templates/app/models/tag.rb +1 -0
- data/rails_generators/emergent_config/templates/app/models/user.rb +4 -0
- data/rails_generators/emergent_config/templates/app/views/account_mailer/activation.erb +3 -0
- data/rails_generators/emergent_config/templates/app/views/account_mailer/signup_notification.erb +8 -0
- data/rails_generators/emergent_config/templates/config/Capfile +4 -0
- data/rails_generators/emergent_config/templates/config/README.txt +18 -0
- data/rails_generators/emergent_config/templates/config/deploy.rb +36 -0
- data/rails_generators/emergent_config/templates/config/routes.rb +72 -0
- data/rails_generators/emergent_config/templates/core/actionscript.properties +16 -0
- data/rails_generators/emergent_config/templates/core/actionscriptair.properties +16 -0
- data/rails_generators/emergent_config/templates/core/app.yaml.erb +12 -0
- data/rails_generators/emergent_config/templates/core/default_tasks.rake +51 -0
- data/rails_generators/emergent_config/templates/core/emergent_tasks.rake +42 -0
- data/rails_generators/emergent_config/templates/core/empty.txt +0 -0
- data/rails_generators/emergent_config/templates/core/expressInstall.swf +0 -0
- data/rails_generators/emergent_config/templates/core/flex.properties +2 -0
- data/rails_generators/emergent_config/templates/core/generate.rb +17 -0
- data/rails_generators/emergent_config/templates/core/html-template/AC_OETags.js +276 -0
- data/rails_generators/emergent_config/templates/core/html-template/history/history.css +6 -0
- data/rails_generators/emergent_config/templates/core/html-template/history/history.js +645 -0
- data/rails_generators/emergent_config/templates/core/html-template/history/historyFrame.html +29 -0
- data/rails_generators/emergent_config/templates/core/html-template/index.template.html +121 -0
- data/rails_generators/emergent_config/templates/core/html-template/playerProductInstall.swf +0 -0
- data/rails_generators/emergent_config/templates/core/index.html.erb +18 -0
- data/rails_generators/emergent_config/templates/core/index.yaml +11 -0
- data/rails_generators/emergent_config/templates/core/mainair-app.xml +134 -0
- data/rails_generators/emergent_config/templates/core/mainapp-config.xml +21 -0
- data/rails_generators/emergent_config/templates/core/mainapp.mxml +101 -0
- data/rails_generators/emergent_config/templates/core/project-textmate.erb +52 -0
- data/rails_generators/emergent_config/templates/core/project.properties +18 -0
- data/rails_generators/emergent_config/templates/core/projectair.properties +24 -0
- data/rails_generators/emergent_config/templates/core/restfulx.yml +14 -0
- data/rails_generators/emergent_config/templates/core/restfulx_tasks.rake +6 -0
- data/rails_generators/emergent_config/templates/core/swfobject.js +5 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_accounts.rb +40 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_addresses.rb +18 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_asset_assignments.rb +19 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_assets.rb +20 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_content_assignments.rb +26 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_contents.rb +21 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_sessions.rb +16 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_sites.rb +27 -0
- data/rails_generators/emergent_config/templates/db/migrate/create_users.rb +15 -0
- data/rails_generators/emergent_config/templates/lib/analytics.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/app_controller.rb.erb +26 -0
- data/rails_generators/emergent_config/templates/lib/as3corelib-0.92.1.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/as3crypto-1.3patched.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/as3crypto.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/as3ds-1.04.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/as3httpclientlib-1.0.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/authenticated_system.rb +189 -0
- data/rails_generators/emergent_config/templates/lib/authenticated_test_helper.rb +11 -0
- data/rails_generators/emergent_config/templates/lib/containerEx.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/flare.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/flash_session_hack.rb +27 -0
- data/rails_generators/emergent_config/templates/lib/flex2BrowserManager.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/flexlib.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/fluint.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/mate_0_8_6_enhanced.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/openflux.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/pv3d.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/restfulx.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/site_keys.rb +38 -0
- data/rails_generators/emergent_config/templates/lib/tweenMax.swc +0 -0
- data/rails_generators/emergent_config/templates/lib/urlkitFlex3.swc +0 -0
- data/rails_generators/emergent_config/templates/shell_script +31 -0
- data/rails_generators/emergent_controller/USAGE +5 -0
- data/rails_generators/emergent_controller/emergent_controller_generator.rb +25 -0
- data/rails_generators/emergent_controller/templates/controller.as.erb +37 -0
- data/rails_generators/emergent_core/USAGE +5 -0
- data/rails_generators/emergent_core/emergent_core_generator.rb +157 -0
- data/rails_generators/emergent_iphone/USAGE +5 -0
- data/rails_generators/emergent_iphone/emergent_iphone_generator.rb +27 -0
- data/rails_generators/emergent_scaffold/USAGE +5 -0
- data/rails_generators/emergent_scaffold/emergent_scaffold_generator.rb +157 -0
- data/rails_generators/emergent_scaffold/templates/component.mxml.erb +101 -0
- data/rails_generators/emergent_scaffold/templates/controller.rb.erb +101 -0
- data/rails_generators/emergent_scaffold/templates/edit_index_view.mxml.erb +114 -0
- data/rails_generators/emergent_scaffold/templates/edit_show_view.mxml.erb +84 -0
- data/rails_generators/emergent_scaffold/templates/filter_view.mxml.erb +1 -0
- data/rails_generators/emergent_scaffold/templates/fixtures.yml.erb +128 -0
- data/rails_generators/emergent_scaffold/templates/index_view.mxml.erb +58 -0
- data/rails_generators/emergent_scaffold/templates/item_renderer.mxml.erb +53 -0
- data/rails_generators/emergent_scaffold/templates/manager.as.erb +31 -0
- data/rails_generators/emergent_scaffold/templates/migration.rb.erb +22 -0
- data/rails_generators/emergent_scaffold/templates/model.as.erb +42 -0
- data/rails_generators/emergent_scaffold/templates/model.rb.erb +11 -0
- data/rails_generators/emergent_scaffold/templates/presentation_model.as.erb +33 -0
- data/rails_generators/emergent_scaffold/templates/presenter.as.erb +98 -0
- data/rails_generators/emergent_scaffold/templates/show_view.mxml.erb +50 -0
- data/rails_generators/emergent_scaffold/templates/view_map.mxml.erb +40 -0
- data/rails_generators/emergent_scaffold/templates/views_panel.mxml.erb +64 -0
- data/rails_generators/emergent_styler/USAGE +5 -0
- data/rails_generators/emergent_styler/emergent_styler_generator.rb +21 -0
- data/rails_generators/rx_yaml_scaffold/USAGE +51 -0
- data/rails_generators/rx_yaml_scaffold/rx_yaml_scaffold_generator.rb +49 -0
- data/script/console +10 -0
- data/script/destroy +14 -0
- data/script/generate +14 -0
- data/spec/emergent_core_spec.rb +7 -0
- data/spec/spec_helper.rb +16 -0
- data/tasks/ann.rake +80 -0
- data/tasks/bones.rake +20 -0
- data/tasks/gem.rake +201 -0
- data/tasks/git.rake +40 -0
- data/tasks/manifest.rake +48 -0
- data/tasks/notes.rake +27 -0
- data/tasks/post_load.rake +39 -0
- data/tasks/rdoc.rake +50 -0
- data/tasks/rubyforge.rake +55 -0
- data/tasks/setup.rb +279 -0
- data/tasks/spec.rake +54 -0
- data/tasks/svn.rake +47 -0
- data/tasks/test.rake +40 -0
- data/test/test_emergent_core.rb +0 -0
- data/test/test_emergent_iphone_generator.rb +46 -0
- data/test/test_generator_helper.rb +29 -0
- metadata +437 -0
|
@@ -0,0 +1,330 @@
|
|
|
1
|
+
require 'open-uri'
|
|
2
|
+
require File.join(File.dirname(__FILE__), '..', '..', 'lib', 'restfulx') if !defined?(RestfulX)
|
|
3
|
+
|
|
4
|
+
class EmergentConfigGenerator < Rails::Generator::NamedBase
|
|
5
|
+
include RestfulX::Configuration
|
|
6
|
+
|
|
7
|
+
attr_reader :project_name,
|
|
8
|
+
:flex_project_name,
|
|
9
|
+
:base_package,
|
|
10
|
+
:base_folder,
|
|
11
|
+
:command_controller_name,
|
|
12
|
+
:component_names,
|
|
13
|
+
:application_tag,
|
|
14
|
+
:use_air,
|
|
15
|
+
# Added
|
|
16
|
+
:model_names,
|
|
17
|
+
:event_names
|
|
18
|
+
|
|
19
|
+
def initialize(runtime_args, runtime_options = {})
|
|
20
|
+
super
|
|
21
|
+
@project_name, @flex_project_name, @command_controller_name, @base_package, @base_folder = extract_names
|
|
22
|
+
|
|
23
|
+
# if we are updating main file only we probably want to maintain the type of project it is
|
|
24
|
+
if options[:main_only]
|
|
25
|
+
project_file_name = APP_ROOT + '/.project'
|
|
26
|
+
if File.exist?(project_file_name)
|
|
27
|
+
puts "Cannot combine -m (--main-app) and -a (--air) flags at the same time for an existing application.\n" <<
|
|
28
|
+
'If you want to convert to AIR, remove -m flag.' if options[:air_config]
|
|
29
|
+
@use_air = true if File.read(project_file_name) =~/com.adobe.flexbuilder.apollo.apollobuilder/m
|
|
30
|
+
else
|
|
31
|
+
puts "Flex Builder project file doesn't exist. You should run 'rx_config' with -a (--air) option " <<
|
|
32
|
+
"or no arguments first to generate primary project structure."
|
|
33
|
+
exit 0;
|
|
34
|
+
end
|
|
35
|
+
else
|
|
36
|
+
@use_air = options[:air_config]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
if @use_air
|
|
40
|
+
@application_tag = 'WindowedApplication'
|
|
41
|
+
else
|
|
42
|
+
@application_tag = 'Application'
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
@component_names = []
|
|
46
|
+
if File.exists?("app/flex/#{base_folder}/components/generated")
|
|
47
|
+
@component_names = list_mxml_files("app/flex/#{base_folder}/components/generated")
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def manifest
|
|
52
|
+
record do |m|
|
|
53
|
+
if !options[:main_only]
|
|
54
|
+
m.file 'core/restfulx_tasks.rake', 'lib/tasks/restfulx_tasks.rake'
|
|
55
|
+
m.file 'core/emergent_tasks.rake', 'lib/tasks/emergent_tasks.rake'
|
|
56
|
+
m.file 'core/flex.properties', '.flexProperties'
|
|
57
|
+
m.file 'core/restfulx.yml', 'config/restfulx.yml'
|
|
58
|
+
if @use_air
|
|
59
|
+
m.template 'core/actionscriptair.properties', '.actionScriptProperties'
|
|
60
|
+
m.template 'core/projectair.properties', '.project'
|
|
61
|
+
else
|
|
62
|
+
m.template 'core/actionscript.properties', '.actionScriptProperties'
|
|
63
|
+
m.template 'core/project.properties', '.project'
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
m.directory 'html-template/history'
|
|
67
|
+
%w(index.template.html AC_OETags.js playerProductInstall.swf).each do |file|
|
|
68
|
+
m.file "core/html-template/#{file}", "html-template/#{file}"
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
%w(history.css history.js historyFrame.html).each do |file|
|
|
72
|
+
m.file "core/html-template/history/#{file}", "html-template/history/#{file}"
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# DIRECTORY
|
|
76
|
+
# src directory
|
|
77
|
+
%w(extras assets).each do |dir|
|
|
78
|
+
m.directory "app/flex/#{dir}"
|
|
79
|
+
end
|
|
80
|
+
%w(models views controllers).each do |dir|
|
|
81
|
+
m.directory "app/flex/#{base_folder}/#{dir}"
|
|
82
|
+
end
|
|
83
|
+
# models directory
|
|
84
|
+
%w(domain constant factory presentation).each do |dir|
|
|
85
|
+
m.directory "app/flex/#{base_folder}/models/#{dir}"
|
|
86
|
+
end
|
|
87
|
+
# views directory
|
|
88
|
+
%w(factory main navigation pages
|
|
89
|
+
home aboutUs contactUs gallery
|
|
90
|
+
login account profile document).each do |dir|
|
|
91
|
+
m.directory "app/flex/#{base_folder}/views/#{dir}"
|
|
92
|
+
end
|
|
93
|
+
# controllers directory
|
|
94
|
+
%w(command event manager map).each do |dir|
|
|
95
|
+
m.directory "app/flex/#{base_folder}/controllers/#{dir}"
|
|
96
|
+
end
|
|
97
|
+
# assets directory
|
|
98
|
+
%w(icons fonts styles images text html videos audio pdfs).each do |dir|
|
|
99
|
+
m.directory "app/flex/assets/#{dir}"
|
|
100
|
+
end
|
|
101
|
+
m.directory "config"
|
|
102
|
+
|
|
103
|
+
# RAILS FILES
|
|
104
|
+
# library and general config files
|
|
105
|
+
m.template 'lib/authenticated_system.rb', File.join("lib", "authenticated_system.rb")
|
|
106
|
+
m.template 'lib/authenticated_test_helper.rb', File.join("lib", "authenticated_test_helper.rb")
|
|
107
|
+
m.template 'lib/flash_session_hack.rb', File.join("config/initializers", "flash_session_hack.rb")
|
|
108
|
+
m.template 'lib/site_keys.rb', File.join("config/initializers", "site_keys.rb")
|
|
109
|
+
m.template 'lib/app_controller.rb.erb', File.join("app/controllers", "application.rb")
|
|
110
|
+
m.template 'config/Capfile', File.join("", "Capfile")
|
|
111
|
+
m.template 'config/deploy.rb', File.join("config", "deploy.rb")
|
|
112
|
+
|
|
113
|
+
# Models
|
|
114
|
+
%w(account account_mailer account_observer address asset asset_assignment category
|
|
115
|
+
content content_assignment image post section site tag user).each do |file|
|
|
116
|
+
m.template "app/models/#{file}.rb", "app/models/#{file}.rb"
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
# Account Views
|
|
120
|
+
m.directory "app/views/account_mailer"
|
|
121
|
+
%w(activation signup_notification).each do |file|
|
|
122
|
+
m.file "app/views/account_mailer/#{file}.erb", File.join("app/views/account_mailer/#{file}.erb")
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
# Controllers
|
|
126
|
+
%w(accounts_controller addresses_controller users_controller sites_controller
|
|
127
|
+
sessions_controller contents_controller content_assignments_controller).each do |file|
|
|
128
|
+
m.template "app/controllers/#{file}.rb", "app/controllers/#{file}.rb"
|
|
129
|
+
end
|
|
130
|
+
|
|
131
|
+
# Helpers
|
|
132
|
+
m.file 'app/helpers/accounts_helper.rb', File.join("app/helpers",
|
|
133
|
+
"accounts_helper.rb")
|
|
134
|
+
|
|
135
|
+
# m.template 'controls/accounts_helper.rb.zip', File.join("app/helpers",
|
|
136
|
+
# "accounts_helper.rb")
|
|
137
|
+
|
|
138
|
+
# Routing file! This is where everything happens!
|
|
139
|
+
m.template 'config/routes.rb', File.join("config",
|
|
140
|
+
"routes.rb")
|
|
141
|
+
|
|
142
|
+
# FLEX FILES
|
|
143
|
+
# Factories
|
|
144
|
+
# Maps
|
|
145
|
+
%w(ResourceFactory DocumentFactory DocumentViewFactory).each do |file|
|
|
146
|
+
m.template "app/flex/application/models/factory/#{file}.as",
|
|
147
|
+
"app/flex/#{base_folder}/models/factory/#{file}.as"
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
# Maps
|
|
151
|
+
%w(ManagerPresentationModelMap PresentationModelViewMap PresenterViewMap ObjectMap
|
|
152
|
+
DocumentsMap DocumentMap).each do |file|
|
|
153
|
+
m.template "app/flex/application/controllers/map/#{file}.mxml", "app/flex/#{base_folder}/controllers/map/#{file}.mxml"
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# Managers
|
|
157
|
+
%w(AboutUsManager AccountManager AuthenticationManager ContentManager
|
|
158
|
+
HomeManager MainManager PagesManager SiteManager ResourceManager
|
|
159
|
+
DocumentManager DocumentsManager UndoManager).each do |file|
|
|
160
|
+
m.template "app/flex/application/controllers/manager/#{file}.as",
|
|
161
|
+
"app/flex/#{base_folder}/controllers/manager/#{file}.as"
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
# Commands
|
|
165
|
+
%w(ICommand Undoable UpdateDocumentCommand).each do |file|
|
|
166
|
+
m.template "app/flex/application/controllers/command/#{file}.as",
|
|
167
|
+
"app/flex/#{base_folder}/controllers/command/#{file}.as"
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
# Events
|
|
171
|
+
%w(ResourceEvent NavigationEvent DocumentEvent UndoEvent).each do |file|
|
|
172
|
+
m.template "app/flex/application/controllers/event/#{file}.as",
|
|
173
|
+
"app/flex/#{base_folder}/controllers/event/#{file}.as"
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
# Domain Models
|
|
177
|
+
%w(Account Address Asset AssetAssignment Content ContentAssignment Session User
|
|
178
|
+
Document RichDocument PlainDocument Snapshot).each do |file|
|
|
179
|
+
m.template "app/flex/application/models/domain/#{file}.as",
|
|
180
|
+
"app/flex/#{base_folder}/models/domain/#{file}.as"
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
# Constants
|
|
184
|
+
%w(Resource ResourceAction ResourceResult DocumentType).each do |file|
|
|
185
|
+
m.template "app/flex/application/models/constant/#{file}.as",
|
|
186
|
+
"app/flex/#{base_folder}/models/constant/#{file}.as"
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Presentation Models
|
|
190
|
+
%w(AboutUsModel AccountModel AuthenticationModel ContactUsModel DocumentModel
|
|
191
|
+
ContentModel DocumentsModel HomeModel MainModel PagesModel ProfileModel ResourceModel
|
|
192
|
+
NavigationBarLeftModel NavigationBarRightModel NavigationBarTopModel NavigationBarBottomModel).each do |file|
|
|
193
|
+
m.template "app/flex/application/models/presentation/#{file}.as",
|
|
194
|
+
"app/flex/#{base_folder}/models/presentation/#{file}.as"
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
# Views
|
|
198
|
+
%w(about_us account contact_us gallery home login main pages profile).each do |file|
|
|
199
|
+
m.template "app/flex/application/views/#{file}/#{file}.mxml",
|
|
200
|
+
"app/flex/#{base_folder}/views/#{file.camelcase.dcfirst}/#{file.camelcase}View.mxml"
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
# Presenters
|
|
204
|
+
%w(home main pages).each do |file|
|
|
205
|
+
# FIX!
|
|
206
|
+
m.template "app/flex/application/views/#{file}/#{file}_presenter.as", "app/flex/#{base_folder}/views/#{file}/#{file.camelcase}Presenter.as"
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
# Troparchies
|
|
210
|
+
%w(home main pages).each do |file|
|
|
211
|
+
# FIX!
|
|
212
|
+
m.template "app/flex/application/views/#{file}/#{file}_troparchy.mxml", "app/flex/#{base_folder}/views/#{file}/#{file.camelcase}Troparchy.mxml"
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
# Document View Extras :)
|
|
216
|
+
%w(documents plain_document rich_document document).each do |file|
|
|
217
|
+
m.template "app/flex/application/views/document/#{file}.mxml",
|
|
218
|
+
"app/flex/#{base_folder}/views/document/#{file.camelcase}View.mxml"
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
# Navigation Extras :)
|
|
222
|
+
%w(navigation_bars navigation_bar_left navigation_bar_right navigation_bar_top navigation_bar_bottom).each do |file|
|
|
223
|
+
m.template "app/flex/application/views/navigation/#{file}_view.mxml",
|
|
224
|
+
"app/flex/#{base_folder}/views/navigation/#{file.camelcase}View.mxml"
|
|
225
|
+
m.template "app/flex/application/views/navigation/#{file}_presenter.as",
|
|
226
|
+
"app/flex/#{base_folder}/views/navigation/#{file.camelcase}Presenter.as"
|
|
227
|
+
end
|
|
228
|
+
m.template "app/flex/application/views/navigation/navigation_bars_troparchy.mxml", "app/flex/#{base_folder}/views/navigation/NavigationBarsTroparchy.mxml"
|
|
229
|
+
|
|
230
|
+
# LIBRARIES AND EXTRAS
|
|
231
|
+
# Add sample html file to aboutme
|
|
232
|
+
%w(lorem.html).each do |file|
|
|
233
|
+
m.file "app/flex/assets/html/#{file}", "app/flex/assets/html/#{file}"
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
# Add all of the SWC Libraries to the Project :)
|
|
237
|
+
%w(as3crypto-1.3patched.swc as3ds-1.04.swc as3httpclientlib-1.0.swc
|
|
238
|
+
as3corelib-0.92.1.swc flare.swc fluint.swc mate_0_8_6_enhanced.swc
|
|
239
|
+
pv3d.swc tweenMax.swc flexlib.swc containerEx.swc restfulx.swc
|
|
240
|
+
flex2BrowserManager.swc urlkitFlex3.swc openflux.swc analytics.swc).each do |file|
|
|
241
|
+
m.file "lib/#{file}", "lib/#{file}"
|
|
242
|
+
end
|
|
243
|
+
|
|
244
|
+
# Add all of the Theme Libraries to the Style directory
|
|
245
|
+
%w(itunes7Bg.jpg jukebox.css jukeboxGfx.swf obsidian.css obsidianBg.jpg obsidianGfx.swf).each do |file|
|
|
246
|
+
m.file "app/flex/assets/styles/#{file}", "app/flex/assets/styles/#{file}"
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
# Add all of the Images used in the Papervision Skybox
|
|
250
|
+
%w(hot_nebula_0.jpg hot_nebula_90.jpg hot_nebula_180.jpg
|
|
251
|
+
hot_nebula_270.jpg hot_nebula_bottom.jpg hot_nebula_top.jpg).each do |file|
|
|
252
|
+
m.file "app/flex/assets/images/#{file}", "app/flex/assets/images/#{file}"
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
# Add some alex grey images for showing off layouts
|
|
256
|
+
m.directory "app/flex/assets/images/alexgrey"
|
|
257
|
+
%w(Picture3.png Picture4.png Picture5.png Picture6.png
|
|
258
|
+
Picture7.png Picture8.png Picture9.png Picture10.png
|
|
259
|
+
Picture11.png Picture12.png Picture13.png Picture14.png).each do |file|
|
|
260
|
+
m.file "app/flex/assets/images/alexgrey/#{file}", "app/flex/assets/images/alexgrey/#{file}"
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
# Add all of the Fonts to the assets/font directory
|
|
264
|
+
%w(MyriadPro-Bold.otf MyriadPro-Regular.otf).each do |file|
|
|
265
|
+
m.file "app/flex/assets/fonts/#{file}", "app/flex/assets/fonts/#{file}"
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
m.dependency 'rx_controller', @args
|
|
269
|
+
|
|
270
|
+
# Add all of our Migrations
|
|
271
|
+
m.directory "db/migrate"
|
|
272
|
+
unless options[:skip_migration]
|
|
273
|
+
%w(assets asset_assignments addresses accounts
|
|
274
|
+
sessions contents content_assignments users).each_with_index do |file, i|
|
|
275
|
+
m.template "db/migrate/create_#{file}.rb", "db/migrate/2009021800470#{i}_create_#{file}.rb"
|
|
276
|
+
end
|
|
277
|
+
end
|
|
278
|
+
end
|
|
279
|
+
|
|
280
|
+
# MAIN APP CONFIG
|
|
281
|
+
# Main app and Config
|
|
282
|
+
m.template 'core/project-textmate.erb', "#{project_name.underscore}.tmproj"
|
|
283
|
+
m.template 'core/mainapp.mxml', File.join('app', 'flex', "#{project_name}.mxml")
|
|
284
|
+
m.template 'core/mainapp-config.xml', File.join('app', 'flex', "#{project_name}-config.xml")
|
|
285
|
+
m.template 'core/mainair-app.xml', File.join('app', 'flex', "#{project_name}-app.xml") if @use_air
|
|
286
|
+
end
|
|
287
|
+
end
|
|
288
|
+
|
|
289
|
+
protected
|
|
290
|
+
def add_options!(opt)
|
|
291
|
+
opt.separator ''
|
|
292
|
+
opt.separator 'Options:'
|
|
293
|
+
opt.on("-m", "--main-only", "Only generate the main Flex/AIR application file.",
|
|
294
|
+
"Default: false") { |v| options[:main_only] = v }
|
|
295
|
+
opt.on("-a", "--air", "Configure AIR project instead of Flex. Flex is default.",
|
|
296
|
+
"Default: false") { |v| options[:air_config] = v }
|
|
297
|
+
opt.on("--skip-framework", "Don't fetch the latest framework binary. You'll have to link/build the framework yourself.",
|
|
298
|
+
"Default: false") { |v| options[:skip_framework] = v }
|
|
299
|
+
opt.on("--skip-migration",
|
|
300
|
+
"Don't generate a migration file for this model") { |v| options[:skip_migration] = v }
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
# These three methods, model_names, list_as_files, and event_names, are used to
|
|
304
|
+
# create the Events.as class properly
|
|
305
|
+
def model_names
|
|
306
|
+
@model_names = []
|
|
307
|
+
if File.exists?("app/flex/#{base_folder}/models/domain")
|
|
308
|
+
@model_names = list_as_files("app/flex/#{base_folder}/models/domain")
|
|
309
|
+
end
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
def list_as_files(dir_name)
|
|
313
|
+
Dir.entries(dir_name).grep(/\.as$/).map { |name| name.sub(/\.as$/, "") }
|
|
314
|
+
end
|
|
315
|
+
|
|
316
|
+
def event_names
|
|
317
|
+
@event_names = []
|
|
318
|
+
if File.exists?("app/flex/#{base_folder}/models")
|
|
319
|
+
@event_names = list_as_files_for_events("app/flex/#{base_folder}/models")
|
|
320
|
+
end
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
def list_as_files_for_events(dir_name)
|
|
324
|
+
Dir.entries(dir_name).grep(/\.as$/).map { |name| name.sub(/\.as$/, "") }
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
def banner
|
|
328
|
+
"Usage: #{$0} #{spec.name}"
|
|
329
|
+
end
|
|
330
|
+
end
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
class AccountsController < ApplicationController
|
|
2
|
+
skip_before_filter :login_required, :except => :update
|
|
3
|
+
|
|
4
|
+
# Protect these actions behind an admin login
|
|
5
|
+
before_filter :admin_required, :only => [:suspend, :unsuspend, :destroy, :purge]
|
|
6
|
+
before_filter :find_account, :only => [:suspend, :unsuspend, :destroy, :purge]
|
|
7
|
+
|
|
8
|
+
# render new.rhtml
|
|
9
|
+
def new
|
|
10
|
+
@account = Account.new
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def create
|
|
14
|
+
logout_keeping_session!
|
|
15
|
+
@account = Account.new(params[:account])
|
|
16
|
+
@account.register! if @account && @account.valid?
|
|
17
|
+
success = @account && @account.valid?
|
|
18
|
+
if success && @account.errors.empty?
|
|
19
|
+
respond_to do |format|
|
|
20
|
+
format.html do
|
|
21
|
+
redirect_back_or_default('/')
|
|
22
|
+
flash[:notice] = "Thanks for signing up! We're sending you an email with your activation code."
|
|
23
|
+
end
|
|
24
|
+
format.fxml { render :fxml => @account.to_fxml(:only => [:id, :name, :login, :email]) }
|
|
25
|
+
format.xml { render :xml => @account.to_xml(:only => [:id, :name, :login, :email]),
|
|
26
|
+
:status => :created, :location => @account }
|
|
27
|
+
end
|
|
28
|
+
else
|
|
29
|
+
respond_to do |format|
|
|
30
|
+
format.html do
|
|
31
|
+
flash[:error] = "We couldn't set up that account, sorry. Please try again, or contact an admin (link is above)."
|
|
32
|
+
render :action => 'new'
|
|
33
|
+
end
|
|
34
|
+
format.fxml { render :fxml => @account.errors }
|
|
35
|
+
format.xml { render :xml => @account.errors, :status => :unprocessable_entity }
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def activate
|
|
41
|
+
logout_keeping_session!
|
|
42
|
+
account = Account.find_by_activation_code(params[:activation_code]) unless params[:activation_code].blank?
|
|
43
|
+
case
|
|
44
|
+
when (!params[:activation_code].blank?) && account && !account.active?
|
|
45
|
+
account.activate!
|
|
46
|
+
flash[:notice] = "Signup complete! Please sign in to continue."
|
|
47
|
+
redirect_to '/'
|
|
48
|
+
when params[:activation_code].blank?
|
|
49
|
+
flash[:error] = "The activation code was missing. Please follow the URL from your email."
|
|
50
|
+
redirect_back_or_default('/')
|
|
51
|
+
else
|
|
52
|
+
flash[:error] = "We couldn't find a account with that activation code -- check your email? Or maybe you've already activated -- try signing in."
|
|
53
|
+
redirect_back_or_default('/')
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def suspend
|
|
58
|
+
@account.suspend!
|
|
59
|
+
redirect_to accounts_path
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def unsuspend
|
|
63
|
+
@account.unsuspend!
|
|
64
|
+
redirect_to accounts_path
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
def destroy
|
|
68
|
+
@account.delete!
|
|
69
|
+
redirect_to accounts_path
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def purge
|
|
73
|
+
@account.destroy
|
|
74
|
+
redirect_to accounts_path
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
# There's no page here to update or destroy a account. If you add those, be
|
|
79
|
+
# smart -- make sure you check that the visitor is authorized to do so, that they
|
|
80
|
+
# supply their old password along with a new one to update it, etc.
|
|
81
|
+
|
|
82
|
+
# TODO: add old password checking and only update name, email and password fields
|
|
83
|
+
def update
|
|
84
|
+
@account = Account.current_account
|
|
85
|
+
respond_to do |format|
|
|
86
|
+
if @account.update_attributes(params[:account])
|
|
87
|
+
flash[:notice] = 'User was successfully updated.'
|
|
88
|
+
format.html { redirect_to(@user) }
|
|
89
|
+
format.xml { head :ok }
|
|
90
|
+
format.fxml { render :fxml => @account.to_fxml(:only => [:id, :name, :login, :email],
|
|
91
|
+
:methods => [:photo_url]) }
|
|
92
|
+
else
|
|
93
|
+
format.html { render :action => "edit" }
|
|
94
|
+
format.xml { render :xml => @account.errors, :status => :unprocessable_entity }
|
|
95
|
+
format.fxml { render :fxml => @account.errors }
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
protected
|
|
101
|
+
def find_account
|
|
102
|
+
@account = Account.find(params[:id])
|
|
103
|
+
end
|
|
104
|
+
end
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
class AddressesController < ApplicationController
|
|
2
|
+
# GET /addresses
|
|
3
|
+
# GET /addresses.xml
|
|
4
|
+
# GET /addresses.fxml
|
|
5
|
+
def index
|
|
6
|
+
@addresses = Address.find(:all)
|
|
7
|
+
|
|
8
|
+
respond_to do |format|
|
|
9
|
+
format.html # index.html.erb
|
|
10
|
+
format.xml { render :xml => @addresses }
|
|
11
|
+
format.fxml { render :fxml => @addresses }
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# GET /addresses/1
|
|
16
|
+
# GET /addresses/1.xml
|
|
17
|
+
# GET /addresses/1.fxml
|
|
18
|
+
def show
|
|
19
|
+
@address = Address.find(params[:id])
|
|
20
|
+
|
|
21
|
+
respond_to do |format|
|
|
22
|
+
format.html # show.html.erb
|
|
23
|
+
format.xml { render :xml => @address }
|
|
24
|
+
format.fxml { render :fxml => @address }
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# GET /addresses/new
|
|
29
|
+
# GET /addresses/new.xml
|
|
30
|
+
def new
|
|
31
|
+
@address = Address.new
|
|
32
|
+
|
|
33
|
+
respond_to do |format|
|
|
34
|
+
format.html # new.html.erb
|
|
35
|
+
format.xml { render :xml => @address }
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# GET /addresses/1/edit
|
|
40
|
+
def edit
|
|
41
|
+
@address = Address.find(params[:id])
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# POST /addresses
|
|
45
|
+
# POST /addresses.xml
|
|
46
|
+
# POST /addresses.fxml
|
|
47
|
+
def create
|
|
48
|
+
@address = Address.new(params[:address])
|
|
49
|
+
|
|
50
|
+
respond_to do |format|
|
|
51
|
+
if @address.save
|
|
52
|
+
flash[:notice] = 'Address was successfully created.'
|
|
53
|
+
format.html { redirect_to(@address) }
|
|
54
|
+
format.xml { render :xml => @address, :status => :created, :location => @address }
|
|
55
|
+
format.fxml { render :fxml => @address }
|
|
56
|
+
else
|
|
57
|
+
format.html { render :action => "new" }
|
|
58
|
+
format.xml { render :xml => @address.errors, :status => :unprocessable_entity }
|
|
59
|
+
format.fxml { render :fxml => @address.errors }
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# PUT /addresses/1
|
|
65
|
+
# PUT /addresses/1.xml
|
|
66
|
+
# PUT /addresses/1.fxml
|
|
67
|
+
def update
|
|
68
|
+
@address = Address.find(params[:id])
|
|
69
|
+
|
|
70
|
+
respond_to do |format|
|
|
71
|
+
if @address.update_attributes(params[:address])
|
|
72
|
+
flash[:notice] = 'Address was successfully updated.'
|
|
73
|
+
format.html { redirect_to(@address) }
|
|
74
|
+
format.xml { head :ok }
|
|
75
|
+
format.fxml { render :fxml => @address }
|
|
76
|
+
else
|
|
77
|
+
format.html { render :action => "edit" }
|
|
78
|
+
format.xml { render :xml => @address.errors, :status => :unprocessable_entity }
|
|
79
|
+
format.fxml { render :fxml => @address.errors }
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# DELETE /addresses/1
|
|
85
|
+
# DELETE /addresses/1.xml
|
|
86
|
+
# DELETE /addresses/1.fxml
|
|
87
|
+
def destroy
|
|
88
|
+
@address = Address.find(params[:id])
|
|
89
|
+
@address.destroy
|
|
90
|
+
|
|
91
|
+
respond_to do |format|
|
|
92
|
+
format.html { redirect_to(addresses_url) }
|
|
93
|
+
format.xml { head :ok }
|
|
94
|
+
format.fxml { render :fxml => @address }
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Filters added to this controller apply to all controllers in the application.
|
|
2
|
+
# Likewise, all the methods added will be available for all controllers.
|
|
3
|
+
|
|
4
|
+
class ApplicationController < ActionController::Base
|
|
5
|
+
helper :all # include all helpers, all the time
|
|
6
|
+
|
|
7
|
+
include AuthenticatedSystem
|
|
8
|
+
|
|
9
|
+
before_filter :login_required
|
|
10
|
+
|
|
11
|
+
before_filter :set_current_account
|
|
12
|
+
|
|
13
|
+
# See ActionController::RequestForgeryProtection for details
|
|
14
|
+
# Uncomment the :secret if you're not using the cookie session store
|
|
15
|
+
protect_from_forgery # :secret => '3f6014c50e2266aa27431c8e0022ea3f'
|
|
16
|
+
|
|
17
|
+
# See ActionController::Base for details
|
|
18
|
+
# Uncomment this to filter the contents of submitted sensitive data parameters
|
|
19
|
+
# from your application log (in this case, all fields with names like "password").
|
|
20
|
+
# filter_parameter_logging :password
|
|
21
|
+
|
|
22
|
+
protected
|
|
23
|
+
def set_current_account
|
|
24
|
+
Account.current_account = self.current_account
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ContentAssignment
|
data/rails_generators/emergent_config/templates/app/controllers/content_assignments_controller.rb
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
class ContentAssignmentsController < ApplicationController
|
|
2
|
+
# GET /content_assignments
|
|
3
|
+
# GET /content_assignments.xml
|
|
4
|
+
# GET /content_assignments.fxml
|
|
5
|
+
def index
|
|
6
|
+
@content_assignments = ContentAssignment.find(:all)
|
|
7
|
+
|
|
8
|
+
respond_to do |format|
|
|
9
|
+
format.html # index.html.erb
|
|
10
|
+
format.xml { render :xml => @content_assignments }
|
|
11
|
+
format.fxml { render :fxml => @content_assignments }
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# GET /content_assignments/1
|
|
16
|
+
# GET /content_assignments/1.xml
|
|
17
|
+
# GET /content_assignments/1.fxml
|
|
18
|
+
def show
|
|
19
|
+
@content_assignment = ContentAssignment.find(params[:id])
|
|
20
|
+
|
|
21
|
+
respond_to do |format|
|
|
22
|
+
format.html # show.html.erb
|
|
23
|
+
format.xml { render :xml => @content_assignment }
|
|
24
|
+
format.fxml { render :fxml => @content_assignment }
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# GET /content_assignments/new
|
|
29
|
+
# GET /content_assignments/new.xml
|
|
30
|
+
def new
|
|
31
|
+
@content_assignment = ContentAssignment.new
|
|
32
|
+
|
|
33
|
+
respond_to do |format|
|
|
34
|
+
format.html # new.html.erb
|
|
35
|
+
format.xml { render :xml => @content_assignment }
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
# GET /content_assignments/1/edit
|
|
40
|
+
def edit
|
|
41
|
+
@content_assignment = ContentAssignment.find(params[:id])
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# POST /content_assignments
|
|
45
|
+
# POST /content_assignments.xml
|
|
46
|
+
# POST /content_assignments.fxml
|
|
47
|
+
def create
|
|
48
|
+
@content_assignment = ContentAssignment.new(params[:content_assignment])
|
|
49
|
+
|
|
50
|
+
respond_to do |format|
|
|
51
|
+
if @content_assignment.save
|
|
52
|
+
flash[:notice] = 'ContentAssignment was successfully created.'
|
|
53
|
+
format.html { redirect_to(@content_assignment) }
|
|
54
|
+
format.xml { render :xml => @content_assignment, :status => :created, :location => @content_assignment }
|
|
55
|
+
format.fxml { render :fxml => @content_assignment }
|
|
56
|
+
else
|
|
57
|
+
format.html { render :action => "new" }
|
|
58
|
+
format.xml { render :xml => @content_assignment.errors, :status => :unprocessable_entity }
|
|
59
|
+
format.fxml { render :fxml => @content_assignment.errors }
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# PUT /content_assignments/1
|
|
65
|
+
# PUT /content_assignments/1.xml
|
|
66
|
+
# PUT /content_assignments/1.fxml
|
|
67
|
+
def update
|
|
68
|
+
@content_assignment = ContentAssignment.find(params[:id])
|
|
69
|
+
|
|
70
|
+
respond_to do |format|
|
|
71
|
+
if @content_assignment.update_attributes(params[:content_assignment])
|
|
72
|
+
flash[:notice] = 'ContentAssignment was successfully updated.'
|
|
73
|
+
format.html { redirect_to(@content_assignment) }
|
|
74
|
+
format.xml { head :ok }
|
|
75
|
+
format.fxml { render :fxml => @content_assignment }
|
|
76
|
+
else
|
|
77
|
+
format.html { render :action => "edit" }
|
|
78
|
+
format.xml { render :xml => @content_assignment.errors, :status => :unprocessable_entity }
|
|
79
|
+
format.fxml { render :fxml => @content_assignment.errors }
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
# DELETE /content_assignments/1
|
|
85
|
+
# DELETE /content_assignments/1.xml
|
|
86
|
+
# DELETE /content_assignments/1.fxml
|
|
87
|
+
def destroy
|
|
88
|
+
@content_assignment = ContentAssignment.find(params[:id])
|
|
89
|
+
@content_assignment.destroy
|
|
90
|
+
|
|
91
|
+
respond_to do |format|
|
|
92
|
+
format.html { redirect_to(content_assignments_url) }
|
|
93
|
+
format.xml { head :ok }
|
|
94
|
+
format.fxml { render :fxml => @content_assignment }
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|