Skip to content

Commit 133e999

Browse files
committed
Add langs
1 parent 250fb79 commit 133e999

26 files changed

+901
-40
lines changed

Carrot-Framework-Web

index.html

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -85,16 +85,16 @@
8585

8686
<div class="container">
8787
<h1 class="mb-4">
88-
<img id="logo_app" class="animate__animated animate__fadeInDownBig" role="button" src="images/logo.png" alt="Logo" id="logo" onclick="m.onLoad()"> <span class="animate__animated animate__fadeInDownBig animate__delay-1s">Music Store</span>
89-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_song()" id="m-music"><i class="fas fa-music"></i> Music</button>
90-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_artist()" id="m-artist"><i class="fas fa-user-tie"></i> Artist</button>
91-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_year()" id="m-year"><i class="far fa-calendar-alt"></i> Year</button>
92-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_genre()" id="m-genre"><i class="fas fa-guitar"></i> Genre</button>
93-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_album()" id="m-album"><i class="fas fa-compact-disc"></i> Album</button>
94-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_search()" id="m-search"><i class="fas fa-search"></i> Search</button>
95-
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_about()" id="m-about"><i class="fas fa-dove"></i> About</button>
96-
<button class="btn btn-sm animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="cr.show_contact()"><i class="fas fa-phone"></i> Contact</button>
97-
<button class="btn btn-sm animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_setting()"><i class="fas fa-cog"></i> Setting</button>
88+
<img id="logo_app" class="animate__animated animate__fadeInDownBig" role="button" src="images/logo.png" alt="Logo" id="logo" onclick="m.onLoad()"> <span class="animate__animated animate__fadeInDownBig animate__delay-1s"><l class="lang" key_lang="music_store">Music Store</l></span>
89+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_song()" id="m-music"><i class="fas fa-music"></i> <l class="lang" key_lang="music">Music</l></button>
90+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_artist()" id="m-artist"><i class="fas fa-user-tie"></i> <l class="lang" key_lang="singer">Artist</l></button>
91+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_year()" id="m-year"><i class="far fa-calendar-alt"></i> <l class="lang" key_lang="year">Year</l></button>
92+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_genre()" id="m-genre"><i class="fas fa-guitar"></i> <l class="lang" key_lang="genre">Genre</l></button>
93+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_list_album()" id="m-album"><i class="fas fa-compact-disc"></i> <l class="lang" key_lang="album">Album</l></button>
94+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_search()" id="m-search"><i class="fas fa-search"></i> <l class="lang" key_lang="search">Search</l></button>
95+
<button class="btn btn-sm btn-m animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_about()" id="m-about"><i class="fas fa-dove"></i> <l class="lang" key_lang="about">About</l></button>
96+
<button class="btn btn-sm animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="cr.show_contact()"><i class="fas fa-phone"></i> <l class="lang" key_lang="contact">Contact</l></button>
97+
<button class="btn btn-sm animate__animated animate__flipInX animate__fadeInDownBig animate__delay-2s" onclick="m.show_setting()"><i class="fas fa-cog"></i> <l class="lang" key_lang="setting">Setting</l></button>
9898
</h1>
9999

100100
<div class="row text-center">
@@ -105,12 +105,12 @@ <h1 class="mb-4">
105105

106106
<div class="row">
107107
<footer class="animate__animated animate__fadeInUp animate__delay-3s mt-3 text-black text-center col-12">
108-
<p>&copy; 2024 Music For Life Store. Copyrighted by <b>Tran Thien Thanh</b></p>
109-
<a href="#" onclick="cr.show_contact();return false;" class="m-1"><i class="fas fa-envelope-open"></i> Contact</a>
110-
<a href="#" onclick="m.show_pp();return false;" class="m-1 btn-m" id="m-pp"><i class="fas fa-carrot"></i> Privacy Policy</a>
111-
<a href="#" onclick="m.show_tos();return false;" class="m-1 btn-m" id="m-tos"><i class="fas fa-universal-access"></i> Terms of Service</a>
112-
<a href="https://www.paypal.com/paypalme/kurotsmile" target="_blank" class="m-1"><i class="fas fa-donate"></i> Donate</a>
113-
<a href="#" onclick="cr.show_donation();return false;" class="m-1"><i class="fas fa-heart"></i> Sponsor</a>
108+
<p>&copy; 2024 Music For Life Store. <l class="lang" key_lang="copyright">Copyrighted by <b>Tran Thien Thanh</b></l></p>
109+
<a href="#" onclick="cr.show_contact();return false;" class="m-1"><i class="fas fa-envelope-open"></i> <l class="lang" key_lang="contact">Contact</l></a>
110+
<a href="#" onclick="m.show_pp();return false;" class="m-1 btn-m" id="m-pp"><i class="fas fa-carrot"></i> <l class="lang" key_lang="pp">Privacy Policy</l></a>
111+
<a href="#" onclick="m.show_tos();return false;" class="m-1 btn-m" id="m-tos"><i class="fas fa-universal-access"></i> <l class="lang" key_lang="tos">Terms of Service</l></a>
112+
<a href="https://www.paypal.com/paypalme/kurotsmile" target="_blank" class="m-1"><i class="fas fa-donate"></i> <l class="lang" key_lang="donation">Donate</l></a>
113+
<a href="#" onclick="cr.show_donation();return false;" class="m-1"><i class="fas fa-heart"></i> <l class="lang" key_lang="sponsor">Sponsor</l></a>
114114
</footer>
115115
</div>
116116
</div>

js/music.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,14 @@ class Music{
1919
unlock_all_mp3=false;
2020

2121
onLoad(){
22+
cr.onLoad(true);
2223
m.url_data=cr.get_random(m.list_url_data);
2324
cr.setSiteName("Music For Life Store");
2425
cr.setSiteUrl("https://music-for-life-drab.vercel.app");
2526
cr.set_color_btn("#ff8c00");
26-
cr.setVer("0.3");
27+
cr.setVer("0.32");
2728
cr.loadJs("js/songs.js","song");
2829
cr.loadJs("cr_player/cr_player.js","cr_player","onCreate");
29-
cr.onLoad();
3030
cr.add_btn_top();
3131
cr.act_done_pay=(data)=>{m.check_pay(data);};
3232
if(localStorage.getItem("unlock_all_mp3")!=null){
@@ -35,7 +35,7 @@ class Music{
3535
}
3636

3737
loading(){
38-
$("#sub_title").html('<div class="col-12 mb-2"><i class="fas fa-spinner fa-spin"></i> Loading...</div>');
38+
$("#sub_title").html('<div class="col-12 mb-2"><i class="fas fa-spinner fa-spin"></i> '+cr.l('loading','Loading...')+'</div>');
3939
}
4040

4141
show_list_song(){
@@ -147,9 +147,9 @@ class Music{
147147

148148
if(this.unlock_all_mp3==false){
149149
html_extension+='<div class="form-group">';
150-
html_extension+='<label for="unlockallmp3"><i class="fas fa-shopping-cart"></i> Buy functionality</label>';
151-
html_extension+='<button class="btn btn-dark m-1" onclick="m.show_pay_unlock_all_mp3();return false"><i class="fas fa-unlock-alt"></i> Unlock Mp3 music download function</button>';
152-
html_extension+='<small class="form-text text-muted">Buy once and use unlimited mp3 file downloads forever</small>';
150+
html_extension+='<label for="unlockallmp3"><i class="fas fa-shopping-cart"></i> '+cr.l('buy_all_mp3','Buy functionality')+'</label>';
151+
html_extension+='<button class="btn btn-dark m-1" onclick="m.show_pay_unlock_all_mp3();return false"><i class="fas fa-unlock-alt"></i> '+cr.l('buy_all_mp3_text','Unlock Mp3 music download function')+'</button>';
152+
html_extension+='<small class="form-text text-muted">'+cr.l('buy_all_mp3_tip','Buy once and use unlimited mp3 file downloads forever')+'</small>';
153153
html_extension+='</div>';
154154
}
155155

@@ -218,7 +218,7 @@ class Music{
218218
<div class="col-6 col-sm-4 col-md-2 col-lg-2 col-xl-2 mb-1 p-1">
219219
<div role="button" class="song-item">
220220
<img src="images/${file_avatar}" alt="Avatar" class="song-avatar">
221-
<div class="btnplay btn-extension" title="Play Song"><i class="fas fa-play-circle"></i></div>
221+
<div class="btnplay btn-extension" title="${cr.l("play_song","Play Song")}"><i class="fas fa-play-circle"></i></div>
222222
<div class="song-title">${name}</div>
223223
<div class="song-artist">${tip}</div>
224224
</div>

js/search.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
class Search{
22
show(){
33
m.act_menu('m-search');
4-
m.sub_title("Search "+m.key_search+"...");
4+
m.sub_title(cr.l('search_result',"Search Results")+" "+m.key_search+"...");
55
m.clear();
66
$.each(m.song.list_song,function(index,song){
77
if(song.name.toLowerCase().indexOf(m.key_search.toLowerCase())!==-1){

js/songs.js

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ class Songs {
9797
songItemEmp(song) {
9898
var songItemEmp = m.box_item(this.file_avatar_song,song.name,song.artist);
9999
var songItem=$(songItemEmp).find(".song-item");
100-
var btn_info = $('<div class="btninfo btn-extension" title="Info"><i class="fas fa-info-circle"></i></div>');
100+
var btn_info = $('<div class="btninfo btn-extension" title="'+cr.l('info','Info')+'"><i class="fas fa-info-circle"></i></div>');
101101

102102
$(btn_info).click(() => {
103103
m.song.showInfoByData(song);
@@ -106,7 +106,7 @@ class Songs {
106106
$(songItem).append(btn_info);
107107

108108
if (song.lyrics != null && song.lyrics != "") {
109-
var btnlyrics = $('<div class="btnlyrics btn-extension" title="Lyrics"><i class="fas fa-font"></i></div>');
109+
var btnlyrics = $('<div class="btnlyrics btn-extension" title="'+cr.l('lyrics','Lyrics')+'"><i class="fas fa-font"></i></div>');
110110
$(btnlyrics).click(() => {
111111
m.song.showlyrics(song);
112112
return false;
@@ -115,25 +115,25 @@ class Songs {
115115
}
116116

117117
if (song.link_ytb != null) {
118-
var btn_video = $('<div class="btnvideo btn-extension" title="Watch video"><i class="fab fa-youtube"></i></div>');
118+
var btn_video = $('<div class="btnvideo btn-extension" title="'+cr.l('watch_video','Watch video')+'"><i class="fab fa-youtube"></i></div>');
119119
$(btn_video).click(() => {
120120
m.song.showVideo(song);
121121
return false;
122122
});
123123
$(songItem).append(btn_video);
124124
}
125125

126-
var btn_download = $('<div class="btndownload btn-extension" title="Download song by file mp3"><i class="fas fa-arrow-alt-circle-down"></i></div>');
126+
var btn_download = $('<div class="btndownload btn-extension" title="'+cr.l('download_mp3','Download song by file mp3')+'"><i class="fas fa-arrow-alt-circle-down"></i></div>');
127127
$(btn_download).click(() => {
128128
if(m.unlock_all_mp3==false)
129-
cr.show_pay(song.name,'Pay to download and use mp3 files for use on your other devices!','2.00',song.mp3,'link');
129+
cr.show_pay(song.name,cr.l('pay_song_tip','Pay to download and use mp3 files for use on your other devices!'),'2.00',song.mp3,'link');
130130
else
131131
window.open(song.mp3, '_blank').focus();
132132
return false;
133133
});
134134
$(songItem).append(btn_download);
135135

136-
var btn_add_playlist=$('<div class="btnAddPlaylist btn-extension" title="Add this song to a playlist"><i class="fas fa-plus-circle"></i></div>');
136+
var btn_add_playlist=$('<div class="btnAddPlaylist btn-extension" title="'+cr.l('add_playlist','Add this song to a playlist')+'"><i class="fas fa-plus-circle"></i></div>');
137137
$(btn_add_playlist).click(()=>{
138138
cr_player.add_song(song.mp3, song.name, song.artist);
139139
return false;
@@ -222,15 +222,15 @@ class Songs {
222222
}
223223

224224
menuSubInfoBox(data) {
225-
var btn_play= $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="Play this song"><i class="fas fa-play"></i></button>');
225+
var btn_play= $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="'+cr.l('play_song','Play this song')+'"><i class="fas fa-play"></i></button>');
226226
$(btn_play).click(()=>{
227227
cr_player.play(data.mp3, data.name, data.artist);
228228
$(this).tooltip('hide');
229229
Swal.close();
230230
});
231231
$("#all_btn_dock").append(btn_play);
232232

233-
var btn_add_playlist= $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="Add this song to a playlist"><i class="fas fa-plus-circle"></i></button>');
233+
var btn_add_playlist= $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="'+cr.l('add_playlist','Add this song to a playlist')+'"><i class="fas fa-plus-circle"></i></button>');
234234
$(btn_add_playlist).click(()=>{
235235
cr_player.add_song(data.mp3, data.name, data.artist);
236236
$(this).tooltip('hide');
@@ -239,7 +239,7 @@ class Songs {
239239
$("#all_btn_dock").append(btn_add_playlist);
240240

241241
if (data.lyrics != null) {
242-
var btn_lyrics = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "lyrics" ? "active" : "lyrics") + ' m-1 animate__animated animate__bounceIn" title="Lyrics"><i class="fas fa-font"></i></button>');
242+
var btn_lyrics = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "lyrics" ? "active" : "lyrics") + ' m-1 animate__animated animate__bounceIn" title="'+cr.l('lyrics','Lyrics')+'"><i class="fas fa-font"></i></button>');
243243
$(btn_lyrics).click(function () {
244244
m.song.showlyrics(data);
245245
$(this).tooltip('hide');
@@ -248,30 +248,30 @@ class Songs {
248248
}
249249

250250
if (data.link_ytb != null) {
251-
var btn_ytb = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "video" ? "active" : "lyrics") + ' m-1 animate__animated animate__bounceIn" title="Watch Video"><i class="fab fa-youtube"></i></button>');
251+
var btn_ytb = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "video" ? "active" : "video") + ' m-1 animate__animated animate__bounceIn" title="'+cr.l('watch_video','Watch Video')+'"><i class="fab fa-youtube"></i></button>');
252252
$(btn_ytb).click(function () {
253253
m.song.showVideo(data);
254254
$(this).tooltip('hide');
255255
});
256256
$("#all_btn_dock").append(btn_ytb);
257257
}
258258

259-
var btn_info = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "info" ? "active" : "info") + ' m-1 animate__animated animate__bounceIn" title="Info Song"><i class="fas fa-info-circle"></i></button>');
259+
var btn_info = $('<button class="btn btn-sm btn-c btn-msg ' + (m.song.box_info_menu_cur === "info" ? "active" : "info") + ' m-1 animate__animated animate__bounceIn" title="'+cr.l('info','Info')+'"><i class="fas fa-info-circle"></i></button>');
260260
$(btn_info).click(function () {
261261
m.song.showInfoByData(data);
262262
$(this).tooltip('hide');
263263
});
264264
$("#all_btn_dock").append(btn_info);
265265

266-
var btn_share = $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="Share"><i class="fas fa-share-alt"></i></button>');
266+
var btn_share = $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="'+cr.l('share',"Share")+'"><i class="fas fa-share-alt"></i></button>');
267267
$(btn_share).click(function () {
268268
var link_share=cr.site_url+"?song="+data.name;
269269
$(this).tooltip('hide');
270270
cr.show_share(link_share,data.name);
271271
});
272272
$("#all_btn_dock").append(btn_share);
273273

274-
var btn_download = $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="Buy Mp3 File"><i class="fas fa-arrow-alt-circle-down"></i></button>');
274+
var btn_download = $('<button class="btn btn-sm btn-c btn-msg m-1 animate__animated animate__bounceIn" title="'+cr.l("buy_song","Buy Mp3 File")+'"><i class="fas fa-arrow-alt-circle-down"></i></button>');
275275
$(btn_download).click(function () {
276276
$(this).tooltip('hide');
277277
cr.show_pay(data.name);
@@ -403,7 +403,7 @@ class Songs {
403403
html = '<tr role="button" class="w-100">';
404404
html += '<td style="width:5%"><i class="fas fa-music"></i></td>';
405405
html += '<td style="width:80%">' + s.name + '</td>';
406-
html += '<td style="width:5%"><button class="btn btn-sm btn-dark btn-box animate__animated animate__bounceIn"><i class="fas fa-play" title="Play One"></i></button></td>';
406+
html += '<td style="width:5%"><button class="btn btn-sm btn-dark btn-box animate__animated animate__bounceIn"><i class="fas fa-play" title="'+cr.l('play_song','Play One')+'"></i></button></td>';
407407
html += '<td class="col_1" style="width:5%"></td>';
408408
html += '<td class="col_2" style="width:5%"></td>';
409409
html += '</tr>';
@@ -413,7 +413,7 @@ class Songs {
413413
Swal.close();
414414
});
415415

416-
var btn_add_song = $('<button class="btn btn-sm btn-dark btn-box animate__animated animate__bounceIn"><i class="fas fa-plus-circle" title="Add song to playlist"></i></button>');
416+
var btn_add_song = $('<button class="btn btn-sm btn-dark btn-box animate__animated animate__bounceIn"><i class="fas fa-plus-circle" title="'+cr.l('add_playlist','Add song to playlist')+'"></i></button>');
417417
$(btn_add_song).click(function () {
418418
cr_player.add_song(s.mp3, s.name, s.artist);
419419
return false;

0 commit comments

Comments
 (0)