emergent-core 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|