Phones dialing wrong number from tel-hyperlink - mobile

We received a complaint that some visitors to our website are dialing the wrong number to get in contact with us.
Our website has a hyperlink in the following form in the footer:
Call us at 12345678
Note that the "+47" (international code) is NOT displayed visually, it is only included in the hyperlink. But now it turns out a limited number of people (circa one a day) is actually calling a private local number at 47123456. Not many considering the size of our business, but still a major nuisance for the family receiving these calls.
The people calling say they just pressed the link to dial.
Has anybody else had these problems? Is anybody aware of mobile phones that do not properly support the tel hyperlink? Any suggestions for a solution? (Apart from changing our or their phone number, of course.)

There are different ways smart phones pick a telephone number.
some are reading the text of your website - some use the tag
on my first try: I would add the +47 to the displayed telephone number
on my second try (or both together): I would replace +47 with 0047 (its norway - or?)
and before posting i got a third idea: which encoding has the webserver and which encoding has the html / PHP page in sourcecode? Both UTF-8 or something else?
Maybe your server is sending it in a different way than the website is created and somehow some smartphones can't handle it correctly.

The problem here is pretty simple: this is the URL-Encoding.
The + char is an reserved character within the URL and represents an space.
To get an actual + sign replace it with the URL encoded version: %2B
See Links for details:
Wikipedia
W3Scools

Related

Calculation errors with different languages in vb.net

I have a problem with calculations. I have a site in vb.net, which connects to a 2002-2003 access database, where there is data with comma as decimal separator, and then creates a dataset. The site is in Italian and is hosted on a server in Italy, and it works fine.
On the output page there are some calculations made in the codebehind page like this (AverageJan is a decimal, dRow is a dataRow, a cell in the the Access database):
AverageJan = (dRow("JanMin")+dRow("JanMax"))/2
In the web.config page, the culture is:
globalization culture="it-IT" uiCulture="it-IT" requestEncoding="utf-8" responseEncoding="utf-8"
I translated the site into French, it is another website but the code is the same. Here, in the web.config, I put the following culture:
globalization culture="auto:fr-FR" uiCulture="auto:fr-FR" requestEncoding="utf-8" responseEncoding="utf-8"
If I open the site from my home (in Italy) it works fine too, but a person from France wrote me: she opened the site with a mobile phone that had the settings in English, and indeed there were some miscalculations. I think the problem lies with the culture, but I don't really understand what happens.
I tried to put the culture in the web.config like this:
globalization culture="fr-FR" uiCulture="fr-FR" requestEncoding="utf-8" responseEncoding="utf-8"
but this is even worse: even from my home, the system cannot calculate the average between two numbers (the result is always 0).
Does someone have any idea on what is going on? Thank you in advance.

Total head scratcher: same page in different language scores differently. Is it me? Is it a bug?

Our website uses an optional language parameter for displaying pages in either English or Spanish, for instance:
https://www.spotmodel.com/product_info.php?products_id=17442&language=en
https://www.spotmodel.com/product_info.php?products_id=17442&language=es
Of course, code is exactly the same, performance is exactly the same, and page generation speed is exactly the same (just selecting different rows for page text locales)
BUT
In PageSpeed, mobile tab, pages with "language=en" consistently score about 10 points LESS than pages with "language=es" (about ninetysomething in "es", about eightysomething in "en").
According to my tests, it happens on every single page (within the bounds of the small score variations). The generated code is exactly the same (except the small text changes), html sizes are also similar or even bigger in the ES version (370k EN vs 377k ES), functions do NOT perform anything differently.
Problem is that, by default, if the parameter is not found, the page served is the English version, hence i'm getting an "orange" score most of the times, instead of the nice "green" on the Spanish pages.
Any clues on what I'm missing? Is it a bug in lighthouse parsing pages with <html lang=es>

Interpolating custom data onto a PDF

I am building an Angular test preparation app (with Laravel 5.1 API). One of the requirements is to allow the user to print a certificate of achievement.
The client wants the person's name and credentials interpolated into the document (e.g., highlighted below). Here is a snapshot of the PDF template they sent:
The way I'm handling PDF viewing is simply by storing the file on S3 and giving them a link to that file.
Interpolating information into a PDF doc doesn't seem trivial and I haven't found much information on programmatically allowing this, but there are tools like DocHub, that allow you do edit while viewing the PDF.
I'm interested in learning:
is doing this programmatically trivial?
are there 3rd party tools I'm unaware of?
would I even be able to send this information along to the S3 link to interpolate in the first place?
Using PDF as a format for editing is usually a bad choice. If you have a form with fixed fields, then it's easy. Create a PDF template with an interactive form. In this form, based on AcroForm technology, you'll define fields with fixed coordinates, and a fixed size. You can then add content to these fields.
One major disadvantage with this approach is the lack of flexibility. Did you notice that I used the word "fixed" three times in the previous paragraph? If text doesn't fit the predefined field, you're out of luck. If the field is overdimensioned, you'll end up with plenty of white space. This approach is great if you can predict what the data will be like. A typical use case is a ticket or a voucher. For instance: the empty form is a really nice page, with only a couple of fields where an automated system can put a name, a date, a time, and a seat number.
This isn't the best approach for the example you show in your screen shot. The position of every line of text, every word, every character is known in advance. If you want to replace a short word with a long word (or vice-versa), then all those positions (of each line, of the complete page, possibly of the complete document) need to be recalculated. That's madness. Only people with very poor design skills come up with such an idea.
A better idea, is to store the template as HTML. See for instance chapter 5 of iText's pdfHTML tutorial, where we have this snippet of HTML:
<html>
<head>
<title>Invitation to SXSW 2018</title>
</head>
<body>
<u><b>Re: Invitation</b></u>
<br>
<p>Dear <name>SXSW visitor</name>,
we hope you had a great SXSW film festival experience last year.
And we would like to invite you to the next edition of SXSW Film
that takes place from March 9 until March 17, 2018.</p>
<p>Sincerely,<br>
The SXSW crew<br>
<date>August 4, 2017</date></p>
</body>
</html>
Actually, it's not really HTML, because the <name> tag and the <date> tag don't exist in HTML. All HTML processors (browsers as well as pdfHTML) ignore those tags and treat their content as if the tag was a <span>:
It doesn't make much sense to have such tags in the context of pure HTML, but it does make a lot of sense in the case of pdfHTML. With pdfHTMLL, you can configure custom tags, and have a result that looks like the PDFs shown below:
Look at the document for "John Doe" and compare it with the document for "Bruno Lowagie". The name "John Doe" is much shorter than my name, hence more words fit on that first line. The text flows nicely (we could also have chosen to justify the text on both sides). This "flow" is impossible to achieve with your approach, because you will never get a PDF template to reflow nicely.
OK, I get it, you probably say, but what about the practical aspects? You talk about a Java / .Net library, but I am working with Laravel and Angular.js. First, let me tell you that I don't think you'll find any good PDF tools for Laravel or Angular.js, because of the nature of PDF and those development environments (in my opinion, those technologies don't play well together). Regardless of my opinion, this shouldn't be much of a problem for you because you work in an Amazon environment. AWS supports Java, and the Java code needed to get pdfHTML working is minimal. Most of the code samples I wrote for the pdfHTML tutorial are shorter than 15 lines. So why not try Java and pdfHTML?
If you're already using Amazon services, why not use an amazon lambda function, in combination with iText7 (java), to generate the pdf on demand?
That way, you are guaranteed that the pdf is correct, and has nice layout every time.
Generating the pdf can either be done by:
converting HTML,
programmatically creating your entire document,
filling and flattening an XFA form.
I think for your use-case, either option 1 or 2 are the most sustainable.

Firefox returns blank $viewValue when type="number" with space in field

I'm trying to setup a credit card entry field, and I need to be able to separate the digit-groups with a space. But on a mobile device, I want the number keyboard to appear, so I'm using input[type="number"] instead of just input[type="text"].
Currently, when I test on Chrome it's working. The $viewValue appearing in the directive for the credit card field shows the 16-digit number (Angular even auto-removes the spaces because of number type field).
But in Firefox, as soon as you type a space, $viewValue returns as "" (even though the field value is "5555 5555 5555 4444").
Is there any way to make this work as expected?
Wow Maybe this a serious Mozilla Bug, with no solution for now, then you may apply other ways to resolve this.
Use mask (lose number on mobile): Try Plugins, library like this http://digitalbush.com/projects/masked-input-plugin/ , the bad user loses the PAD NUMBER on mobile devices.
To keep input number (complex only for fun): Make a input type hidden, then when the user type on number field, fill the hidden input with the value.
Use text field (best way): yes number is the new era on HTML5, but users don't care that for now, yeah show only numbers with the pad (like most apps) is awesome, now ask is really necesary?
Dynamic Form JS: verify the browser version, if Wild Mozilla appears, change type number to type text ;)
Good luck !!
best regards from http://elporfirio.com

Maximum Image Uri Length in Silverlight

Does anyone know what the Maximum URL length is in Silverlight (version 4 if it matters)? I know it is 2048 and basically infinite for Firefox (the two environments I have tested in), but Image requests fail for long Uri's. Anyone know the magic number (is it 256 the max filepath length?) It is considerably shorter than the 2048 for IE...
According to the .NET framework library for Silverlight The Uri scheme can be 1024 while a complete Uri can be up to 65519 characters long. This is valid for both v3 and v4.
Hope this gives you some guidance.
EDIT
Okay, well after long testing, I managed to track down the limit for an image URL.
The scheme refers to the http part.
The whole URI cannot be longer than 2047 after which it seems to not load the image anymore. However, I could not find any official reasoning behind it.
The fact that you are getting AG_E_NETWORK_ERROR exceptions does not have anything to do with the length of the URI.
You can check however, if there are any illegal characters in your URI:
You can find the reserved characters in RFC2369 and see their web counterparts at w3schools
I also found that if the link is placed in the XAML, you have to replace the '&' sign with its '%26' counterpart.

Resources