Cardo - Won't run on IE11

96 views
Skip to first unread message

A M Alfaro

unread,
May 16, 2017, 7:31:40 PM5/16/17
to TiddlyWiki-GTD
and I think I finally figured out why: window.crypto.getRandomeValues in the cardo-guid section. A little research turned up this: http://caniuse.com/#feat=getrandomvalues

This is where it breaks:

var keys = Object.keys(object);

 

 
for (f=0, length=keys.length; f<length; f++) {

 
var key = keys[f];

 
next = callback(object[key],key,object); 'this line specifically

 if(next === false) {

 break;


I wish I had an actual solution, but here's the pieces. I don't really know if this is something to actually fix. Plain TW5 works just fine. I'm not sure what's so different about Cardo that this breaks it. Still, the RSoD said getRandomValues was the culprit and this is where that led. Microsoft being special again it seems.

Just bringing it to your attention.
ama

David Szego (Cardo)

unread,
May 18, 2017, 9:40:09 PM5/18/17
to TiddlyWiki-GTD
Thanks, A.M.

There's already an "if this works, else..." in there - we can just add a check for MSIE:

In shadow Tiddler $:/plugins/Cardo/macros/guid.js change the first line after function generate() as shown:

  function generate() {
    if ( (window.crypto.getRandomValues && typeof window.crypto.getRandomValues === "function") && (navigator.userAgent.indexOf('MSIE') == -1) ) {

I don't even have a Windows box around, so please let me know if it works for you!

Thanks for reporting this! I'll include it with the next batch of (sadly neglected) fixes!

Cheers,
David.

A M Alfaro

unread,
May 26, 2017, 7:28:09 PM5/26/17
to TiddlyWiki-GTD

Hi David,

Work actually had work for me so I just saw this.

The change worked sort of. RSoD now has a much longer error message[1]. Also, more of the app loaded whereas before, almost nothing loaded and none of the buttons worked. Now the buttons do things, but I'm still getting weirdness [2].

thanks,
ama

[1]


[2]


A M Alfaro

unread,
Feb 1, 2018, 1:31:43 PM2/1/18
to tiddlyw...@googlegroups.com
Hi David,

It kept bugging me that I couldn't use Cardo at work so I've kept on researching. Here's what I found:

The getRandomValues error was because IE11 is supposed to support window.crypto but it is considered experimental. One has to use window.msCrypto instead.

Once that error was resolved, a new one popped up: Object doesn't support property or method 'includes'. In $:/plugins/Cardo/filters/fieldContains.js, there is "text.includes(operator.operand)". Internet Explorer doesn't support INCLUDES, so I changed it to "text.indexOf(operator.operand)" and the error cleared up.

I now have a functioning version of Cardo on IE11. - I spoke too soon. As I started adding different types of tiddlers and trying to delete some of your examples, I noticed that while I could add, I couldn't delete. Also, the system didn't necessarily recognize what I was adding. For example, it recognized the first meeting I added and handled it correctly. Then I tried adding a new Area, and that, while saved, was not added to the drop down lists. I added a contact and they were assigned the same tiddlers as Sam Tasker, so I'm thinking that the guids aren't generating correctly for the new items, which I think goes back to getRandomValues.

I now have a loadable version of Cardo on IE11 and can continue troubleshooting it. :/

Take care,
ama

dominik...@gmail.com

unread,
Oct 22, 2018, 3:51:38 AM10/22/18
to TiddlyWiki-GTD
Hello everybody,

It would be cool if there was any progress on this bug! Anybody found a solution yet?

I would like to use Cardo at work. However, I am very limited to configure my work environment. The only practicable option for me is using it with the .hta-hack, i.e., using the Microsoft HTML Application Host, which seems to be running an IE11 engine. As for the original poster, this gives me an error regarding getRandomValues: (translated from German) The property "getRandomValues" of an undefined or null pointer cannot be accessed.

Thanks for your work!
Dominik

David Szego (Cardo)

unread,
Jan 7, 2019, 9:56:23 PM1/7/19
to TiddlyWiki-GTD

Very late reply... my apologies.

The problem is in my macro:
$:/plugins/Cardo/macros/guid.js
which uses the getRandomValues call.

I've fixed this in 1.0.4 - which is now live.

dominik...@gmail.com

unread,
Feb 15, 2019, 9:30:43 AM2/15/19
to TiddlyWiki-GTD
Hi David,

No need to apologize! I'm happy that you are still active and doing this voluntary, valuable work!

I can confirm that Cardo 1.0.4*) works with the .hta-hack: Renaming it to cardo.hta opens it with the Microsoft HTML Application Host, which seems to be running an IE11 engine in my case.
*) downloaded 2019-02-15 from cardo.wiki, Cardo 1.0.4 according to Tiddlers -> Plugins -> Cardo. TiddlyWiki version: 5.1.19 according to "Tools" tab.

Thanks for fixing the bug! I will definitively give it a try now!

Some minor (cosmetic) issues I noticed:
  • There is a "Click to get Cardo" button in the upper right corner, as on the cardo.wiki-page. This leads to a "Get cardo" tiddler. This is probably a left-over from the version on the webpage.
  • The Save changes Button was not shown in the sidebar, and Autosave was turned off --> possibly also left-over from website version.
  • I see white filled boxes around unticket checkboxes and unmarked stars. This might have to do with the engine. It seems not to have an impact onto the functionality, though.
Greetings,
Dominik
Reply all
Reply to author
Forward
0 new messages