add-to-homescreen-rails 2.0.4 → 2.0.5
Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Add to Homescreen v2.0.
|
2
|
+
* Add to Homescreen v2.0.5 ~ Copyright (c) 2013 Matteo Spinelli, http://cubiq.org
|
3
3
|
* Released under MIT license, http://cubiq.org/license
|
4
4
|
*/
|
5
5
|
var addToHome = (function (w) {
|
@@ -35,10 +35,12 @@ var addToHome = (function (w) {
|
|
35
35
|
touchIcon: false, // Display the touch icon
|
36
36
|
arrow: true, // Display the balloon arrow
|
37
37
|
hookOnLoad: true, // Should we hook to onload event? (really advanced usage)
|
38
|
+
closeButton: true, // Let the user close the balloon
|
38
39
|
iterations: 100 // Internal/debug use
|
39
40
|
},
|
40
41
|
|
41
42
|
intl = {
|
43
|
+
ar: '<span dir="rtl">قم بتثبيت هذا التطبيق على <span dir="ltr">%device:</span>انقر<span dir="ltr">%icon</span> ،<strong>ثم اضفه الى الشاشة الرئيسية.</strong></span>',
|
42
44
|
ca_es: 'Per instal·lar aquesta aplicació al vostre %device premeu %icon i llavors <strong>Afegir a pantalla d\'inici</strong>.',
|
43
45
|
cs_cz: 'Pro instalaci aplikace na Váš %device, stiskněte %icon a v nabídce <strong>Přidat na plochu</strong>.',
|
44
46
|
da_dk: 'Tilføj denne side til din %device: tryk på %icon og derefter <strong>Føj til hjemmeskærm</strong>.',
|
@@ -55,14 +57,14 @@ var addToHome = (function (w) {
|
|
55
57
|
ja_jp: 'このウェブアプリをあなたの%deviceにインストールするには%iconをタップして<strong>ホーム画面に追加</strong>を選んでください。',
|
56
58
|
ko_kr: '%device에 웹앱을 설치하려면 %icon을 터치 후 "홈화면에 추가"를 선택하세요',
|
57
59
|
nb_no: 'Installer denne appen på din %device: trykk på %icon og deretter <strong>Legg til på Hjem-skjerm</strong>',
|
58
|
-
nl_nl: 'Installeer deze webapp op uw %device: tik %icon en dan <strong>
|
60
|
+
nl_nl: 'Installeer deze webapp op uw %device: tik %icon en dan <strong>Voeg toe aan beginscherm</strong>.',
|
59
61
|
pl_pl: 'Aby zainstalować tę aplikacje na %device: naciśnij %icon a następnie <strong>Dodaj jako ikonę</strong>.',
|
60
|
-
pt_br: 'Instale este
|
62
|
+
pt_br: 'Instale este aplicativo em seu %device: aperte %icon e selecione <strong>Adicionar à Tela Inicio</strong>.',
|
61
63
|
pt_pt: 'Para instalar esta aplicação no seu %device, prima o %icon e depois o <strong>Adicionar ao ecrã principal</strong>.',
|
62
64
|
ru_ru: 'Установите это веб-приложение на ваш %device: нажмите %icon, затем <strong>Добавить в «Домой»</strong>.',
|
63
65
|
sv_se: 'Lägg till denna webbapplikation på din %device: tryck på %icon och därefter <strong>Lägg till på hemskärmen</strong>.',
|
64
66
|
th_th: 'ติดตั้งเว็บแอพฯ นี้บน %device ของคุณ: แตะ %icon และ <strong>เพิ่มที่หน้าจอโฮม</strong>',
|
65
|
-
tr_tr: '%device için
|
67
|
+
tr_tr: 'Bu uygulamayı %device\'a eklemek için %icon simgesine sonrasında <strong>Ana Ekrana Ekle</strong> düğmesine basın.',
|
66
68
|
zh_cn: '您可以将此应用程式安装到您的 %device 上。请按 %icon 然后点选<strong>添加至主屏幕</strong>。',
|
67
69
|
zh_tw: '您可以將此應用程式安裝到您的 %device 上。請按 %icon 然後點選<strong>加入主畫面螢幕</strong>。'
|
68
70
|
};
|
@@ -72,6 +74,7 @@ var addToHome = (function (w) {
|
|
72
74
|
if ( !isIDevice ) return;
|
73
75
|
|
74
76
|
var now = Date.now(),
|
77
|
+
title,
|
75
78
|
i;
|
76
79
|
|
77
80
|
// Merge local with global options
|
@@ -111,10 +114,7 @@ var addToHome = (function (w) {
|
|
111
114
|
|
112
115
|
if ( !overrideChecks && ( !isSafari || !isExpired || isSessionActive || isStandalone || !isReturningVisitor ) ) return;
|
113
116
|
|
114
|
-
var
|
115
|
-
sizes,
|
116
|
-
touchIcon = '',
|
117
|
-
closeButton,
|
117
|
+
var touchIcon = '',
|
118
118
|
platform = nav.platform.split(' ')[0],
|
119
119
|
language = nav.language.replace('-', '_'),
|
120
120
|
i, l;
|
@@ -132,37 +132,29 @@ var addToHome = (function (w) {
|
|
132
132
|
options.message = language in intl ? intl[language] : intl['en_us'];
|
133
133
|
}
|
134
134
|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
sizes
|
135
|
+
if ( options.touchIcon ) {
|
136
|
+
touchIcon = isRetina ?
|
137
|
+
document.querySelector('head link[rel^=apple-touch-icon][sizes="114x114"],head link[rel^=apple-touch-icon][sizes="144x144"]') :
|
138
|
+
document.querySelector('head link[rel^=apple-touch-icon][sizes="57x57"],head link[rel^=apple-touch-icon],head link[rel^=apple-touch-icon][sizes="72x72"]');
|
139
139
|
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
break;
|
144
|
-
}
|
145
|
-
} else {
|
146
|
-
touchIcon = icons[i].href;
|
147
|
-
}
|
140
|
+
if ( touchIcon ) {
|
141
|
+
alert(touchIcon.href)
|
142
|
+
touchIcon = '<span style="background-image:url(' + touchIcon.href + ')" class="addToHomeTouchIcon"></span>';
|
148
143
|
}
|
149
|
-
|
150
|
-
touchIcon = '<span style="background-image:url(' + touchIcon + ')" class="addToHomeTouchIcon"></span>';
|
151
144
|
}
|
152
145
|
|
153
146
|
balloon.className = (isIPad ? 'addToHomeIpad' : 'addToHomeIphone') + (touchIcon ? ' addToHomeWide' : '');
|
154
147
|
balloon.innerHTML = touchIcon +
|
155
148
|
options.message.replace('%device', platform).replace('%icon', OSVersion >= 4.2 ? '<span class="addToHomeShare"></span>' : '<span class="addToHomePlus">+</span>') +
|
156
149
|
(options.arrow ? '<span class="addToHomeArrow"></span>' : '') +
|
157
|
-
'<span class="addToHomeClose">\u00D7</span>';
|
150
|
+
(options.closeButton ? '<span class="addToHomeClose">\u00D7</span>' : '');
|
158
151
|
|
159
152
|
document.body.appendChild(balloon);
|
160
153
|
|
161
154
|
// Add the close action
|
162
|
-
closeButton
|
163
|
-
if ( closeButton ) closeButton.addEventListener('click', clicked, false);
|
155
|
+
if ( options.closeButton ) balloon.addEventListener('click', clicked, false);
|
164
156
|
|
165
|
-
if ( !isIPad && OSVersion
|
157
|
+
if ( !isIPad && OSVersion >= 6 ) window.addEventListener('orientationchange', orientationCheck, false);
|
166
158
|
|
167
159
|
setTimeout(show, options.startDelay);
|
168
160
|
}
|
@@ -206,7 +198,7 @@ var addToHome = (function (w) {
|
|
206
198
|
balloon.style.top = startY - balloon.offsetHeight - options.bottomOffset + 'px';
|
207
199
|
} else {
|
208
200
|
balloon.style.left = '50%';
|
209
|
-
balloon.style.marginLeft = -Math.round(balloon.offsetWidth / 2) - ( w.orientation%180 && OSVersion
|
201
|
+
balloon.style.marginLeft = -Math.round(balloon.offsetWidth / 2) - ( w.orientation%180 && OSVersion >= 6 ? 40 : 0 ) + 'px';
|
210
202
|
balloon.style.bottom = options.bottomOffset + 'px';
|
211
203
|
}
|
212
204
|
|
@@ -249,11 +241,10 @@ var addToHome = (function (w) {
|
|
249
241
|
var posY = 0,
|
250
242
|
posX = 0,
|
251
243
|
opacity = '1',
|
252
|
-
duration = '0'
|
253
|
-
closeButton = balloon.querySelector('.addToHomeClose');
|
244
|
+
duration = '0';
|
254
245
|
|
255
|
-
if ( closeButton )
|
256
|
-
if ( !isIPad && OSVersion
|
246
|
+
if ( options.closeButton ) balloon.removeEventListener('click', close, false);
|
247
|
+
if ( !isIPad && OSVersion >= 6 ) window.removeEventListener('orientationchange', orientationCheck, false);
|
257
248
|
|
258
249
|
if ( OSVersion < 5 ) {
|
259
250
|
posY = isIPad ? w.scrollY - startY : w.scrollY + w.innerHeight - startY;
|
@@ -336,7 +327,7 @@ var addToHome = (function (w) {
|
|
336
327
|
}
|
337
328
|
|
338
329
|
function orientationCheck () {
|
339
|
-
balloon.style.marginLeft = -Math.round(balloon.offsetWidth / 2) - ( w.orientation%180 && OSVersion
|
330
|
+
balloon.style.marginLeft = -Math.round(balloon.offsetWidth / 2) - ( w.orientation%180 && OSVersion >= 6 ? 40 : 0 ) + 'px';
|
340
331
|
}
|
341
332
|
|
342
333
|
// Bootstrap!
|
@@ -6,7 +6,11 @@
|
|
6
6
|
#addToHomeScreen {
|
7
7
|
z-index:9999;
|
8
8
|
-webkit-user-select:none;
|
9
|
+
user-select:none;
|
9
10
|
-webkit-box-sizing:border-box;
|
11
|
+
box-sizing:border-box;
|
12
|
+
-webkit-touch-callout:none;
|
13
|
+
touch-callout:none;
|
10
14
|
width:240px;
|
11
15
|
font-size:15px;
|
12
16
|
padding:12px 14px;
|
@@ -135,14 +139,19 @@
|
|
135
139
|
display:block;
|
136
140
|
float:left;
|
137
141
|
-webkit-border-radius:6px;
|
142
|
+
border-radius:6px;
|
138
143
|
-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.5),
|
139
144
|
inset 0 0 2px rgba(255,255,255,0.9);
|
145
|
+
box-shadow:0 1px 3px rgba(0,0,0,0.5),
|
146
|
+
inset 0 0 2px rgba(255,255,255,0.9);
|
140
147
|
background-repeat:no-repeat;
|
141
148
|
width:57px; height:57px;
|
142
149
|
-webkit-background-size:57px 57px;
|
150
|
+
background-size:57px 57px;
|
143
151
|
margin:0 12px 0 0;
|
144
152
|
border:1px solid #333;
|
145
153
|
-webkit-background-clip:padding-box;
|
154
|
+
background-clip:padding-box;
|
146
155
|
}
|
147
156
|
|
148
157
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: add-to-homescreen-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-02-13 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: Provides the 'Add to Home screen' assets for your Rails application.
|
15
15
|
email:
|