head_start 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +6 -0
- data/.rvmrc +1 -0
- data/Gemfile +4 -0
- data/README.txt +21 -0
- data/Rakefile +1 -0
- data/bin/head_start +3 -0
- data/head_start.gemspec +22 -0
- data/lib/assets/images/apple-touch-icon-114x114-precomposed.png +0 -0
- data/lib/assets/images/apple-touch-icon-57x57-precomposed.png +0 -0
- data/lib/assets/images/apple-touch-icon-72x72-precomposed.png +0 -0
- data/lib/assets/images/apple-touch-icon-precomposed.png +0 -0
- data/lib/assets/images/apple-touch-icon.png +0 -0
- data/lib/assets/images/favicon.ico +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_13.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_14.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_15.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_16.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_17.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_18.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_19.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_20.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_21.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_22.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_23.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_24.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_25.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_26.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_27.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_28.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_29.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_30.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_31.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_32.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/Layer_33.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/back.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/create.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/destroy.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/download.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/edit.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/index.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/negative.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/new.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/positive.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/print.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/show.png +0 -0
- data/lib/assets/images/icons/buttons/geomicons/update.png +0 -0
- data/lib/assets/images/icons/buttons/silk/back.png +0 -0
- data/lib/assets/images/icons/buttons/silk/create.png +0 -0
- data/lib/assets/images/icons/buttons/silk/destroy.png +0 -0
- data/lib/assets/images/icons/buttons/silk/download.png +0 -0
- data/lib/assets/images/icons/buttons/silk/edit.png +0 -0
- data/lib/assets/images/icons/buttons/silk/index.png +0 -0
- data/lib/assets/images/icons/buttons/silk/negative.png +0 -0
- data/lib/assets/images/icons/buttons/silk/new.png +0 -0
- data/lib/assets/images/icons/buttons/silk/positive.png +0 -0
- data/lib/assets/images/icons/buttons/silk/print.png +0 -0
- data/lib/assets/images/icons/buttons/silk/show.png +0 -0
- data/lib/assets/images/icons/buttons/silk/show2.png +0 -0
- data/lib/assets/images/icons/buttons/silk/update.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/bullet_add.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/bullet_delete.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/bullet_disk.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/email.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/exit.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/find.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/help.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/important.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/information.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/star.png +0 -0
- data/lib/assets/images/icons/buttons/silk/useful/stop.png +0 -0
- data/lib/assets/images/icons/messages/error_large.png +0 -0
- data/lib/assets/images/icons/messages/error_medium.png +0 -0
- data/lib/assets/images/icons/messages/error_small.png +0 -0
- data/lib/assets/images/icons/messages/notice_large.png +0 -0
- data/lib/assets/images/icons/messages/notice_medium.png +0 -0
- data/lib/assets/images/icons/messages/notice_small.png +0 -0
- data/lib/assets/images/icons/messages/success_large.png +0 -0
- data/lib/assets/images/icons/messages/success_medium.png +0 -0
- data/lib/assets/images/icons/messages/success_small.png +0 -0
- data/lib/assets/images/icons/messages/waiting_small.gif +0 -0
- data/lib/assets/images/icons/messages/warning_large.png +0 -0
- data/lib/assets/images/icons/messages/warning_medium.png +0 -0
- data/lib/assets/images/icons/messages/warning_small.png +0 -0
- data/lib/assets/images/scorpion/brownsword_logo.png +0 -0
- data/lib/assets/images/scorpion/datepicker/backstripes.gif +0 -0
- data/lib/assets/images/scorpion/datepicker/bg_header.jpg +0 -0
- data/lib/assets/images/scorpion/datepicker/bullet1.gif +0 -0
- data/lib/assets/images/scorpion/datepicker/bullet2.gif +0 -0
- data/lib/assets/images/scorpion/datepicker/cal.gif +0 -0
- data/lib/assets/images/scorpion/datepicker/gradient-e5e5e5-ffffff.gif +0 -0
- data/lib/assets/images/scorpion/delete.png +0 -0
- data/lib/assets/images/scorpion/fader.png +0 -0
- data/lib/assets/images/scorpion/grid.png +0 -0
- data/lib/assets/images/scorpion/icons/button_accept.png +0 -0
- data/lib/assets/images/scorpion/icons/button_back.png +0 -0
- data/lib/assets/images/scorpion/icons/button_complete.png +0 -0
- data/lib/assets/images/scorpion/icons/button_decline.png +0 -0
- data/lib/assets/images/scorpion/icons/button_document.png +0 -0
- data/lib/assets/images/scorpion/icons/button_invoice.png +0 -0
- data/lib/assets/images/scorpion/icons/button_photo.png +0 -0
- data/lib/assets/images/scorpion/icons/button_print.png +0 -0
- data/lib/assets/images/scorpion/icons/button_report.png +0 -0
- data/lib/assets/images/scorpion/icons/button_task.png +0 -0
- data/lib/assets/images/scorpion/icons/category_drag.png +0 -0
- data/lib/assets/images/scorpion/icons/document_sent.png +0 -0
- data/lib/assets/images/scorpion/icons/in_progress.png +0 -0
- data/lib/assets/images/scorpion/icons/information.png +0 -0
- data/lib/assets/images/scorpion/icons/job_accepted.png +0 -0
- data/lib/assets/images/scorpion/icons/job_completed.png +0 -0
- data/lib/assets/images/scorpion/icons/job_completed2.png +0 -0
- data/lib/assets/images/scorpion/icons/job_declined.png +0 -0
- data/lib/assets/images/scorpion/icons/job_unaccepted.png +0 -0
- data/lib/assets/images/scorpion/icons/priority1.png +0 -0
- data/lib/assets/images/scorpion/icons/priority2.png +0 -0
- data/lib/assets/images/scorpion/icons/priority3.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_email.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_fax1.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_fax2.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_fax3.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_portal1.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_portal2.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_portal3.png +0 -0
- data/lib/assets/images/scorpion/icons/sentby_post.png +0 -0
- data/lib/assets/images/scorpion/icons/task_priority.png +0 -0
- data/lib/assets/images/scorpion/indicator.gif +0 -0
- data/lib/assets/images/scorpion/loading.gif +0 -0
- data/lib/assets/images/scorpion/messaging/error_large.png +0 -0
- data/lib/assets/images/scorpion/messaging/error_medium.png +0 -0
- data/lib/assets/images/scorpion/messaging/error_small.png +0 -0
- data/lib/assets/images/scorpion/messaging/notice_large.png +0 -0
- data/lib/assets/images/scorpion/messaging/notice_medium.png +0 -0
- data/lib/assets/images/scorpion/messaging/notice_small.png +0 -0
- data/lib/assets/images/scorpion/messaging/success_large.png +0 -0
- data/lib/assets/images/scorpion/messaging/success_medium.png +0 -0
- data/lib/assets/images/scorpion/messaging/success_small.png +0 -0
- data/lib/assets/images/scorpion/messaging/waiting_small.gif +0 -0
- data/lib/assets/images/scorpion/messaging/warning_large.png +0 -0
- data/lib/assets/images/scorpion/messaging/warning_medium.png +0 -0
- data/lib/assets/images/scorpion/messaging/warning_small.png +0 -0
- data/lib/assets/images/scorpion/nav_button.gif +0 -0
- data/lib/assets/images/scorpion/nav_button_left.gif +0 -0
- data/lib/assets/images/scorpion/rails.png +0 -0
- data/lib/assets/images/scorpion/time.png +0 -0
- data/lib/assets/images/scorpion/web/abi.gif +0 -0
- data/lib/assets/images/scorpion/web/arrow1.gif +0 -0
- data/lib/assets/images/scorpion/web/bg.gif +0 -0
- data/lib/assets/images/scorpion/web/careers.gif +0 -0
- data/lib/assets/images/scorpion/web/company_profile.gif +0 -0
- data/lib/assets/images/scorpion/web/contact.gif +0 -0
- data/lib/assets/images/scorpion/web/content_bg.gif +0 -0
- data/lib/assets/images/scorpion/web/corporate_responsibility.gif +0 -0
- data/lib/assets/images/scorpion/web/footer_bg.gif +0 -0
- data/lib/assets/images/scorpion/web/general_investigations.gif +0 -0
- data/lib/assets/images/scorpion/web/header_bg.gif +0 -0
- data/lib/assets/images/scorpion/web/hr_employment_investigation.gif +0 -0
- data/lib/assets/images/scorpion/web/image1.jpg +0 -0
- data/lib/assets/images/scorpion/web/image10.jpg +0 -0
- data/lib/assets/images/scorpion/web/image11.jpg +0 -0
- data/lib/assets/images/scorpion/web/image12.jpg +0 -0
- data/lib/assets/images/scorpion/web/image13.jpg +0 -0
- data/lib/assets/images/scorpion/web/image14.jpg +0 -0
- data/lib/assets/images/scorpion/web/image2.jpg +0 -0
- data/lib/assets/images/scorpion/web/image3.jpg +0 -0
- data/lib/assets/images/scorpion/web/image4.jpg +0 -0
- data/lib/assets/images/scorpion/web/image5.jpg +0 -0
- data/lib/assets/images/scorpion/web/image6.jpg +0 -0
- data/lib/assets/images/scorpion/web/image7.jpg +0 -0
- data/lib/assets/images/scorpion/web/image8.jpg +0 -0
- data/lib/assets/images/scorpion/web/image9.jpg +0 -0
- data/lib/assets/images/scorpion/web/logo.gif +0 -0
- data/lib/assets/images/scorpion/web/logo_rcr.jpg +0 -0
- data/lib/assets/images/scorpion/web/logo_talksafe.gif +0 -0
- data/lib/assets/images/scorpion/web/mi5.gif +0 -0
- data/lib/assets/images/scorpion/web/navbar.gif +9 -0
- data/lib/assets/images/scorpion/web/navbut1.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut2.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut3.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut4.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut5.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut6.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut7.gif +0 -0
- data/lib/assets/images/scorpion/web/navbut8.gif +0 -0
- data/lib/assets/images/scorpion/web/payment_income_protection.gif +0 -0
- data/lib/assets/images/scorpion/web/pdf.gif +0 -0
- data/lib/assets/images/scorpion/web/press.gif +0 -0
- data/lib/assets/images/scorpion/web/rta_investigation.gif +0 -0
- data/lib/assets/images/scorpion/web/subnav_bg.gif +0 -0
- data/lib/assets/images/scorpion/web/surveillance.gif +0 -0
- data/lib/assets/images/scorpion/web/welcome.gif +0 -0
- data/lib/assets/images/scorpion/web/why_instruct_us.gif +0 -0
- data/lib/assets/images/scorpion/web-app-theme/application_edit.png +0 -0
- data/lib/assets/images/scorpion/web-app-theme/cross.png +0 -0
- data/lib/assets/images/scorpion/web-app-theme/key.png +0 -0
- data/lib/assets/images/scorpion/web-app-theme/tick.png +0 -0
- data/lib/head_start/helpers/head_start_rails_helper.rb +71 -0
- data/lib/head_start/version.rb +3 -0
- data/lib/head_start.rb +22 -0
- data/stylesheets/_boilerplate.scss +6 -0
- data/stylesheets/_jumpstart.scss +1 -0
- data/stylesheets/_scorpion.scss +5 -0
- data/stylesheets/boilerplate/_fox_form_styles.scss +353 -0
- data/stylesheets/boilerplate/_fox_menu_styles.scss +78 -0
- data/stylesheets/boilerplate/_fox_message_styles.scss +99 -0
- data/stylesheets/boilerplate/_fox_table_styles.scss +40 -0
- data/stylesheets/scorpion/_fox_message_styles.scss +78 -0
- data/stylesheets/scorpion/_kathleene.scss +272 -0
- data/stylesheets/scorpion/_web_app_theme.scss +397 -0
- data/templates/boilerplate/.gitignore +40 -0
- data/templates/boilerplate/404.html +38 -0
- data/templates/boilerplate/crossdomain.xml +25 -0
- data/templates/boilerplate/frank_setup.rb +79 -0
- data/templates/boilerplate/htaccess +503 -0
- data/templates/boilerplate/humans.txt +43 -0
- data/templates/boilerplate/javascripts/boilerplate.js +9 -0
- data/templates/boilerplate/javascripts/stand_alone/application.js +0 -0
- data/templates/boilerplate/layouts/_flashes.html.haml +4 -0
- data/templates/boilerplate/layouts/_footer.html.haml +2 -0
- data/templates/boilerplate/layouts/_head.html.haml +29 -0
- data/templates/boilerplate/layouts/_header.html.haml +1 -0
- data/templates/boilerplate/layouts/_javascripts.html.haml +24 -0
- data/templates/boilerplate/layouts/boilerplate.html.haml +27 -0
- data/templates/boilerplate/layouts/stand_alone/_flashes.haml +4 -0
- data/templates/boilerplate/layouts/stand_alone/_head.haml +27 -0
- data/templates/boilerplate/layouts/stand_alone/_javascripts.haml +24 -0
- data/templates/boilerplate/layouts/stand_alone/boilerplate.haml +33 -0
- data/templates/boilerplate/manifest.rb +82 -0
- data/templates/boilerplate/robots.txt +5 -0
- data/templates/boilerplate/stylesheets/_custom_styles.scss +7 -0
- data/templates/boilerplate/stylesheets/_helpers.scss +129 -0
- data/templates/boilerplate/stylesheets/_media.scss +15 -0
- data/templates/boilerplate/stylesheets/_normalize.scss +208 -0
- data/templates/boilerplate/stylesheets/_print.scss +19 -0
- data/templates/boilerplate/stylesheets/_styling_helpers.scss +24 -0
- data/templates/boilerplate/stylesheets/rails/boilerplate.scss +9 -0
- data/templates/boilerplate/stylesheets/stand_alone/_custom_styles.scss +6 -0
- data/templates/boilerplate/stylesheets/stand_alone/_template.scss +11 -0
- data/templates/boilerplate/stylesheets/stand_alone/boilerplate.scss +2 -0
- data/templates/boilerplate/stylesheets/template.scss +11 -0
- data/templates/boilerplate/test/index.html +31 -0
- data/templates/boilerplate/test/qunit/qunit.css +148 -0
- data/templates/boilerplate/test/qunit/qunit.js +1265 -0
- data/templates/boilerplate/test/tests.js +27 -0
- data/templates/project/manifest.rb +2 -0
- data/templates/project/screen.scss +2 -0
- data/templates/scorpion/application.scss +8 -0
- data/templates/scorpion/manifest.rb +29 -0
- data/templates/scorpion/partials/_base.scss +26 -0
- data/templates/scorpion/partials/_fonts.scss +4 -0
- data/templates/scorpion/partials/_media.scss +22 -0
- data/templates/scorpion/partials/_overrides.scss +57 -0
- data/templates/scorpion/partials/_page.scss +485 -0
- data/templates/scorpion/style.scss +28 -0
- data/vendor/assets/javascripts/boilerplate/plugins.js +20 -0
- data/vendor/assets/javascripts/boilerplate.js +3 -0
- data/vendor/assets/javascripts/modernizr/modernizr-2.0.6.min.js +4 -0
- data/vendor/assets/javascripts/modernizr.js +3 -0
- data/vendor/assets/javascripts/scorpion/application.js +37 -0
- data/vendor/assets/javascripts/scorpion/category_drag_drop.js +12 -0
- data/vendor/assets/javascripts/scorpion/controls.js +963 -0
- data/vendor/assets/javascripts/scorpion/datepicker.js +1445 -0
- data/vendor/assets/javascripts/scorpion/documents.js +14 -0
- data/vendor/assets/javascripts/scorpion/dragdrop.js +973 -0
- data/vendor/assets/javascripts/scorpion/effects.js +1128 -0
- data/vendor/assets/javascripts/scorpion/example_text.js +39 -0
- data/vendor/assets/javascripts/scorpion/fees.js +106 -0
- data/vendor/assets/javascripts/scorpion/invoices.js +18 -0
- data/vendor/assets/javascripts/scorpion/jobs.js +7 -0
- data/vendor/assets/javascripts/scorpion/jobs_admin.js +21 -0
- data/vendor/assets/javascripts/scorpion/jquery.js +8865 -0
- data/vendor/assets/javascripts/scorpion/jquery.min.js +16 -0
- data/vendor/assets/javascripts/scorpion/jquery.rest_in_place.js +55 -0
- data/vendor/assets/javascripts/scorpion/lang/af.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/ar.js +50 -0
- data/vendor/assets/javascripts/scorpion/lang/de.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/du.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/en.js +42 -0
- data/vendor/assets/javascripts/scorpion/lang/es.js +41 -0
- data/vendor/assets/javascripts/scorpion/lang/fi.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/fr.js +44 -0
- data/vendor/assets/javascripts/scorpion/lang/gr.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/he.js +49 -0
- data/vendor/assets/javascripts/scorpion/lang/it.js +13 -0
- data/vendor/assets/javascripts/scorpion/lang/nl.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/no.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/pt.js +50 -0
- data/vendor/assets/javascripts/scorpion/lang/ro.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/ru.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/sp.js +40 -0
- data/vendor/assets/javascripts/scorpion/lang/sv.js +41 -0
- data/vendor/assets/javascripts/scorpion/lang/ua.js +40 -0
- data/vendor/assets/javascripts/scorpion/modernizr.min.js +2 -0
- data/vendor/assets/javascripts/scorpion/photo_reports.js +16 -0
- data/vendor/assets/javascripts/scorpion/photo_reports_drag_drop.js +15 -0
- data/vendor/assets/javascripts/scorpion/plugins.js +16 -0
- data/vendor/assets/javascripts/scorpion/prototype.js +4320 -0
- data/vendor/assets/javascripts/scorpion/rails.js +315 -0
- data/vendor/assets/javascripts/scorpion/respond.min.js +7 -0
- data/vendor/assets/javascripts/scorpion/rest_in_place.js +57 -0
- data/vendor/assets/javascripts/scorpion/supplementary_tasks.js +45 -0
- data/vendor/assets/javascripts/scorpion/tasks.js +52 -0
- data/vendor/assets/javascripts/scorpion/webglobal.js +45 -0
- metadata +360 -0
@@ -0,0 +1,315 @@
|
|
1
|
+
/**
|
2
|
+
* Unobtrusive scripting adapter for jQuery
|
3
|
+
*
|
4
|
+
* Requires jQuery 1.4.4 or later.
|
5
|
+
* https://github.com/rails/jquery-ujs
|
6
|
+
|
7
|
+
* Uploading file using rails.js
|
8
|
+
* =============================
|
9
|
+
*
|
10
|
+
* By default, browsers do not allow files to be uploaded via AJAX. As a result, if there are any non-blank file fields
|
11
|
+
* in the remote form, this adapter aborts the AJAX submission and allows the form to submit through standard means.
|
12
|
+
*
|
13
|
+
* The `ajax:aborted:file` event allows you to bind your own handler to process the form submission however you wish.
|
14
|
+
*
|
15
|
+
* Ex:
|
16
|
+
* $('form').live('ajax:aborted:file', function(event, elements){
|
17
|
+
* // Implement own remote file-transfer handler here for non-blank file inputs passed in `elements`.
|
18
|
+
* // Returning false in this handler tells rails.js to disallow standard form submission
|
19
|
+
* return false;
|
20
|
+
* });
|
21
|
+
*
|
22
|
+
* The `ajax:aborted:file` event is fired when a file-type input is detected with a non-blank value.
|
23
|
+
*
|
24
|
+
* Third-party tools can use this hook to detect when an AJAX file upload is attempted, and then use
|
25
|
+
* techniques like the iframe method to upload the file instead.
|
26
|
+
*
|
27
|
+
* Required fields in rails.js
|
28
|
+
* ===========================
|
29
|
+
*
|
30
|
+
* If any blank required inputs (required="required") are detected in the remote form, the whole form submission
|
31
|
+
* is canceled. Note that this is unlike file inputs, which still allow standard (non-AJAX) form submission.
|
32
|
+
*
|
33
|
+
* The `ajax:aborted:required` event allows you to bind your own handler to inform the user of blank required inputs.
|
34
|
+
*
|
35
|
+
* !! Note that Opera does not fire the form's submit event if there are blank required inputs, so this event may never
|
36
|
+
* get fired in Opera. This event is what causes other browsers to exhibit the same submit-aborting behavior.
|
37
|
+
*
|
38
|
+
* Ex:
|
39
|
+
* $('form').live('ajax:aborted:required', function(event, elements){
|
40
|
+
* // Returning false in this handler tells rails.js to submit the form anyway.
|
41
|
+
* // The blank required inputs are passed to this function in `elements`.
|
42
|
+
* return ! confirm("Would you like to submit the form with missing info?");
|
43
|
+
* });
|
44
|
+
*/
|
45
|
+
|
46
|
+
(function($) {
|
47
|
+
// Shorthand to make it a little easier to call public rails functions from within rails.js
|
48
|
+
var rails;
|
49
|
+
|
50
|
+
$.rails = rails = {
|
51
|
+
// Link elements bound by jquery-ujs
|
52
|
+
linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote]',
|
53
|
+
|
54
|
+
// Form elements bound by jquery-ujs
|
55
|
+
formSubmitSelector: 'form',
|
56
|
+
|
57
|
+
// Form input elements bound by jquery-ujs
|
58
|
+
formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type])',
|
59
|
+
|
60
|
+
// Form input elements disabled during form submission
|
61
|
+
disableSelector: 'input[data-disable-with], button[data-disable-with], textarea[data-disable-with]',
|
62
|
+
|
63
|
+
// Form input elements re-enabled after form submission
|
64
|
+
enableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled',
|
65
|
+
|
66
|
+
// Form required input elements
|
67
|
+
requiredInputSelector: 'input[name][required],textarea[name][required]',
|
68
|
+
|
69
|
+
// Form file input elements
|
70
|
+
fileInputSelector: 'input:file',
|
71
|
+
|
72
|
+
// Make sure that every Ajax request sends the CSRF token
|
73
|
+
CSRFProtection: function(xhr) {
|
74
|
+
var token = $('meta[name="csrf-token"]').attr('content');
|
75
|
+
if (token) xhr.setRequestHeader('X-CSRF-Token', token);
|
76
|
+
},
|
77
|
+
|
78
|
+
// Triggers an event on an element and returns false if the event result is false
|
79
|
+
fire: function(obj, name, data) {
|
80
|
+
var event = $.Event(name);
|
81
|
+
obj.trigger(event, data);
|
82
|
+
return event.result !== false;
|
83
|
+
},
|
84
|
+
|
85
|
+
// Default confirm dialog, may be overridden with custom confirm dialog in $.rails.confirm
|
86
|
+
confirm: function(message) {
|
87
|
+
return confirm(message);
|
88
|
+
},
|
89
|
+
|
90
|
+
// Default ajax function, may be overridden with custom function in $.rails.ajax
|
91
|
+
ajax: function(options) {
|
92
|
+
return $.ajax(options);
|
93
|
+
},
|
94
|
+
|
95
|
+
// Submits "remote" forms and links with ajax
|
96
|
+
handleRemote: function(element) {
|
97
|
+
var method, url, data,
|
98
|
+
dataType = element.data('type') || ($.ajaxSettings && $.ajaxSettings.dataType);
|
99
|
+
|
100
|
+
if (rails.fire(element, 'ajax:before')) {
|
101
|
+
|
102
|
+
if (element.is('form')) {
|
103
|
+
method = element.attr('method');
|
104
|
+
url = element.attr('action');
|
105
|
+
data = element.serializeArray();
|
106
|
+
// memoized value from clicked submit button
|
107
|
+
var button = element.data('ujs:submit-button');
|
108
|
+
if (button) {
|
109
|
+
data.push(button);
|
110
|
+
element.data('ujs:submit-button', null);
|
111
|
+
}
|
112
|
+
} else {
|
113
|
+
method = element.data('method');
|
114
|
+
url = element.attr('href');
|
115
|
+
data = null;
|
116
|
+
}
|
117
|
+
|
118
|
+
rails.ajax({
|
119
|
+
url: url, type: method || 'GET', data: data, dataType: dataType,
|
120
|
+
// stopping the "ajax:beforeSend" event will cancel the ajax request
|
121
|
+
beforeSend: function(xhr, settings) {
|
122
|
+
if (settings.dataType === undefined) {
|
123
|
+
xhr.setRequestHeader('accept', '*/*;q=0.5, ' + settings.accepts.script);
|
124
|
+
}
|
125
|
+
return rails.fire(element, 'ajax:beforeSend', [xhr, settings]);
|
126
|
+
},
|
127
|
+
success: function(data, status, xhr) {
|
128
|
+
element.trigger('ajax:success', [data, status, xhr]);
|
129
|
+
},
|
130
|
+
complete: function(xhr, status) {
|
131
|
+
element.trigger('ajax:complete', [xhr, status]);
|
132
|
+
},
|
133
|
+
error: function(xhr, status, error) {
|
134
|
+
element.trigger('ajax:error', [xhr, status, error]);
|
135
|
+
}
|
136
|
+
});
|
137
|
+
}
|
138
|
+
},
|
139
|
+
|
140
|
+
// Handles "data-method" on links such as:
|
141
|
+
// <a href="/users/5" data-method="delete" rel="nofollow" data-confirm="Are you sure?">Delete</a>
|
142
|
+
handleMethod: function(link) {
|
143
|
+
var href = link.attr('href'),
|
144
|
+
method = link.data('method'),
|
145
|
+
csrf_token = $('meta[name=csrf-token]').attr('content'),
|
146
|
+
csrf_param = $('meta[name=csrf-param]').attr('content'),
|
147
|
+
form = $('<form method="post" action="' + href + '"></form>'),
|
148
|
+
metadata_input = '<input name="_method" value="' + method + '" type="hidden" />';
|
149
|
+
|
150
|
+
if (csrf_param !== undefined && csrf_token !== undefined) {
|
151
|
+
metadata_input += '<input name="' + csrf_param + '" value="' + csrf_token + '" type="hidden" />';
|
152
|
+
}
|
153
|
+
|
154
|
+
form.hide().append(metadata_input).appendTo('body');
|
155
|
+
form.submit();
|
156
|
+
},
|
157
|
+
|
158
|
+
/* Disables form elements:
|
159
|
+
- Caches element value in 'ujs:enable-with' data store
|
160
|
+
- Replaces element text with value of 'data-disable-with' attribute
|
161
|
+
- Adds disabled=disabled attribute
|
162
|
+
*/
|
163
|
+
disableFormElements: function(form) {
|
164
|
+
form.find(rails.disableSelector).each(function() {
|
165
|
+
var element = $(this), method = element.is('button') ? 'html' : 'val';
|
166
|
+
element.data('ujs:enable-with', element[method]());
|
167
|
+
element[method](element.data('disable-with'));
|
168
|
+
element.attr('disabled', 'disabled');
|
169
|
+
});
|
170
|
+
},
|
171
|
+
|
172
|
+
/* Re-enables disabled form elements:
|
173
|
+
- Replaces element text with cached value from 'ujs:enable-with' data store (created in `disableFormElements`)
|
174
|
+
- Removes disabled attribute
|
175
|
+
*/
|
176
|
+
enableFormElements: function(form) {
|
177
|
+
form.find(rails.enableSelector).each(function() {
|
178
|
+
var element = $(this), method = element.is('button') ? 'html' : 'val';
|
179
|
+
if (element.data('ujs:enable-with')) element[method](element.data('ujs:enable-with'));
|
180
|
+
element.removeAttr('disabled');
|
181
|
+
});
|
182
|
+
},
|
183
|
+
|
184
|
+
/*
|
185
|
+
For 'data-confirm' attribute:
|
186
|
+
- fires `confirm` event
|
187
|
+
- shows the confirmation dialog
|
188
|
+
- fires the `confirm:complete` event
|
189
|
+
|
190
|
+
Returns `true` if no function stops the chain and user chose yes; `false` otherwise.
|
191
|
+
Attaching a handler to the element's `confirm` event that returns a `falsy` value cancels the confirmation dialog.
|
192
|
+
Attaching a handler to the element's `confirm:complete` event that returns a `falsy` value makes this function
|
193
|
+
return false.
|
194
|
+
*/
|
195
|
+
allowAction: function(element) {
|
196
|
+
var message = element.data('confirm'),
|
197
|
+
answer = false, callback;
|
198
|
+
if (!message) { return true; }
|
199
|
+
|
200
|
+
if (rails.fire(element, 'confirm')) {
|
201
|
+
answer = rails.confirm(message);
|
202
|
+
callback = rails.fire(element, 'confirm:complete', [answer]);
|
203
|
+
}
|
204
|
+
return answer && callback;
|
205
|
+
},
|
206
|
+
|
207
|
+
// Helper function which checks for blank inputs in a form that match the specified CSS selector
|
208
|
+
blankInputs: function(form, specifiedSelector, nonBlank) {
|
209
|
+
var inputs = $(), input,
|
210
|
+
selector = specifiedSelector || 'input,textarea';
|
211
|
+
form.find(selector).each(function() {
|
212
|
+
input = $(this);
|
213
|
+
// Collect non-blank inputs if nonBlank option is true, otherwise, collect blank inputs
|
214
|
+
if (nonBlank ? input.val() : !input.val()) {
|
215
|
+
inputs = inputs.add(input);
|
216
|
+
}
|
217
|
+
});
|
218
|
+
return inputs.length ? inputs : false;
|
219
|
+
},
|
220
|
+
|
221
|
+
// Helper function which checks for non-blank inputs in a form that match the specified CSS selector
|
222
|
+
nonBlankInputs: function(form, specifiedSelector) {
|
223
|
+
return rails.blankInputs(form, specifiedSelector, true); // true specifies nonBlank
|
224
|
+
},
|
225
|
+
|
226
|
+
// Helper function, needed to provide consistent behavior in IE
|
227
|
+
stopEverything: function(e) {
|
228
|
+
e.stopImmediatePropagation();
|
229
|
+
return false;
|
230
|
+
},
|
231
|
+
|
232
|
+
// find all the submit events directly bound to the form and
|
233
|
+
// manually invoke them. If anyone returns false then stop the loop
|
234
|
+
callFormSubmitBindings: function(form) {
|
235
|
+
var events = form.data('events'), continuePropagation = true;
|
236
|
+
if (events !== undefined && events['submit'] !== undefined) {
|
237
|
+
$.each(events['submit'], function(i, obj){
|
238
|
+
if (typeof obj.handler === 'function') return continuePropagation = obj.handler(obj.data);
|
239
|
+
});
|
240
|
+
}
|
241
|
+
return continuePropagation;
|
242
|
+
}
|
243
|
+
};
|
244
|
+
|
245
|
+
// ajaxPrefilter is a jQuery 1.5 feature
|
246
|
+
if ('ajaxPrefilter' in $) {
|
247
|
+
$.ajaxPrefilter(function(options, originalOptions, xhr){ rails.CSRFProtection(xhr); });
|
248
|
+
} else {
|
249
|
+
$(document).ajaxSend(function(e, xhr){ rails.CSRFProtection(xhr); });
|
250
|
+
}
|
251
|
+
|
252
|
+
$(rails.linkClickSelector).live('click.rails', function(e) {
|
253
|
+
var link = $(this);
|
254
|
+
if (!rails.allowAction(link)) return rails.stopEverything(e);
|
255
|
+
|
256
|
+
if (link.data('remote') !== undefined) {
|
257
|
+
rails.handleRemote(link);
|
258
|
+
return false;
|
259
|
+
} else if (link.data('method')) {
|
260
|
+
rails.handleMethod(link);
|
261
|
+
return false;
|
262
|
+
}
|
263
|
+
});
|
264
|
+
|
265
|
+
$(rails.formSubmitSelector).live('submit.rails', function(e) {
|
266
|
+
var form = $(this),
|
267
|
+
remote = form.data('remote') !== undefined,
|
268
|
+
blankRequiredInputs = rails.blankInputs(form, rails.requiredInputSelector),
|
269
|
+
nonBlankFileInputs = rails.nonBlankInputs(form, rails.fileInputSelector);
|
270
|
+
|
271
|
+
if (!rails.allowAction(form)) return rails.stopEverything(e);
|
272
|
+
|
273
|
+
// skip other logic when required values are missing or file upload is present
|
274
|
+
if (blankRequiredInputs && rails.fire(form, 'ajax:aborted:required', [blankRequiredInputs])) {
|
275
|
+
return !remote;
|
276
|
+
}
|
277
|
+
|
278
|
+
if (remote) {
|
279
|
+
if (nonBlankFileInputs) {
|
280
|
+
return rails.fire(form, 'ajax:aborted:file', [nonBlankFileInputs]);
|
281
|
+
}
|
282
|
+
|
283
|
+
// If browser does not support submit bubbling, then this live-binding will be called before direct
|
284
|
+
// bindings. Therefore, we should directly call any direct bindings before remotely submitting form.
|
285
|
+
if (!$.support.submitBubbles && rails.callFormSubmitBindings(form) === false) return rails.stopEverything(e);
|
286
|
+
|
287
|
+
rails.handleRemote(form);
|
288
|
+
return false;
|
289
|
+
} else {
|
290
|
+
// slight timeout so that the submit button gets properly serialized
|
291
|
+
setTimeout(function(){ rails.disableFormElements(form); }, 13);
|
292
|
+
}
|
293
|
+
});
|
294
|
+
|
295
|
+
$(rails.formInputClickSelector).live('click.rails', function(event) {
|
296
|
+
var button = $(this);
|
297
|
+
|
298
|
+
if (!rails.allowAction(button)) return rails.stopEverything(event);
|
299
|
+
|
300
|
+
// register the pressed submit button
|
301
|
+
var name = button.attr('name'),
|
302
|
+
data = name ? {name:name, value:button.val()} : null;
|
303
|
+
|
304
|
+
button.closest('form').data('ujs:submit-button', data);
|
305
|
+
});
|
306
|
+
|
307
|
+
$(rails.formSubmitSelector).live('ajax:beforeSend.rails', function(event) {
|
308
|
+
if (this == event.target) rails.disableFormElements($(this));
|
309
|
+
});
|
310
|
+
|
311
|
+
$(rails.formSubmitSelector).live('ajax:complete.rails', function(event) {
|
312
|
+
if (this == event.target) rails.enableFormElements($(this));
|
313
|
+
});
|
314
|
+
|
315
|
+
})( jQuery );
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/*
|
2
|
+
* respond.js - A small and fast polyfill for min/max-width CSS3 Media Queries
|
3
|
+
* Copyright 2011, Scott Jehl, scottjehl.com
|
4
|
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
5
|
+
* Usage: Check out the readme file or github.com/scottjehl/respond
|
6
|
+
*/
|
7
|
+
(function(e,h){e.respond={};respond.update=function(){};respond.mediaQueriesSupported=h;if(h){return}var u=e.document,r=u.documentElement,i=[],k=[],p=[],o={},g=30,f=u.getElementsByTagName("head")[0]||r,b=f.getElementsByTagName("link"),d=[],a=function(){var B=b,w=B.length;for(var z=0;z<w;z++){var y=B[z],x=y.href,A=y.media,v=y.rel&&y.rel.toLowerCase()==="stylesheet";if(!!x&&v&&!o[x]){if(!/^([a-zA-Z]+?:(\/\/)?(www\.)?)/.test(x)||x.replace(RegExp.$1,"").split("/")[0]===e.location.host){d.push({href:x,media:A})}else{o[x]=true}}}t()},t=function(){if(d.length){var v=d.shift();n(v.href,function(w){m(w,v.href,v.media);o[v.href]=true;t()})}},m=function(G,v,x){var E=G.match(/@media ([^\{]+)\{((?!@media)[\s\S])*(?=\}[\s]*\/\*\/mediaquery\*\/)/gmi),H=E&&E.length||0,v=v.substring(0,v.lastIndexOf("/")),w=function(I){return I.replace(/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,"$1"+v+"$2$3")},y=!H&&x;if(v.length){v+="/"}if(y){H=1}for(var B=0;B<H;B++){var C;if(y){C=x;k.push(w(G))}else{C=E[B].match(/@media ([^\{]+)\{([\S\s]+?)$/)&&RegExp.$1;k.push(RegExp.$2&&w(RegExp.$2))}var z=C.split(","),F=z.length;for(var A=0;A<F;A++){var D=z[A];i.push({media:D.match(/(only\s+)?([a-zA-Z]+)(\sand)?/)&&RegExp.$2,rules:k.length-1,minw:D.match(/\(min\-width:[\s]*([\s]*[0-9]+)px[\s]*\)/)&&parseFloat(RegExp.$1),maxw:D.match(/\(max\-width:[\s]*([\s]*[0-9]+)px[\s]*\)/)&&parseFloat(RegExp.$1)})}}j()},l,q,j=function(E){var v="clientWidth",x=r[v],D=u.compatMode==="CSS1Compat"&&x||u.body[v]||x,z={},C=u.createDocumentFragment(),B=b[b.length-1],w=(new Date()).getTime();if(E&&l&&w-l<g){clearTimeout(q);q=setTimeout(j,g);return}else{l=w}for(var y in i){var F=i[y];if(!F.minw&&!F.maxw||(!F.minw||F.minw&&D>=F.minw)&&(!F.maxw||F.maxw&&D<=F.maxw)){if(!z[F.media]){z[F.media]=[]}z[F.media].push(k[F.rules])}}for(var y in p){if(p[y]&&p[y].parentNode===f){f.removeChild(p[y])}}for(var y in z){var G=u.createElement("style"),A=z[y].join("\n");G.type="text/css";G.media=y;if(G.styleSheet){G.styleSheet.cssText=A}else{G.appendChild(u.createTextNode(A))}C.appendChild(G);p.push(G)}f.insertBefore(C,B.nextSibling)},n=function(v,x){var w=c();if(!w){return}w.open("GET",v,true);w.onreadystatechange=function(){if(w.readyState!=4||w.status!=200&&w.status!=304){return}x(w.responseText)};if(w.readyState==4){return}w.send()},c=(function(){var v=false,w=[function(){return new ActiveXObject("Microsoft.XMLHTTP")},function(){return new ActiveXObject("Msxml3.XMLHTTP")},function(){return new ActiveXObject("Msxml2.XMLHTTP")},function(){return new XMLHttpRequest()}],y=w.length;while(y--){try{v=w[y]()}catch(x){continue}break}return function(){return v}})();a();respond.update=a;function s(){j(true)}if(e.addEventListener){e.addEventListener("resize",s,false)}else{if(e.attachEvent){e.attachEvent("onresize",s)}}})(this,(function(f){if(f.matchMedia){return true}var e,i=document,c=i.documentElement,g=c.firstElementChild||c.firstChild,h=!i.body,d=i.body||i.createElement("body"),b=i.createElement("div"),a="only all";b.id="mq-test-1";b.style.cssText="position:absolute;top:-99em";d.appendChild(b);b.innerHTML='_<style media="'+a+'"> #mq-test-1 { width: 9px; }</style>';if(h){c.insertBefore(d,g)}b.removeChild(b.firstChild);e=b.offsetWidth==9;if(h){c.removeChild(d)}else{d.removeChild(b)}return e})(this));
|
@@ -0,0 +1,57 @@
|
|
1
|
+
rest_in_place = function(element, url, objectName, attributeName){
|
2
|
+
var e = element;
|
3
|
+
|
4
|
+
function clickFunction(){
|
5
|
+
var oldValue = e.innerHTML.replace(/^\s*|\s*$/g,'');
|
6
|
+
function submitFunction(){
|
7
|
+
var value = Form.Element.getValue(e.select('input')[0]);
|
8
|
+
e.innerHTML = "saving...";
|
9
|
+
new Ajax.Request(url,{
|
10
|
+
method: 'put',
|
11
|
+
parameters: objectName+'['+attributeName+']='+encodeURIComponent(value)+(window.rails_authenticity_token ? "&authenticity_token="+encodeURIComponent(window.rails_authenticity_token) : ''),
|
12
|
+
onSuccess: function(transport){
|
13
|
+
new Ajax.Request(url, {
|
14
|
+
method: 'get',
|
15
|
+
requestHeaders: { "Accept" : "application/javascript"},
|
16
|
+
onSuccess : function(xhr){
|
17
|
+
var data = xhr.responseText.evalJSON();
|
18
|
+
e.innerHTML = data[objectName][attributeName];
|
19
|
+
Event.observe(e,'click', clickFunction);
|
20
|
+
}
|
21
|
+
});
|
22
|
+
}
|
23
|
+
});
|
24
|
+
return false;
|
25
|
+
}
|
26
|
+
e.innerHTML = '<form action="javascript:void(0)" style="display:inline;"><input type="text" value="' + oldValue + '"></form>';
|
27
|
+
Form.Element.select(e.select('input')[0]);
|
28
|
+
Event.stopObserving(e, 'click', clickFunction);
|
29
|
+
Event.observe(e.select('input')[0], 'blur', function(){
|
30
|
+
e.innerHTML = oldValue;
|
31
|
+
Event.observe(e, 'click', clickFunction);
|
32
|
+
});
|
33
|
+
Event.observe(e.select('form')[0], 'submit', submitFunction);
|
34
|
+
}
|
35
|
+
|
36
|
+
Event.observe(e,'click', clickFunction);
|
37
|
+
};
|
38
|
+
|
39
|
+
Event.observe(window, 'load',function() {
|
40
|
+
$$(".rest_in_place").each(function(e){
|
41
|
+
var url; var obj; var attrib;
|
42
|
+
Element.ancestors(e).each(function(a){
|
43
|
+
url = url || Element.readAttribute(a, 'url');
|
44
|
+
obj = obj || Element.readAttribute(a, 'object');
|
45
|
+
attrib = attrib || Element.readAttribute(a, 'attribute');
|
46
|
+
});
|
47
|
+
Element.ancestors(e).each(function(a){
|
48
|
+
if (res = a.id.match(/^(\w+)_(\d+)$/i)) {
|
49
|
+
obj = obj || res[1];
|
50
|
+
}
|
51
|
+
});
|
52
|
+
url = Element.readAttribute(e, 'url') || url || document.location.pathname;
|
53
|
+
obj = Element.readAttribute(e, 'object') || obj;
|
54
|
+
attrib = Element.readAttribute(e, 'attribute') || attrib;
|
55
|
+
rest_in_place(e, url, obj, attrib);
|
56
|
+
});
|
57
|
+
});
|
@@ -0,0 +1,45 @@
|
|
1
|
+
jQuery.ajaxSetup({
|
2
|
+
'beforeSend': function (xhr) {xhr.setRequestHeader("Accept", "text/javascript");}
|
3
|
+
});
|
4
|
+
|
5
|
+
jQuery.fn.submitWithAjax = function() {
|
6
|
+
this.submit(function () {
|
7
|
+
$.post($(this).attr('action'), $(this).serialize(), null, "script");
|
8
|
+
return false;
|
9
|
+
});
|
10
|
+
};
|
11
|
+
|
12
|
+
$(document).ready(function() {
|
13
|
+
$("#supplementary_task_party_id").change(function() {
|
14
|
+
$.post($(this).attr('data-path')+'?authenticity_token='+encodeURIComponent(window.rails_authenticity_token), $(this).serialize(), null, "script");
|
15
|
+
});
|
16
|
+
|
17
|
+
toggleIndividualTaskFields();
|
18
|
+
$('#supplementary_task_party_attributes_entity_1').live('click', function() {
|
19
|
+
toggleIndividualTaskFields();
|
20
|
+
});
|
21
|
+
toggleCompanyTaskFields();
|
22
|
+
$('#supplementary_task_party_attributes_entity_2').live('click', function() {
|
23
|
+
toggleCompanyTaskFields();
|
24
|
+
});
|
25
|
+
});
|
26
|
+
|
27
|
+
function toggleIndividualTaskFields() {
|
28
|
+
if ($('#supplementary_task_party_attributes_entity_1').attr('checked') == true) {
|
29
|
+
$('#individual_party').fadeIn('fast');
|
30
|
+
$('#party_name').fadeIn('fast');
|
31
|
+
$("#party_name label").html('Surname');
|
32
|
+
$('#supplementary_task_party_attributes_title').removeAttr("disabled");
|
33
|
+
$('#supplementary_task_party_attributes_forename').removeAttr("disabled");
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
function toggleCompanyTaskFields() {
|
38
|
+
if ($('#supplementary_task_party_attributes_entity_2').attr('checked') == true) {
|
39
|
+
$("#individual_party").hide();
|
40
|
+
$('#party_name').fadeIn('fast');
|
41
|
+
$("#party_name label").html('Company Name');
|
42
|
+
$('#supplementary_task_party_attributes_title').attr("disabled", "disabled");
|
43
|
+
$('#supplementary_task_party_attributes_forename').attr("disabled", "disabled");
|
44
|
+
}
|
45
|
+
}
|
@@ -0,0 +1,52 @@
|
|
1
|
+
$(document).ready(function() {
|
2
|
+
togglePartyTasks();
|
3
|
+
$('#task_party_attributes_party_type').change(function() {
|
4
|
+
togglePartyTasks();
|
5
|
+
});
|
6
|
+
toggleIndividualTaskFields();
|
7
|
+
$('#task_party_attributes_entity_1').click(function() {
|
8
|
+
toggleIndividualTaskFields();
|
9
|
+
});
|
10
|
+
toggleCompanyTaskFields();
|
11
|
+
$('#task_party_attributes_entity_2').click(function() {
|
12
|
+
toggleCompanyTaskFields();
|
13
|
+
});
|
14
|
+
});
|
15
|
+
|
16
|
+
function togglePartyTasks() {
|
17
|
+
if ($('#task_party_attributes_party_type').val() == '(NONE)') {
|
18
|
+
$("#party_status").find(":input").each(function(index, value){
|
19
|
+
$(value).attr("disabled", "disabled");
|
20
|
+
});
|
21
|
+
$("#party_status").hide();
|
22
|
+
} else {
|
23
|
+
$("#party_status").find(":input").each(function(index, value){
|
24
|
+
$(value).removeAttr("disabled");
|
25
|
+
});
|
26
|
+
$("#party_status").show();
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
function toggleIndividualTaskFields() {
|
31
|
+
if ($('#task_party_attributes_entity_1').val() == "1") {
|
32
|
+
$('#individual_party').show().effect('highlight');
|
33
|
+
$('#party_name').show().effect('highlight');
|
34
|
+
$("#party_name").find("label").first().html('Surname');
|
35
|
+
$('#task_party_attributes_title').removeAttr("disabled");
|
36
|
+
$('#task_party_attributes_forename').removeAttr("disabled");
|
37
|
+
$('task_party_attributes_title').val("");
|
38
|
+
$('task_party_attributes_forename').val("");
|
39
|
+
$('task_party_attributes_surname').val("");
|
40
|
+
}
|
41
|
+
}
|
42
|
+
|
43
|
+
function toggleCompanyTaskFields() {
|
44
|
+
if ($('#task_party_attributes_entity_2').val() == "2") {
|
45
|
+
$("#individual_party").hide();
|
46
|
+
$('#party_name').show().effect('highlight');
|
47
|
+
$("#party_name").find("label").first().html('Company Name');
|
48
|
+
$('#task_party_attributes_title').attr("disabled", "disabled");
|
49
|
+
$('#task_party_attributes_forename').attr("disabled", "disabled");
|
50
|
+
$('#task_party_attributes_surname').val("");
|
51
|
+
}
|
52
|
+
}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
startList = function() {
|
2
|
+
if (document.all&&document.getElementById) {
|
3
|
+
navRoot = document.getElementById("navlist");
|
4
|
+
for (i=0; i<navRoot.childNodes.length; i++) {
|
5
|
+
node = navRoot.childNodes[i];
|
6
|
+
if (node.nodeName=="LI") {
|
7
|
+
node.onmouseover=function() {
|
8
|
+
this.className+=" over";
|
9
|
+
}
|
10
|
+
node.onmouseout=function() {
|
11
|
+
this.className=this.className.replace(" over", "");
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
15
|
+
}
|
16
|
+
}
|
17
|
+
window.onload=startList;
|
18
|
+
|
19
|
+
|
20
|
+
var cX = 0; var cY = 0;
|
21
|
+
function UpdateCursorPosition(e){ cX = e.pageX; cY = e.pageY;}
|
22
|
+
function UpdateCursorPositionDocAll(e){ cX = event.clientX; cY = event.clientY;}
|
23
|
+
if(document.all) { document.onmousemove = UpdateCursorPositionDocAll; }
|
24
|
+
else { document.onmousemove = UpdateCursorPosition; }
|
25
|
+
function AssignPosition(d) {
|
26
|
+
d.style.left = (cX+10) + "px";
|
27
|
+
d.style.top = (cY+10) + "px";
|
28
|
+
}
|
29
|
+
function HideContent(d) {
|
30
|
+
if(d.length < 1) { return; }
|
31
|
+
document.getElementById(d).style.display = "none";
|
32
|
+
}
|
33
|
+
function ShowContent(d) {
|
34
|
+
if(d.length < 1) { return; }
|
35
|
+
var dd = document.getElementById(d);
|
36
|
+
AssignPosition(dd);
|
37
|
+
dd.style.display = "block";
|
38
|
+
}
|
39
|
+
function ReverseContentDisplay(d) {
|
40
|
+
if(d.length < 1) { return; }
|
41
|
+
var dd = document.getElementById(d);
|
42
|
+
AssignPosition(dd);
|
43
|
+
if(dd.style.display == "none") { dd.style.display = "block"; }
|
44
|
+
else { dd.style.display = "none"; }
|
45
|
+
}
|