Sorry for not being clear. In the whimsy/lib there is a helper file svn.rb that 
has a number of functions including update(path, msg, env, _, options={}) that 
is used by roster memstat.json.rb and it contains the commit in the function.

I did not see a move or remove function in svn.rb. Should I be looking 
somewhere else for examples of svn commands? Should I look at adding move and 
remove functions to svn.rb? 

Thanks,
Craig

> On May 26, 2020, at 5:23 PM, Sam Ruby <ru...@intertwingly.net> wrote:
> 
> On Tue, May 26, 2020 at 8:15 PM Craig Russell <apache....@gmail.com> wrote:
>> 
>> The cancel button now works (thanks, Sam). On to the server side.
>> 
>> To implement active->emeritus we need to update members.txt and move the 
>> request file from emeritus-requests-received to emeritus.
>> 
>> - Is there an svn function to move a file from one directory to another?
> 
> http://svnbook.red-bean.com/en/1.6/svn.ref.svn.c.move.html
> 
>> - Is there a way to have both things done in the same svn commit?
> 
> If both the source and target have a common parent, do the svn commit
> from that parent.
> 
> When the secretary files board minutes,
> 1) the minutes are moved to the website.  Those source and target
> don't share a common parent, so two commits are required.
> 2) the agenda is moved to a subdirectory.  The source and target share
> a common parent, so one commit suffices.
> 
>> To implement request_emeritus_status we need to create an email. Easy..
>> 
>> To implement rescind_emeritus_request we need to svn rm the file from 
>> emeritus-requests-received.
>> 
>> - Is there an svn function to delete a file?
> 
> http://svnbook.red-bean.com/en/1.6/svn.ref.svn.c.delete.html
> 
>> Thanks,
>> Craig
> 
> - Sam Ruby
> 
>>> On May 26, 2020, at 3:20 PM, Craig Russell <apache....@gmail.com> wrote:
>>> 
>>> Here are the files.
>>> <main.js.rb><memstat.js.rb>
>>> And the console logs:
>>> [Log]  dblclick event.currentTarget: [object HTMLDivElement] (app.js, line 
>>> 3268)
>>> [Log]  dblclick event.currentTarget.dataset: [object DOMStringMap] (app.js, 
>>> line 3269)
>>> [Log]  dblclick event.currentTarget.dataset.edit: memstat (app.js, line 
>>> 3270)
>>> [Log] canx called from Cancel button (app.js, line 4021)
>>> [Log] event: [object MouseEvent] parent: [object HTMLButtonElement] 
>>> (app.js, line 4024)
>>> [Log] parent: [object HTMLButtonElement] memstatElement: [object 
>>> HTMLDivElement] (app.js, line 4025)
>>> [Log] preventing default (app.js, line 4026)
>>> [Log] memstatElement.dataset: [object DOMStringMap] (app.js, line 4027)
>>> [Log] memstatElement.dataset.edit: memstat (app.js, line 4028)
>>> [Log]  submit event: [object Object] (app.js, line 3291)
>>> [Log]  submit target: [object HTMLButtonElement] (app.js, line 3292)
>>> [Log]  submit parent: [object HTMLButtonElement] (app.js, line 3293)
>>> [Log]  submit parent.getAttribute(data_cancel): null (app.js, line 3294)
>>> [Log]  submit target.dataset_edit: undefined (app.js, line 3295)
>>> [Log]  submit target.dataset: [object DOMStringMap] (app.js, line 3296)
>>> [Log]  submit target.dataset.edit: undefined (app.js, line 3297)
>>> [Log]  submit memstatElement.dataset.edit: memstat (app.js, line 3298)
>>> [Log]  submit cancel_submit: null (app.js, line 3300)
>>> 
>>>> On May 26, 2020, at 2:19 PM, Sam Ruby <ru...@intertwingly.net> wrote:
>>>> 
>>>> On Tue, May 26, 2020 at 1:32 AM Craig Russell <apache....@gmail.com> wrote:
>>>>> 
>>>>> But calling preventDefault on the event doesn't appear to do anything. It 
>>>>> still calls the POST behavior, and does not cause the inline edit menu to 
>>>>> disappear. And setting the edit function to nil doesn't do anything 
>>>>> either.
>>>>> 
>>>>> Maybe there is something else that I need to do?
>>>> 
>>>> I'll admit that I'm not clear on what you are trying to accomplish,
>>>> but apparently the problem here is that there is another piece of code
>>>> that attaches an event handler (and calls preventDefault):
>>>> 
>>>> https://github.com/apache/whimsy/blob/d3246f107a35f4d989350f4c1ca64366c98ef423/www/roster/views/person/main.js.rb#L341
>>>> 
>>>> Perhaps it would be best to add an attribute to the button, and have
>>>> the submit method remove the buttons and exit early:
>>>> 
>>>> diff --git a/www/roster/views/person/main.js.rb
>>>> b/www/roster/views/person/main.js.rb
>>>> index 1b5ffdb8..f498489f 100644
>>>> --- a/www/roster/views/person/main.js.rb
>>>> +++ b/www/roster/views/person/main.js.rb
>>>> @@ -355,6 +355,12 @@ class Person < Vue
>>>>   form = jQuery(event.currentTarget).closest('form')
>>>>   target = event.target
>>>> 
>>>> +    # if button is a cancel button, don't submit and remove buttons
>>>> +    if target.getAttribute('data-cancel')
>>>> +      @edit = null
>>>> +      return
>>>> +    end
>>>> +
>>>>   # serialize form
>>>>   formData = form.serializeArray();
>>>> 
>>>> diff --git a/www/roster/views/person/memstat.js.rb
>>>> b/www/roster/views/person/memstat.js.rb
>>>> index 39367c40..e8d3d318 100644
>>>> --- a/www/roster/views/person/memstat.js.rb
>>>> +++ b/www/roster/views/person/memstat.js.rb
>>>> @@ -35,6 +35,8 @@ class PersonMemberStatus < Vue
>>>>              _button.btn.btn_primary 'move to emeritus',
>>>>                name: 'action', value: 'emeritus'
>>>>            end
>>>> +
>>>> +              _button.btn.btn_secondary 'cancel', data_cancel: true
>>>>          end
>>>>        end
>>>>       end
>>>> 
>>>> - Sam Ruby
>>> 
>>> Craig L Russell
>>> c...@apache.org
>>> 
>> 
>> Craig L Russell
>> c...@apache.org
>> 

Craig L Russell
c...@apache.org

Reply via email to