@shift72/core-template 0.4.2 → 0.4.3
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +15 -0
- package/kibble.json +2 -2
- package/package.json +7 -4
- package/scripts/css-local-get.js +34 -0
- package/scripts/css-local-put.js +110 -0
- package/scripts/language-file-validator.js +16 -2
- package/site/ar_LB.all.json +19 -17
- package/site/ca_ES.all.json +13 -32
- package/site/da_DK.all.json +44 -32
- package/site/de_DE.all.json +127 -2
- package/site/ee_EE.all.json +87 -22
- package/site/el_EL.all.json +86 -17
- package/site/en_AU.all.json +24 -23
- package/site/es_ES.all.json +125 -2
- package/site/es_MX.all.json +162 -2
- package/site/fi_FI.all.json +161 -2
- package/site/fr_FR.all.json +128 -2
- package/site/hr_HR.all.json +61 -4
- package/site/hu_HU.all.json +87 -22
- package/site/it_IT.all.json +124 -2
- package/site/ja_JP.all.json +160 -2
- package/site/lt_LT.all.json +47 -14
- package/site/nl_BE.all.json +49 -15
- package/site/no_NO.all.json +84 -22
- package/site/pl_PL.all.json +159 -2
- package/site/pt_BR.all.json +21 -32
- package/site/pt_PT.all.json +90 -18
- package/site/ru_RU.all.json +82 -15
- package/site/se_SE.all.json +61 -30
- package/site/styles/_awards.scss +6 -6
- package/site/styles/_bootstrap4.scss +90 -0
- package/site/styles/_buttons.scss +5 -4
- package/site/styles/_can-be-watched-button.scss +2 -0
- package/site/styles/_card.scss +2 -2
- package/site/styles/_carousel.scss +43 -28
- package/site/styles/_collections.scss +4 -4
- package/site/styles/_cookie-consent.scss +1 -1
- package/site/styles/_devices.scss +3 -3
- package/site/styles/_footer.scss +6 -6
- package/site/styles/_forms.scss +6 -6
- package/site/styles/_globals.scss +1 -1
- package/site/styles/_icons.scss +2 -2
- package/site/styles/_language-selector.scss +2 -2
- package/site/styles/_legacy.scss +3 -3
- package/site/styles/_meta-detail.scss +44 -24
- package/site/styles/_mixins.scss +2 -2
- package/site/styles/_nav.scss +40 -40
- package/site/styles/_pages.scss +12 -12
- package/site/styles/_pin-codes.scss +2 -2
- package/site/styles/_plans.scss +1 -1
- package/site/styles/_poster.scss +5 -4
- package/site/styles/_shift72.scss +22 -22
- package/site/styles/_shopping.scss +8 -8
- package/site/styles/_slider.scss +4 -10
- package/site/styles/_social-media-buttons.scss +20 -20
- package/site/styles/_swiper.scss +2 -2
- package/site/styles/_variables.scss +107 -82
- package/site/styles/_wishlist.scss +2 -2
- package/site/styles/main.scss +1 -3
- package/site/templates/application/application.jet +13 -1
- package/site/templates/bundle/buttons.jet +2 -1
- package/site/templates/bundle/item.jet +1 -2
- package/site/templates/collection/carousel_item.jet +12 -13
- package/site/templates/common/awards/item.jet +1 -1
- package/site/templates/film/item.jet +36 -12
- package/site/templates/tv/detail.jet +7 -7
- package/site/tr_TR.all.json +85 -21
- package/site/uk_UA.all.json +47 -34
- package/site/zh_TW.all.json +16 -36
- package/site/styles/_functions.scss +0 -8
package/CHANGELOG.md
CHANGED
@@ -2,6 +2,21 @@
|
|
2
2
|
|
3
3
|
## [Unreleased](https://github.com/shift72/core-template/compare/0.4.2...HEAD)
|
4
4
|
|
5
|
+
## [0.4.3](https://github.com/shift72/core-template/compare/0.4.2...0.4.3)
|
6
|
+
|
7
|
+
### Added
|
8
|
+
- Awards categories
|
9
|
+
- Floating donate button
|
10
|
+
- External custom CSS link in head.
|
11
|
+
- Scripts for downloading/uploading custom CSS files for use with local development.
|
12
|
+
|
13
|
+
### Changed
|
14
|
+
- Replaced various SASS variables with CSS variables.
|
15
|
+
- Added workarounds for SASS and Bootstrap functions that don't understand CSS variables.
|
16
|
+
- Kibble 0.16.4
|
17
|
+
- Split CC and Subtitles
|
18
|
+
- Moved engagement icons
|
19
|
+
|
5
20
|
## [0.4.2](https://github.com/shift72/core-template/compare/0.4.1...0.4.2)
|
6
21
|
|
7
22
|
### Added
|
package/kibble.json
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
"name": "core-template",
|
3
3
|
"version": "0.0.1",
|
4
4
|
"siteUrl": "https://abccinemas.screenplus.co",
|
5
|
-
"builderVersion": "0.
|
5
|
+
"builderVersion": "0.16.4",
|
6
6
|
"defaultLanguage": "en",
|
7
7
|
"languages": {
|
8
8
|
"ar": { "code": "ar_LB", "name": "عربى" },
|
@@ -107,4 +107,4 @@
|
|
107
107
|
"pageSize": 0
|
108
108
|
}
|
109
109
|
]
|
110
|
-
}
|
110
|
+
}
|
package/package.json
CHANGED
@@ -1,15 +1,17 @@
|
|
1
1
|
{
|
2
2
|
"name": "@shift72/core-template",
|
3
|
-
"version": "0.4.
|
3
|
+
"version": "0.4.3",
|
4
4
|
"description": "Shift72 core template",
|
5
5
|
"license": "MIT",
|
6
6
|
"scripts": {
|
7
7
|
"start": "npm run init && npm-run-all --parallel css:watch js:watch kibble:watch",
|
8
|
-
"init": "npm-run-all css js",
|
8
|
+
"init": "npm-run-all css css:local:get js",
|
9
9
|
"css": "sass ./site/styles/main.scss ./site/static/styles/main.css --load-path=node_modules",
|
10
10
|
"css:lint": "prettier 'site/styles/*.scss' --write && stylelint ./site/styles/*.scss --fix",
|
11
11
|
"css:watch": "npm run css -- --watch",
|
12
12
|
"css:build": "postcss ./site/static/styles/main.css --use autoprefixer --use cssnano -r",
|
13
|
+
"css:local:get": "node scripts/css-local-get.js",
|
14
|
+
"css:local:put": "node scripts/css-local-put.js",
|
13
15
|
"js": "rollup -c",
|
14
16
|
"js:lint": "prettier '{scripts,site/static/js}/**/!(modernizr-custom).js' --write && eslint ./site/static/js/*.js ./scripts --fix",
|
15
17
|
"js:watch": "rollup -c -w",
|
@@ -34,7 +36,7 @@
|
|
34
36
|
"dependencies": {
|
35
37
|
"@rollup/plugin-buble": "^0.21.3",
|
36
38
|
"autoprefixer": "^7.1.2",
|
37
|
-
"bootstrap": "^4.
|
39
|
+
"bootstrap": "^4.6.1",
|
38
40
|
"concat": "^1.0.3",
|
39
41
|
"cssnano": "^5.0.8",
|
40
42
|
"del": "^6.0.0",
|
@@ -45,7 +47,7 @@
|
|
45
47
|
"postcss-cli": "^9.0.1",
|
46
48
|
"rollup": "^2.23.0",
|
47
49
|
"rollup-plugin-terser": "^6.1.0",
|
48
|
-
"s72-kibble": "^0.
|
50
|
+
"s72-kibble": "^0.16.4",
|
49
51
|
"sass": "^1.36.0"
|
50
52
|
},
|
51
53
|
"devDependencies": {
|
@@ -55,6 +57,7 @@
|
|
55
57
|
"eslint-plugin-compat": "^3.13.0",
|
56
58
|
"eslint-plugin-react": "^7.26.1",
|
57
59
|
"eslint-plugin-react-hooks": "^4.2.0",
|
60
|
+
"form-data": "^4.0.0",
|
58
61
|
"prettier": "^2.3.2",
|
59
62
|
"stylelint": "^13.13.1",
|
60
63
|
"stylelint-config-prettier": "^8.0.2",
|
@@ -0,0 +1,34 @@
|
|
1
|
+
const https = require('https');
|
2
|
+
const fs = require('fs');
|
3
|
+
|
4
|
+
const siteUrl = readJsonValueFromRawData('siteUrl', fs.readFileSync('kibble.json'));
|
5
|
+
const file = fs.createWriteStream('site/static/styles/local.css');
|
6
|
+
|
7
|
+
https.get(`${siteUrl}/services/users/v1/css`, handleFilenameResponse).on('error', handleError);
|
8
|
+
|
9
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
10
|
+
|
11
|
+
function readJsonValueFromRawData(key, rawJson) {
|
12
|
+
let json = JSON.parse(rawJson);
|
13
|
+
return json[key];
|
14
|
+
}
|
15
|
+
|
16
|
+
function handleFilenameResponse(res) {
|
17
|
+
res.on('data', d => {
|
18
|
+
const filename = readJsonValueFromRawData('css_filename', d);
|
19
|
+
|
20
|
+
if (filename) {
|
21
|
+
https.get(`${siteUrl}/styles/${filename}`, handleFileResponse).on('error', handleError);
|
22
|
+
} else {
|
23
|
+
console.log('Custom CSS not found');
|
24
|
+
}
|
25
|
+
});
|
26
|
+
}
|
27
|
+
|
28
|
+
function handleFileResponse(res) {
|
29
|
+
res.pipe(file);
|
30
|
+
}
|
31
|
+
|
32
|
+
function handleError(e) {
|
33
|
+
console.error(e);
|
34
|
+
}
|
@@ -0,0 +1,110 @@
|
|
1
|
+
const https = require('https');
|
2
|
+
const fs = require('fs');
|
3
|
+
const FormData = require('form-data');
|
4
|
+
const rl = require('readline').createInterface({
|
5
|
+
input: process.stdin,
|
6
|
+
output: process.stdout,
|
7
|
+
});
|
8
|
+
|
9
|
+
const siteUrl = readJsonValueFromRawData('siteUrl', fs.readFileSync('kibble.json'));
|
10
|
+
const url = new URL(siteUrl);
|
11
|
+
|
12
|
+
rl.question(`Enter Username for ${siteUrl}: `, username => {
|
13
|
+
rl.question('Enter Password: ', password => {
|
14
|
+
rl.close();
|
15
|
+
|
16
|
+
return signin(username, password)
|
17
|
+
.then(authToken => {
|
18
|
+
return uploadCSS(authToken);
|
19
|
+
})
|
20
|
+
.then(filename => {
|
21
|
+
console.log(`CSS file upload success: https://${url.hostname}/styles/${filename}`);
|
22
|
+
})
|
23
|
+
.catch(handleError);
|
24
|
+
});
|
25
|
+
});
|
26
|
+
|
27
|
+
///////////////////////////////////////////////////////////////////////////////////////////////
|
28
|
+
|
29
|
+
function uploadCSS(authToken) {
|
30
|
+
return new Promise((resolve, reject) => {
|
31
|
+
let form = new FormData();
|
32
|
+
form.append('file', fs.createReadStream('site/static/styles/local.css'), {
|
33
|
+
filename: 'local.css',
|
34
|
+
contentType: 'text/css',
|
35
|
+
});
|
36
|
+
|
37
|
+
let headers = form.getHeaders();
|
38
|
+
headers['x-auth-token'] = authToken;
|
39
|
+
|
40
|
+
let options = {
|
41
|
+
hostname: url.hostname,
|
42
|
+
path: '/services/users/v1/css',
|
43
|
+
method: 'PUT',
|
44
|
+
headers,
|
45
|
+
};
|
46
|
+
|
47
|
+
const req = https.request(options);
|
48
|
+
|
49
|
+
form.pipe(req);
|
50
|
+
form.on('end', () => {
|
51
|
+
req.end();
|
52
|
+
});
|
53
|
+
|
54
|
+
req.on('response', res => {
|
55
|
+
if (res.statusCode < 200 || res.statusCode >= 300) {
|
56
|
+
return reject(new Error(`statusCode=${res.statusCode}`));
|
57
|
+
}
|
58
|
+
|
59
|
+
res.on('data', d => {
|
60
|
+
let filename = readJsonValueFromRawData('css_filename', d);
|
61
|
+
return resolve(filename);
|
62
|
+
});
|
63
|
+
});
|
64
|
+
|
65
|
+
req.on('error', e => {
|
66
|
+
return reject(e);
|
67
|
+
});
|
68
|
+
});
|
69
|
+
}
|
70
|
+
|
71
|
+
function signin(username, password) {
|
72
|
+
return new Promise((resolve, reject) => {
|
73
|
+
let options = {
|
74
|
+
hostname: url.hostname,
|
75
|
+
path: '/services/users/auth/sign_in',
|
76
|
+
method: 'POST',
|
77
|
+
headers: { 'Content-Type': 'application/json' },
|
78
|
+
};
|
79
|
+
|
80
|
+
const req = https.request(options);
|
81
|
+
|
82
|
+
req.on('response', res => {
|
83
|
+
if (res.statusCode < 200 || res.statusCode >= 300) {
|
84
|
+
return reject(new Error(`statusCode=${res.statusCode}`));
|
85
|
+
}
|
86
|
+
|
87
|
+
res.on('data', d => {
|
88
|
+
let authToken = readJsonValueFromRawData('auth_token', d);
|
89
|
+
return resolve(authToken);
|
90
|
+
});
|
91
|
+
});
|
92
|
+
|
93
|
+
req.on('error', e => {
|
94
|
+
return reject(e);
|
95
|
+
});
|
96
|
+
|
97
|
+
req.write(JSON.stringify({ user: { email: username, password } }));
|
98
|
+
|
99
|
+
req.end();
|
100
|
+
});
|
101
|
+
}
|
102
|
+
|
103
|
+
function readJsonValueFromRawData(key, rawJson) {
|
104
|
+
let json = JSON.parse(rawJson);
|
105
|
+
return json[key];
|
106
|
+
}
|
107
|
+
|
108
|
+
function handleError(e) {
|
109
|
+
console.error(e);
|
110
|
+
}
|
@@ -10,7 +10,6 @@ const languageFiles = openFiles(languageFilenames);
|
|
10
10
|
let errors = [];
|
11
11
|
|
12
12
|
const whitespacePaddedKeys = [
|
13
|
-
'accept_invite_page_header',
|
14
13
|
'shopping_info_release_date_title',
|
15
14
|
'shopping_info_available_until_date_title',
|
16
15
|
'shopping_info_rental_period_duration',
|
@@ -18,7 +17,7 @@ const whitespacePaddedKeys = [
|
|
18
17
|
'classification_intro',
|
19
18
|
'classification_divider',
|
20
19
|
];
|
21
|
-
const emptyKeys = ['classification_outro'
|
20
|
+
const emptyKeys = ['classification_outro'];
|
22
21
|
|
23
22
|
languageFilenames.forEach(language => {
|
24
23
|
console.log(`===== TESTING: ${language} =====`);
|
@@ -39,6 +38,7 @@ languageFilenames.forEach(language => {
|
|
39
38
|
|
40
39
|
if (keys.includes(key)) {
|
41
40
|
testKeyNotEnglish(masterFile[key], file[key], key);
|
41
|
+
testValueNotKey(file[key], key);
|
42
42
|
}
|
43
43
|
});
|
44
44
|
|
@@ -103,3 +103,17 @@ function testKeyNotEnglish(englishValue, translatedValue, key) {
|
|
103
103
|
errors.push(e);
|
104
104
|
}
|
105
105
|
}
|
106
|
+
|
107
|
+
function testValueNotKey(translation, key) {
|
108
|
+
try {
|
109
|
+
assert.ok(translation['zero'] != key);
|
110
|
+
assert.ok(translation['one'] != key);
|
111
|
+
assert.ok(translation['two'] != key);
|
112
|
+
assert.ok(translation['few'] != key);
|
113
|
+
assert.ok(translation['many'] != key);
|
114
|
+
assert.ok(translation['other'] != key);
|
115
|
+
} catch(e) {
|
116
|
+
console.error(`${key} - key is value.`);
|
117
|
+
errors.push(e);
|
118
|
+
}
|
119
|
+
}
|
package/site/ar_LB.all.json
CHANGED
@@ -348,6 +348,7 @@
|
|
348
348
|
"meta_detail_studios": { "one": "الاستديو", "other": "الاستوديوهات" },
|
349
349
|
"meta_detail_countries": { "one": "البلد", "other": "البلدان" },
|
350
350
|
"meta_detail_subtitles": { "other": "الترجمة" },
|
351
|
+
"meta_detail_captions": { "other": "الترجمة [CC]" },
|
351
352
|
"meta_detail_episodes_title": { "other": "الحلفات" },
|
352
353
|
"meta_detail_bonus_title": { "other": "محتوى إضافي" },
|
353
354
|
"meta_detail_recommendations_title": { "other": "قد يعجبك أيضا" },
|
@@ -413,7 +414,6 @@
|
|
413
414
|
"users_gender_diverse": { "other": "مختلف" },
|
414
415
|
"users_gender_other": { "other": "غير محدد" },
|
415
416
|
|
416
|
-
"plan_label_owned": { "other": "" },
|
417
417
|
|
418
418
|
"pricing_quality_hd": { "other": "pricing_quality_hd" },
|
419
419
|
"pricing_quality_sd": { "other": "pricing_quality_sd" },
|
@@ -433,22 +433,8 @@
|
|
433
433
|
|
434
434
|
"shopping_info_ownership_plan": { "other": "shopping_info_ownership_plan" },
|
435
435
|
|
436
|
-
"shopping_price_title_plan": { "other": "shopping_price_title_plan" },
|
437
|
-
"shopping_price_plan_note": { "other": "shopping_price_plan_note" },
|
438
|
-
"shopping_price_plan_note_interval": { "other": "shopping_price_plan_note_interval" },
|
439
|
-
|
440
|
-
"shopping_enter_card_prompt_plan": { "other": "shopping_enter_card_prompt_plan" },
|
441
|
-
|
442
|
-
"shopping_action_credit": { "other": "shopping_action_credit" },
|
443
|
-
"shopping_action_plan": { "other": "shopping_action_plan" },
|
444
|
-
|
445
|
-
"shopping_complete_subscription": { "other": "shopping_complete_subscription" },
|
446
|
-
"shopping_complete_subscription_browse": { "other": "shopping_complete_subscription_browse" },
|
447
|
-
|
448
436
|
"shopping_info_rental_period_coming_soon": { "other": "من تاريخ ووقت الإصدار." },
|
449
|
-
|
450
|
-
"shopping_info_trial_period_offer": { "other": "shopping_info_trial_period_offer" },
|
451
|
-
|
437
|
+
|
452
438
|
"usersubscriptions_change_payment_method_change": { "other": "usersubscriptions_change_payment_method_change" },
|
453
439
|
"usersubscriptions_change_payment_method_modal_title": { "other": "usersubscriptions_change_payment_method_modal_title" },
|
454
440
|
"usersubscriptions_change_payment_method_modal_submit": { "other": "usersubscriptions_change_payment_method_modal_submit" },
|
@@ -540,6 +526,7 @@
|
|
540
526
|
"shopping_action_plan": {
|
541
527
|
"other": "مكتمل"
|
542
528
|
},
|
529
|
+
"shopping_action_credit": { "other": "shopping_action_credit" },
|
543
530
|
"shopping_complete_subscription": {
|
544
531
|
"other": "تم شراء اشتراكك بنجاح. أنت الآن مشترك في {{ .Title }} ."
|
545
532
|
},
|
@@ -590,5 +577,20 @@
|
|
590
577
|
},
|
591
578
|
"awards_in_competition": {
|
592
579
|
"other": "في المنافسة"
|
593
|
-
}
|
580
|
+
},
|
581
|
+
"donate_button_text": {
|
582
|
+
"other": "يتبرع"
|
583
|
+
},
|
584
|
+
"shopping_error_plan_already_owned": { "other": "You already have this plan." },
|
585
|
+
"shopping_error_plan_expired": { "other": "This plan is no longer available." },
|
586
|
+
|
587
|
+
"wcag_aria_label_letterboxd": { "other": "View on Letterboxd" },
|
588
|
+
|
589
|
+
"header_banner": { "other": "ABC Cinemas – 21st Film Festival, June 1 – 6, 2021" },
|
590
|
+
"app_badge_title": { "other": "Download the app to view your purchased content!" },
|
591
|
+
"app_badge_ios": { "other": "Download on the App Store" },
|
592
|
+
"app_badge_android": { "other": "Get it on Google Play" },
|
593
|
+
|
594
|
+
"awards_winner_of": { "other": "Winner of" }
|
595
|
+
|
594
596
|
}
|
package/site/ca_ES.all.json
CHANGED
@@ -147,7 +147,7 @@
|
|
147
147
|
"social_media_buttons_copied_link": { "other": "S'ha copiat l'enllaç al porta-retalls!" },
|
148
148
|
"social_media_buttons_copy_link": { "other": "Copiar al portapapers" },
|
149
149
|
"accept_invite_page_header": {
|
150
|
-
"other": "Benvingut"
|
150
|
+
"other": "Benvingut "
|
151
151
|
},
|
152
152
|
"acceptinvite_form_invalid_reset_password_token": {
|
153
153
|
"other": "Sembla que ja heu reclamat aquesta invitació, haureu de fer <a href=\"{{.SigninURL}}\">inicia la sessió</a> en canvi. Si heu oblidat la vostra contrasenya, també podeu <a href=\"{{.ForgotPasswordURL}}\">restablir la contrasenya</a>."
|
@@ -760,6 +760,7 @@
|
|
760
760
|
"meta_detail_subtitles": {
|
761
761
|
"other": "Subtítols"
|
762
762
|
},
|
763
|
+
"meta_detail_captions": { "other": "Subtítols [CC]" },
|
763
764
|
"meta_detail_episodes_title": {
|
764
765
|
"other": "Episodis"
|
765
766
|
},
|
@@ -917,9 +918,6 @@
|
|
917
918
|
"users_gender_other": {
|
918
919
|
"other": "Altre"
|
919
920
|
},
|
920
|
-
"plan_label_owned": {
|
921
|
-
"other": ""
|
922
|
-
},
|
923
921
|
"pricing_quality_hd": {
|
924
922
|
"other": "pricing_quality_hd"
|
925
923
|
},
|
@@ -965,39 +963,12 @@
|
|
965
963
|
"shopping_info_ownership_plan": {
|
966
964
|
"other": "shopping_info_ownership_plan"
|
967
965
|
},
|
968
|
-
"shopping_price_title_plan": {
|
969
|
-
"other": "shopping_price_title_plan"
|
970
|
-
},
|
971
|
-
"shopping_price_plan_note": {
|
972
|
-
"other": "shopping_price_plan_note"
|
973
|
-
},
|
974
|
-
"shopping_price_plan_note_interval": {
|
975
|
-
"other": "shopping_price_plan_note_interval"
|
976
|
-
},
|
977
|
-
"shopping_enter_card_prompt_plan": {
|
978
|
-
"other": "shopping_enter_card_prompt_plan"
|
979
|
-
},
|
980
966
|
"shopping_action_credit": {
|
981
967
|
"other": "shopping_action_credit"
|
982
968
|
},
|
983
|
-
"shopping_action_plan": {
|
984
|
-
"other": "shopping_action_plan"
|
985
|
-
},
|
986
|
-
"shopping_complete_subscription": {
|
987
|
-
"other": "shopping_complete_subscription"
|
988
|
-
},
|
989
|
-
"shopping_complete_subscription_browse": {
|
990
|
-
"other": "shopping_complete_subscription_browse"
|
991
|
-
},
|
992
969
|
"shopping_info_rental_period_coming_soon": {
|
993
970
|
"other": "des de la data i l'hora de l'alliberament."
|
994
971
|
},
|
995
|
-
"shopping_info_plan_offer": {
|
996
|
-
"other": "shopping_info_plan_offer"
|
997
|
-
},
|
998
|
-
"shopping_info_trial_period_offer": {
|
999
|
-
"other": "shopping_info_trial_period_offer"
|
1000
|
-
},
|
1001
972
|
"usersubscriptions_change_payment_method_change": {
|
1002
973
|
"other": "usersubscriptions_change_payment_method_change"
|
1003
974
|
},
|
@@ -1258,5 +1229,15 @@
|
|
1258
1229
|
},
|
1259
1230
|
"awards_in_competition": {
|
1260
1231
|
"other": "En Competició"
|
1261
|
-
}
|
1232
|
+
},
|
1233
|
+
"awards_winner_of": {
|
1234
|
+
"other": "Guanyador de"
|
1235
|
+
},
|
1236
|
+
"donate_button_text": {
|
1237
|
+
"other": "Donar"
|
1238
|
+
},
|
1239
|
+
"shopping_error_plan_already_owned": { "other": "You already have this plan." },
|
1240
|
+
"shopping_error_plan_expired": { "other": "This plan is no longer available." },
|
1241
|
+
|
1242
|
+
"wcag_aria_label_letterboxd": { "other": "View on Letterboxd" }
|
1262
1243
|
}
|
package/site/da_DK.all.json
CHANGED
@@ -132,7 +132,7 @@
|
|
132
132
|
"social_media_buttons_copied_link": { "other": "Link kopieret til udklipsholder!" },
|
133
133
|
"social_media_buttons_copy_link": { "other": "Kopier til udklipsholder" },
|
134
134
|
"accept_invite_page_header": {
|
135
|
-
"other": "Velkommen"
|
135
|
+
"other": "Velkommen "
|
136
136
|
},
|
137
137
|
"acceptinvite_form_invalid_reset_password_token": {
|
138
138
|
"other": "Det ser ud som om du allerede har accepteret denne invitation, du skal derfor <a href=\"signin.html\">logge ind</a> i stedet Hvis du har glemt dit kodeord, kan du også <a href=\"forgotpassword.html\">nulstille dit kodeord</a>."
|
@@ -725,6 +725,7 @@
|
|
725
725
|
"meta_detail_subtitles": {
|
726
726
|
"other": "Undertekster"
|
727
727
|
},
|
728
|
+
"meta_detail_captions": { "other": "Undertekster [CC]" },
|
728
729
|
"meta_detail_episodes_title": {
|
729
730
|
"other": "Episodes"
|
730
731
|
},
|
@@ -882,9 +883,6 @@
|
|
882
883
|
"users_gender_other": {
|
883
884
|
"other": "Andet"
|
884
885
|
},
|
885
|
-
"plan_label_owned": {
|
886
|
-
"other": ""
|
887
|
-
},
|
888
886
|
"pricing_quality_hd": {
|
889
887
|
"other": "pricing_quality_hd"
|
890
888
|
},
|
@@ -930,39 +928,12 @@
|
|
930
928
|
"shopping_info_ownership_plan": {
|
931
929
|
"other": "shopping_info_ownership_plan"
|
932
930
|
},
|
933
|
-
"shopping_price_title_plan": {
|
934
|
-
"other": "shopping_price_title_plan"
|
935
|
-
},
|
936
|
-
"shopping_price_plan_note": {
|
937
|
-
"other": "shopping_price_plan_note"
|
938
|
-
},
|
939
|
-
"shopping_price_plan_note_interval": {
|
940
|
-
"other": "shopping_price_plan_note_interval"
|
941
|
-
},
|
942
|
-
"shopping_enter_card_prompt_plan": {
|
943
|
-
"other": "shopping_enter_card_prompt_plan"
|
944
|
-
},
|
945
931
|
"shopping_action_credit": {
|
946
932
|
"other": "shopping_action_credit"
|
947
933
|
},
|
948
|
-
"shopping_action_plan": {
|
949
|
-
"other": "shopping_action_plan"
|
950
|
-
},
|
951
|
-
"shopping_complete_subscription": {
|
952
|
-
"other": "shopping_complete_subscription"
|
953
|
-
},
|
954
|
-
"shopping_complete_subscription_browse": {
|
955
|
-
"other": "shopping_complete_subscription_browse"
|
956
|
-
},
|
957
934
|
"shopping_info_rental_period_coming_soon": {
|
958
935
|
"other": "fra premieredatoen og -tidspunktet."
|
959
936
|
},
|
960
|
-
"shopping_info_plan_offer": {
|
961
|
-
"other": "shopping_info_plan_offer"
|
962
|
-
},
|
963
|
-
"shopping_info_trial_period_offer": {
|
964
|
-
"other": "shopping_info_trial_period_offer"
|
965
|
-
},
|
966
937
|
"usersubscriptions_change_payment_method_change": {
|
967
938
|
"other": "usersubscriptions_change_payment_method_change"
|
968
939
|
},
|
@@ -1161,5 +1132,46 @@
|
|
1161
1132
|
},
|
1162
1133
|
"awards_in_competition": {
|
1163
1134
|
"other": "I Konkurrence"
|
1164
|
-
}
|
1135
|
+
},
|
1136
|
+
"awards_winner_of": {
|
1137
|
+
"other": "Vinder af"
|
1138
|
+
},
|
1139
|
+
"donate_button_text": {
|
1140
|
+
"other": "Doner"
|
1141
|
+
},
|
1142
|
+
|
1143
|
+
"shopping_error_plan_already_owned": { "other": "You already have this plan." },
|
1144
|
+
"shopping_error_plan_expired": { "other": "This plan is no longer available." },
|
1145
|
+
"shopping_payment_method_header": { "other": "Payment methods" },
|
1146
|
+
"shopping_payment_method_credit_card": { "other": "Credit card" },
|
1147
|
+
"shopping_payment_method_giropay": { "other": "Giropay" },
|
1148
|
+
"shopping_error_stripe_unknown_error": { "other": "Something went wrong with this payment. Please try again later." },
|
1149
|
+
"shopping_error_payment_complete_failed": { "other": "The payment was declined. Close this window and try again." },
|
1150
|
+
|
1151
|
+
"wcag_skip_links_header": { "other": "Accessibility Links" },
|
1152
|
+
"wcag_skip_links_content": { "other": "Skip to Content" },
|
1153
|
+
"wcag_skip_links_footer": { "other": "Skip to Footer" },
|
1154
|
+
|
1155
|
+
"wcag_homepage_h1": { "other": "Homepage" },
|
1156
|
+
"wcag_carousel_h2": { "other": "Carousel" },
|
1157
|
+
"wcag_collections_h2": { "other": "Collections" },
|
1158
|
+
|
1159
|
+
"wcag_aria_label_footer": { "other": "Footer" },
|
1160
|
+
"wcag_aria_label_nav_main": { "other": "Main" },
|
1161
|
+
"wcag_aria_label_nav_sub": { "other": "Sub" },
|
1162
|
+
"wcag_aria_label_toggle_nav": { "other": "Toggle Navigation" },
|
1163
|
+
"wcag_aria_label_bundle_items": { "other": "Bundle Items" },
|
1164
|
+
"wcag_aria_label_carousel": { "other": "Carousel" },
|
1165
|
+
"wcag_aria_label_page_collection": { "other": "Page Collection" },
|
1166
|
+
"wcag_aria_label_collection_list": { "other": "Collection List" },
|
1167
|
+
"wcag_aria_label_collection_slider": { "other": "Collection Slider" },
|
1168
|
+
"wcag_aria_label_wishlist": { "other": "Wishlist" },
|
1169
|
+
"wcag_aria_label_facebook": { "other": "Share on Facebook" },
|
1170
|
+
"wcag_aria_label_twitter": { "other": "Share on Twitter" },
|
1171
|
+
"wcag_aria_label_linkedin": { "other": "Share on LinkedIn" },
|
1172
|
+
"wcag_aria_label_letterboxd": { "other": "View on Letterboxd" },
|
1173
|
+
|
1174
|
+
"header_banner": { "other": "ABC Cinemas – 21st Film Festival, June 1 – 6, 2021" }
|
1175
|
+
|
1176
|
+
|
1165
1177
|
}
|