| 96 | | (function(){ |
|---|
| 97 | | var setOptionsForRailsProtection = function(options) { |
|---|
| 98 | | this.options = { |
|---|
| 99 | | method: 'post', |
|---|
| 100 | | asynchronous: true, |
|---|
| 101 | | contentType: 'application/x-www-form-urlencoded', |
|---|
| 102 | | encoding: 'UTF-8', |
|---|
| 103 | | parameters: '' |
|---|
| 104 | | }; |
|---|
| 105 | | Object.extend(this.options, options || {}); |
|---|
| 106 | | this.options.method = this.options.method.toLowerCase(); |
|---|
| 107 | | if(typeof this.options.parameters == 'string') { |
|---|
| 108 | | this.options.parameters = this.options.parameters.toQueryParams(); |
|---|
| 109 | | } |
|---|
| 110 | | Object.extend(this.options.parameters, {rails_protection_session_id: '<%= RailsProtection::Csrf::Util.token(session) %>'}); |
|---|
| 111 | | }; |
|---|
| 112 | | Ajax.Request.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| 113 | | Ajax.Updater.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| 114 | | Ajax.Base.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| 115 | | })(); |
|---|
| | 89 | switch(parseFloat(Prototype.Version, 10)) { |
|---|
| | 90 | case 1.5: |
|---|
| | 91 | (function(){ |
|---|
| | 92 | var setOptionsForRailsProtection = function(options) { |
|---|
| | 93 | this.options = { |
|---|
| | 94 | method: 'post', |
|---|
| | 95 | asynchronous: true, |
|---|
| | 96 | contentType: 'application/x-www-form-urlencoded', |
|---|
| | 97 | encoding: 'UTF-8', |
|---|
| | 98 | parameters: '' |
|---|
| | 99 | }; |
|---|
| | 100 | Object.extend(this.options, options || {}); |
|---|
| | 101 | this.options.method = this.options.method.toLowerCase(); |
|---|
| | 102 | if(typeof this.options.parameters == 'string') { |
|---|
| | 103 | this.options.parameters = this.options.parameters.toQueryParams(); |
|---|
| | 104 | } |
|---|
| | 105 | Object.extend(this.options.parameters, {rails_protection_session_id: '#{RailsProtection::Csrf::Util.token(session)}'}); |
|---|
| | 106 | }; |
|---|
| | 107 | Ajax.Request.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| | 108 | Ajax.Updater.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| | 109 | Ajax.Base.prototype.setOptions = setOptionsForRailsProtection; |
|---|
| | 110 | })(); |
|---|
| | 111 | break; |
|---|
| | 112 | case 1.6: |
|---|
| | 113 | Object.extend(Ajax.Base.prototype, { |
|---|
| | 114 | initialize_original: Ajax.Base.prototype.initialize, |
|---|
| | 115 | initialize: function(options) { |
|---|
| | 116 | this.initialize_original(options); |
|---|
| | 117 | Object.extend(this.options.parameters, {rails_protection_session_id:'#{RailsProtection::Csrf::Util.token(session)}'}); |
|---|
| | 118 | } |
|---|
| | 119 | }); |
|---|
| | 120 | break; |
|---|
| | 121 | default: |
|---|
| | 122 | break; |
|---|
| | 123 | } |
|---|