Easyling Release Notes - 2015 September

Oct 12, 2015 - Easyling.com

Another month has passed and by now, you might know what this means: Easyling has been given new features and abilities to keep up with website technology and the latest design trends. In particular, this means the ability to meaningfully extract content from HTML embedded inside JavaScript in HTML (yes, it was as confusing as it sounds). On another note, we’re preparing the rollout of a feature to utilize ETag headers to detect changes better during a crawl, and we’ve added the ability to choose right or left alignment of the source text on the Workbench. Also, wallet owners can easily download their usage statistics. See the point-by-point explanations after the jump!

HTML inside JavaScript in HTML

Although we’ve long had the ability to extract parsed HTML from JavaScript contexts, we’ve been seeing more and more sites that take this a step further, and embed meaningful content inside JavaScript, that is itself inside HTML. Consider the following JavaScript snippet, found on all pages of an imaginary website:

$(window).load(function()
 {
 var snippet = '<a href="/"><b>Top</b> page</a>'; //JS Path: "%".0."%"."snippet"
 elem = document.createElement("div");
 elem.id = 'myID';
 elem.innerHTML = snippet;
 document.body.insertBefore(elem,document.body.childNodes[0]);
 });

Let’s say you’re looking to extract the variable “snippet” for translation - this was possible before, but only as plaintext (essentially, the entire string was extracted, and translators had to tiptoe around the tags), and adding the previously discussed " html" switch to it did nothing to help, as the old parser could not interpret the resulting path.

The improved parser, however, is capable of passing the above path  and extracting “snippet” as parsed HTML, that is, the exported content will only read “Top page” (XLIFF tags omitted), and the translators will no longer have to be careful about keeping the markup intact. No separate activation is needed for this feature to function, simply locate the content with the JSON Path Tester tool (on the Advanced Options page) and append the html switch as needed.

Preparation for ETags

Most webservers today incorporate Entity Tags on pages they serve - short hashes or identifiers computed from the page content that identifies that given version, and changes as changes are made to the page. This allowed us to lay the groundwork of a new crawler enhancement: ETag-awareness. In a nutshell, we store the last ETags encountered during a crawl and the last time that page was crawled, and send this information to the server to make a decision upon. If the server has no newer content, it should/will return an appropriate response (HTTP304 NOT MODIFIED), and we can move on to the next page without processing the response further. This can speed up a large crawl significantly by cutting down on the time spent processing the pages.

Workbench Alignment

In a small, but perhaps significant feature, we’ve added to the Workbench the ability to choose the alignment of source segments: when translating from RTL languages (such as Arabic), it may be easier on the eyes to have the source content aligned right instead of left. It may not be much, but we’re sure it will make some people’s daily work a bit easier.

[caption id=“attachment_2533” align=“aligncenter” width=“1920”]Alingments The Workbench can now be set to align source content left or right, depending on the user’s needs[/caption]

 Usage Statistics

Although we’ve had the ability to generate project-level statistics, as well as wallet-level ones, they’ve been a bit … hidden before. Now, we’ve rolled this out to the Balance Information box in the sidebar. Simply by clicking the link there, the wallet owner will immediately be taken to the statistics download page, where they can generate an Excel report for any time period.

[caption id=“attachment_2534” align=“aligncenter” width=“957”]Balance Bocks The Balance info box now has a link (visible only to wallet owners) to generate usage reports quickly[/caption]

And with this, September has drawn to a close. Stay tuned for future upgrades and rollouts of features whose groundwork was laid now - keep an eye on our Release Notes, as well as the changelogs generated by Aura!