Just to clarify: 

the following works perfect  for one field by ID (decrypts it back):
var encodedDescription = $("#CurrentCartDescription").text()
$("#CurrentCartDescription").html(atob(encodedDescription));

However, when I try to do it for a bunch of fields at once using class 
(instead of id), it doesn't work - doesn't touch the values: 
$(".EncodedDescriptionField").html(atob($(".EncodedDescriptionField").text()));

I am sure I am missing something basic... Greatly appreciate suggestions - 

On Thursday, May 16, 2019 at 6:54:14 PM UTC-4, Vlad wrote:
>
> I had no clue about it - I mean never heard the terms :)
>
> Thank you very much for point to the direction. After some googling, it is 
> almost working. 
>
> Encoding is just fine (using btoa). 
>
> When I read it back and want to decode - it's not yet behaving right. I'm 
> suspecting my javascript is a problem. 
>
> There is a bunch of fields which now have encrypted values (class 
> 'EncodedDescriptionField'), and I am trying to use the following to reclaim 
> the original values: 
>
>
> $(".EncodedDescriptionField").html(atob($(".EncodedDescriptionField").text()));
>
> What am I doing wrong? (It doesn't change the values - they remain as they 
> are, encrypted)
>
> On Thursday, May 16, 2019 at 5:35:39 PM UTC-4, João Matos wrote:
>>
>> Have you considered base64 encoding/decoding?
>>
>> quinta-feira, 16 de Maio de 2019 às 20:43:58 UTC+1, Vlad escreveu:
>>>
>>> I have the following javascript in the view: 
>>>
>>>             var id = $('#CurrentCartId').text();
>>>             var description = $(this).text();
>>>             var url='{{=URL('cart','description')}}';
>>>             url += '/' + id + '/';
>>>             url += description;
>>>             ajax(url,[],':eval');
>>>
>>> the reason I use url+= to pass parameters instead of using args in the 
>>> URL helper is because the parameters are coming from the html itself - they 
>>> are not known in the controller py. 
>>>
>>> now the problem is that it changes the description and I have no way to 
>>> recover its original value. for example, when description is "askjdf d  
>>>  dka;lskdj  3838&^&%$#@ ((alksjdf__ - ))" (just a randomly typed string in 
>>> this case), it comes out as "askjdf_d___dka_lskdj__3838_____". Obviously, 
>>> it needs to do this conversion in order to pass  the parameter, but I need 
>>> to be able to recreate the original string, entered by the user. 
>>>
>>> Is there a better way of doing this? I.e. a better way of passing a 
>>> parameter in  a way that it could be "recreated" and stored in the database 
>>> exactly as typed by the user? 
>>>
>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/web2py/e0c0e6cd-a2cd-498a-9e42-89e6de9a3a4c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to