True. Sorry my bad. Accept my apology.

-- Ladislav

On Dec 3, 2010, at 12:31 PM, [email protected] wrote:

> On 03/12/10 13:23, Ladislav Martincik wrote:
>> Sorry Marios, but I think you're still wrong and probably didn't read 
>> properly my email. What you're doing here is XHTML which will of course not 
>> work. Here's what I wrote:
>> 
>>>>> As long as I understand this if you're not using
>>>>> XHTML1.0 or HTML4[1] (which in our case we are not) it's not the case.
>> 
>> The point is for our application it doesn't apply because we're on HTML5.
> 
> I thought you understood that I was referring to HTML 4? Since we have 
> started ad-hominem attacks about not reading properly, in my first email i 
> wrote -
> 
> "
> >>>>>>> support only 'GET' and 'POST' for the method attribute (i think HTML 5
> >>>>>>> will add support for all CRUD methods). So in this case, if this is
> "
> 
> marios
> 
>> 
>> -- Ladislav
>> 
>> On Dec 3, 2010, at 12:01 PM, [email protected] wrote:
>> 
>>> Ok, paste the following into /deltacloud/server/views/api/show.html.haml 
>>> (anywhere, i had mine right at the top, i.e. first line of file)
>>> 
>>> "
>>> %td
>>>  %form{ :action =>  "bla/TEST", :method =>  'put' }
>>>    %input{:type =>  :submit, :value =>  "DoPut"}
>>> %td
>>>  %form{ :action =>  "bla/TEST", :method =>  'post' }
>>>    %input{:type =>  :submit, :value =>  "DoPost"}
>>> %td
>>>  %form{ :action =>  "bla/TEST", :method =>  'get' }
>>>    %input{:type =>  :submit, :value =>  "DoGet"}
>>> "
>>> 
>>> And now paste the following into /deltacloud/server/server.rb (anywhere 
>>> should do it)
>>> 
>>> "
>>> put '/bla/TEST' do
>>>  return "JUST FIRED PUT"
>>> end
>>> 
>>> post '/bla/TEST' do
>>>  return "JUST FIRED POST"
>>> end
>>> 
>>> get '/bla/TEST' do
>>>  return "JUST FIRED GET"
>>> end
>>> "
>>> 
>>> Good luck firing that PUT action. I am using Fox v.3.6. One interesting 
>>> thing I noticed is that actually its the 'GET' that's triggered when you 
>>> try to do PUT, (I previously said it was POST).
>>> 
>>> marios
>>> 
>>> 
>>> On 03/12/10 12:16, [email protected] wrote:
>>>> On 03/12/10 12:04, Ladislav Martincik wrote:
>>>>> 
>>>>> On Dec 2, 2010, at 6:16 PM, [email protected]<mailto:[email protected]>
>>>>> wrote:
>>>>> 
>>>>>> On 02/12/10 18:15, Ladislav Martincik wrote:
>>>>>>> 
>>>>>>> On Dec 2, 2010, at 3:56 PM, [email protected]
>>>>>>> <mailto:[email protected]>   wrote:
>>>>>>> 
>>>>>>>> On 02/12/10 16:31, Ladislav Martincik wrote:
>>>>>>>>> 
>>>>>>>>> On Dec 2, 2010, at 3:10 PM, Michal Fojtik wrote:
>>>>>>>>> 
>>>>>>>>>> On 02/12/10 14:27 +0100, [email protected]
>>>>>>>>>> <mailto:[email protected]>   wrote:
>>>>>>>>>>> From: Jozef Zigmund<[email protected]<mailto:[email protected]>>
>>>>>>>>>>> 
>>>>>>>>>>> ---
>>>>>>>>>>> src/app/views/providers/_providers.haml | 16 ++++++++++++++++
>>>>>>>>>>> src/app/views/providers/edit.haml | 2 +-
>>>>>>>>>>> src/app/views/providers/show.haml | 2 +-
>>>>>>>>>>> 3 files changed, 18 insertions(+), 2 deletions(-)
>>>>>>>>>>> 
>>>>>>>>>>> diff --git a/src/app/views/providers/_providers.haml
>>>>>>>>>>> b/src/app/views/providers/_providers.haml
>>>>>>>>>>> index 5587a34..07b5e40 100644
>>>>>>>>>>> --- a/src/app/views/providers/_providers.haml
>>>>>>>>>>> +++ b/src/app/views/providers/_providers.haml
>>>>>>>>>>> @@ -12,3 +12,19 @@
>>>>>>>>>>> %input{ :type =>   'submit', :value =>   t(:add), :disabled =>
>>>>>>>>>>> ('disabled' unless controller.action_name == 'index') }
>>>>>>>>>>> - form_tag({:controller =>   'providers', :action =>   'destroy', 
>>>>>>>>>>> :id
>>>>>>>>>>> =>   @provider}, {:method =>   :delete , :class =>   'buttononly'}) 
>>>>>>>>>>> do
>>>>>>>>>>> = submit_tag 'delete', :disabled =>   ('disabled' unless @provider
>>>>>>>>>>> and controller.action_name == 'show')
>>>>>>>>>>> +
>>>>>>>>>>> +:javascript
>>>>>>>>>>> + jQuery.ajaxSetup({ 'beforeSend': function(xhr)
>>>>>>>>>>> {xhr.setRequestHeader("Accept", "text/javascript")}
>>>>>>>>>>> + })
>>>>>>>>>>> + $(document).ready( function () {
>>>>>>>>>>> + $("a.button").click(function (event) {
>>>>>>>>>>> + event.preventDefault()
>>>>>>>>>>> + if (!$(this).attr("disabled")) {
>>>>>>>>>>> + $.get(($(this).attr("href")), function (response) {
>>>>>>>>>>> + form = $(response).find('#edit_dcloud_form')
>>>>>>>>>>> + $("#show_dcloud").replaceWith(form)
>>>>>>>>>>> + $('a.button').attr('disabled', true)
>>>>>>>>>>> + });
>>>>>>>>>>> + }
>>>>>>>>>>> + })
>>>>>>>>>>> + })
>>>>>>>>>>> diff --git a/src/app/views/providers/edit.haml
>>>>>>>>>>> b/src/app/views/providers/edit.haml
>>>>>>>>>>> index 199a73a..2691bfa 100644
>>>>>>>>>>> --- a/src/app/views/providers/edit.haml
>>>>>>>>>>> +++ b/src/app/views/providers/edit.haml
>>>>>>>>>>> @@ -2,6 +2,6 @@
>>>>>>>>>>> #details.grid_13
>>>>>>>>>>> %nav.subsubnav
>>>>>>>>>>> = render_navigation(:level =>   4)
>>>>>>>>>>> - - form_for :provider, @provider, :url =>
>>>>>>>>>>> provider_path(@provider), :html =>   { :method =>   'put', :class =>
>>>>>>>>>>> "dcloud_form" } do |f|
>>>>>>>>>>> + - form_for :provider, @provider, :url =>
>>>>>>>>>>> provider_path(@provider), :html =>   { :id =>   'edit_dcloud_form',
>>>>>>>>>>> :method =>   'put', :class =>   "dcloud_form" } do |f|
>>>>>>>>>> 
>>>>>>>>>> I'm not sure if 'PUT' method is actually supported by browsers.
>>>>>>>>>> For this
>>>>>>>>>> case I recommending to use 'method overide' in Rails.
>>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> I believe it should be fine. All new browsers (even IE6) supports
>>>>>>>>> HTTP/1.1.
>>>>>>>> 
>>>>>>>> not sure if i misunderstood - Michal is referring to HTML forms - they
>>>>>>>> support only 'GET' and 'POST' for the method attribute (i think HTML 5
>>>>>>>> will add support for all CRUD methods). So in this case, if this is
>>>>>>>> really a html form and you want to do a put using the form then you 
>>>>>>>> need
>>>>>>>> to use method_override... if it is working its because it defaults to
>>>>>>>> 'post' and so you might not notice it,
>>>>>>>> 
>>>>>>>> marios
>>>>>>> 
>>>>>>> HTML forms are mapped to HTTP protocol so still there's no need to 
>>>>>>> worry.
>>>>>> 
>>>>>> Well, in this case, it is mapped to POST
>>>>> 
>>>>> I don't think so. As long as I understand this if you're not using
>>>>> XHTML1.0 or HTML4[1] (which in our case we are not) it's not the case.
>>>> 
>>>> Ok, now I'm confused. I thought you said  ">>>   The questions maybe
>>>> should be what is the software we have to support
>>>>  >>   (I mean browsers mainly) in order to determine if this is the case."
>>>> I thought we are talking about a HTML form here, for a browser?
>>>> 
>>>> 
>>>>> In those 2 cases DTD specifies only "GET" and "POST" and would make
>>>>> sense to worry about "PUT" support. If we want to support different
>>>>> tools like curl, wget than it's different story[2].
>>>>> 
>>>> 
>>>> same as above, are you guys talking about a web browser?
>>>> 
>>>>>> 
>>>>>>> so still there's no need to worry. At least I would be very surprised
>>>>>> that something like this simple doesn't work. ;)
>>>>>> 
>>>>>> It *will* work, because its doing a *POST* so in all likelyhood the
>>>>>> intended outcome is the same.
>>>>> 
>>>>> It really isn't doing just "POST". You can use "PUT" and it will map
>>>>> correctly to HTTP/1.1 PUT method[3].
>>>>> 
>>>>>> 
>>>>>>> The questions maybe should be what is the software we have to support
>>>>>> (I mean browsers mainly) in order to determine if this is the case.
>>>>>> 
>>>>>> I would argue that the question should be, do you need to do a PUT? If
>>>>>> yes, use method_override. If you are fine with doing a POST, then leave
>>>>>> it as it is,
>>>>> 
>>>>> Of course we don't have to use PUT if we don't require app to be RESTful
>>>>> styled. But I would prefer to use RESTful style because Rails just very
>>>>> good at it. And IMHO it's very clean style of programming.
>>>> 
>>>> Ok, I didn't say anything different and have not mentioned REST at all.
>>>> My intent here is not to cause an argument. I do not know the context of
>>>> this patch and have not tried to apply or use it. I am merely asserting
>>>> that IF you are using a HTML form and you want to do a PUT, then
>>>> 'standard' HTML 4 does not support this.
>>>> 
>>>> marios
>>>> 
>>>> 
>>>>>> 
>>>>>> marios
>>>>>> 
>>>>> 
>>>>> -- Ladislav
>>>>> 
>>>>> [1] http://rest.blueoxen.net/cgi-bin/wiki.pl?HttpMethodsSupport
>>>>> [2] http://curl.haxx.se/docs/comparison-table.html
>>>>> [3] http://annevankesteren.nl/2007/10/http-method-support
>>>> 
>>>> _______________________________________________
>>>> deltacloud-devel mailing list
>>>> [email protected]
>>>> https://fedorahosted.org/mailman/listinfo/deltacloud-devel
>>> 
>> 
> 

_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to