diff --git a/src/UI/UIDesktop.js b/src/UI/UIDesktop.js index be26556e..92d3bf82 100644 --- a/src/UI/UIDesktop.js +++ b/src/UI/UIDesktop.js @@ -41,9 +41,9 @@ async function UIDesktop(options){ let h = ''; // connect socket. - window.socket = io(gui_origin + '/', { + window.socket = io(window.gui_origin + '/', { query: { - auth_token: auth_token + auth_token: window.auth_token } }); @@ -83,7 +83,7 @@ async function UIDesktop(options){ console.error('GUI Socket Error:', error); }); - socket.on('upload.progress', (msg) => { + window.socket.on('upload.progress', (msg) => { if(window.progress_tracker[msg.operation_id]){ window.progress_tracker[msg.operation_id].cloud_uploaded += msg.loaded_diff if(window.progress_tracker[msg.operation_id][msg.item_upload_id]){ @@ -92,7 +92,7 @@ async function UIDesktop(options){ } }); - socket.on('download.progress', (msg) => { + window.socket.on('download.progress', (msg) => { if(window.progress_tracker[msg.operation_id]){ if(window.progress_tracker[msg.operation_id][msg.item_upload_id]){ window.progress_tracker[msg.operation_id][msg.item_upload_id].downloaded = msg.loaded; @@ -101,30 +101,30 @@ async function UIDesktop(options){ } }); - socket.on('trash.is_empty', async (msg) => { - $(`.item[data-path="${html_encode(trash_path)}" i]`).find('.item-icon > img').attr('src', msg.is_empty ? window.icons['trash.svg'] : window.icons['trash-full.svg']); - $(`.window[data-path="${html_encode(trash_path)}" i]`).find('.window-head-icon').attr('src', msg.is_empty ? window.icons['trash.svg'] : window.icons['trash-full.svg']); + window.socket.on('trash.is_empty', async (msg) => { + $(`.item[data-path="${html_encode(window.trash_path)}" i]`).find('.item-icon > img').attr('src', msg.is_empty ? window.icons['trash.svg'] : window.icons['trash-full.svg']); + $(`.window[data-path="${html_encode(window.trash_path)}" i]`).find('.window-head-icon').attr('src', msg.is_empty ? window.icons['trash.svg'] : window.icons['trash-full.svg']); // empty trash windows if needed if(msg.is_empty) - $(`.window[data-path="${html_encode(trash_path)}" i]`).find('.item-container').empty(); + $(`.window[data-path="${html_encode(window.trash_path)}" i]`).find('.item-container').empty(); }) - socket.on('app.opened', async (app) => { + window.socket.on('app.opened', async (app) => { // don't update if this is the original client that initiated the action if(app.original_client_socket_id === window.socket.id) return; // add the app to the beginning of the array - launch_apps.recent.unshift(app); + window.launch_apps.recent.unshift(app); // dedupe the array by uuid, uid, and id - launch_apps.recent = _.uniqBy(launch_apps.recent, 'name'); + window.launch_apps.recent = _.uniqBy(window.launch_apps.recent, 'name'); // limit to 5 - launch_apps.recent = launch_apps.recent.slice(0, window.launch_recent_apps_count); + window.launch_apps.recent = window.launch_apps.recent.slice(0, window.launch_recent_apps_count); }) - socket.on('item.removed', async (item) => { + window.socket.on('item.removed', async (item) => { // don't update if this is the original client that initiated the action if(item.original_client_socket_id === window.socket.id) return; @@ -143,17 +143,17 @@ async function UIDesktop(options){ }); }) - socket.on('item.updated', async (item) => { + window.socket.on('item.updated', async (item) => { // Don't update if this is the original client that initiated the action if(item.original_client_socket_id === window.socket.id) return; // Update matching items // set new item name - $(`.item[data-uid='${html_encode(item.uid)}'] .item-name`).html(html_encode(truncate_filename(item.name, TRUNCATE_LENGTH)).replaceAll(' ', ' ')); + $(`.item[data-uid='${html_encode(item.uid)}'] .item-name`).html(html_encode(window.truncate_filename(item.name, window.TRUNCATE_LENGTH)).replaceAll(' ', ' ')); // Set new icon - const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await item_icon(item)).image); + const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await window.item_icon(item)).image); $(`.item[data-uid='${item.uid}']`).find('.item-icon-thumb').attr('src', new_icon); $(`.item[data-uid='${item.uid}']`).find('.item-icon-icon').attr('src', new_icon); @@ -189,21 +189,21 @@ async function UIDesktop(options){ // Update all exact-matching windows $(`.window-${item.uid}`).each(function(){ - update_window_path(this, new_path); + window.update_window_path(this, new_path); }) // Set new name for matching open windows $(`.window-${item.uid} .window-head-title`).text(item.name); // Re-sort all matching item containers $(`.item[data-uid='${item.uid}']`).parent('.item-container').each(function(){ - sort_items(this, $(this).closest('.item-container').attr('data-sort_by'), $(this).closest('.item-container').attr('data-sort_order')); + window.sort_items(this, $(this).closest('.item-container').attr('data-sort_by'), $(this).closest('.item-container').attr('data-sort_order')); }) }) - socket.on('item.moved', async (resp) => { + window.socket.on('item.moved', async (resp) => { let fsentry = resp; // Notify all apps that are watching this item - sendItemChangeEventToWatchingApps(fsentry.uid, { + window.sendItemChangeEventToWatchingApps(fsentry.uid, { event: 'moved', uid: fsentry.uid, name: fsentry.name, @@ -216,9 +216,6 @@ async function UIDesktop(options){ let dest_path = path.dirname(fsentry.path); let metadata = fsentry.metadata; - // path must use the real name from DB - fsentry.path = fsentry.path; - // update all shortcut_to_path $(`.item[data-shortcut_to_path="${html_encode(resp.old_path)}" i]`).attr(`data-shortcut_to_path`, html_encode(fsentry.path)); @@ -230,13 +227,13 @@ async function UIDesktop(options){ $(this).removeItems(); // update parent windows' item counts $(parent_windows).each(function(index){ - update_explorer_footer_item_count(this); - update_explorer_footer_selected_items_count(this) + window.update_explorer_footer_item_count(this); + window.update_explorer_footer_selected_items_count(this) }); }) // if trashing, close windows of trashed items and its descendants - if(dest_path === trash_path){ + if(dest_path === window.trash_path){ $(`.window[data-path="${html_encode(resp.old_path)}" i]`).close(); // todo this has to be case-insensitive but the `i` selector doesn't work on ^= $(`.window[data-path^="${html_encode(resp.old_path)}/"]`).close(); @@ -246,11 +243,11 @@ async function UIDesktop(options){ else{ // todo this has to be case-insensitive but the `i` selector doesn't work on ^= $(`.window[data-path^="${html_encode(resp.old_path)}/"], .window[data-path="${html_encode(resp.old_path)}" i]`).each(function(){ - update_window_path(this, $(this).attr('data-path').replace(resp.old_path, fsentry.path)); + window.update_window_path(this, $(this).attr('data-path').replace(resp.old_path, fsentry.path)); }) } - if(dest_path === trash_path){ + if(dest_path === window.trash_path){ $(`.item[data-uid="${fsentry.uid}"]`).find('.item-is-shared').fadeOut(300); // if trashing dir... @@ -277,14 +274,14 @@ async function UIDesktop(options){ immutable: fsentry.immutable, uid: fsentry.uid, path: fsentry.path, - icon: await item_icon(fsentry), - name: (dest_path === trash_path) ? metadata.original_name : fsentry.name, + icon: await window.item_icon(fsentry), + name: (dest_path === window.trash_path) ? metadata.original_name : fsentry.name, is_dir: fsentry.is_dir, size: fsentry.size, type: fsentry.type, modified: fsentry.modified, is_selected: false, - is_shared: (dest_path === trash_path) ? false : fsentry.is_shared, + is_shared: (dest_path === window.trash_path) ? false : fsentry.is_shared, is_shortcut: fsentry.is_shortcut, shortcut_to: fsentry.shortcut_to, shortcut_to_path: fsentry.shortcut_to_path, @@ -305,7 +302,7 @@ async function UIDesktop(options){ immutable: false, uid: dir.uid, path: dir.path, - icon: await item_icon(dir), + icon: await window.item_icon(dir), name: dir.name, size: dir.size, type: dir.type, @@ -316,34 +313,34 @@ async function UIDesktop(options){ has_website: false, }); } - sort_items(item_container, $(item_container).attr('data-sort_by'), $(item_container).attr('data-sort_order')); + window.sort_items(item_container, $(item_container).attr('data-sort_by'), $(item_container).attr('data-sort_order')); }); } //sort each container $(`.item-container[data-path='${html_encode(dest_path)}' i]`).each(function(){ - sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) + window.sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) }) }); - socket.on('user.email_confirmed', (msg) => { + window.socket.on('user.email_confirmed', (msg) => { // don't update if this is the original client that initiated the action if(msg.original_client_socket_id === window.socket.id) return; - refresh_user_data(window.auth_token); + window.refresh_user_data(window.auth_token); }); - socket.on('user.email_changed', (msg) => { + window.socket.on('user.email_changed', (msg) => { // don't update if this is the original client that initiated the action if(msg.original_client_socket_id === window.socket.id) return; - refresh_user_data(window.auth_token); + window.refresh_user_data(window.auth_token); }); - socket.on('item.renamed', async (item) => { + window.socket.on('item.renamed', async (item) => { // Notify all apps that are watching this item - sendItemChangeEventToWatchingApps(item.uid, { + window.sendItemChangeEventToWatchingApps(item.uid, { event: 'rename', uid: item.uid, // path: item.path, @@ -357,10 +354,10 @@ async function UIDesktop(options){ // Update matching items // Set new item name - $(`.item[data-uid='${html_encode(item.uid)}'] .item-name`).html(html_encode(truncate_filename(item.name, TRUNCATE_LENGTH)).replaceAll(' ', ' ')); + $(`.item[data-uid='${html_encode(item.uid)}'] .item-name`).html(html_encode(window.truncate_filename(item.name, window.TRUNCATE_LENGTH)).replaceAll(' ', ' ')); // Set new icon - const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await item_icon(item)).image); + const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await window.item_icon(item)).image); $(`.item[data-uid='${item.uid}']`).find('.item-icon-icon').attr('src', new_icon); // Set new data-name @@ -395,24 +392,24 @@ async function UIDesktop(options){ // Update all exact-matching windows $(`.window-${item.uid}`).each(function(){ - update_window_path(this, new_path); + window.update_window_path(this, new_path); }) // Set new name for matching open windows $(`.window-${item.uid} .window-head-title`).text(item.name); // Re-sort all matching item containers $(`.item[data-uid='${item.uid}']`).parent('.item-container').each(function(){ - sort_items(this, $(this).closest('.item-container').attr('data-sort_by'), $(this).closest('.item-container').attr('data-sort_order')); + window.sort_items(this, $(this).closest('.item-container').attr('data-sort_by'), $(this).closest('.item-container').attr('data-sort_order')); }) }); - socket.on('item.added', async (item) => { + window.socket.on('item.added', async (item) => { // if item is empty, don't proceed if(_.isEmpty(item)) return; // Notify all apps that are watching this item - sendItemChangeEventToWatchingApps(item.uid, { + window.sendItemChangeEventToWatchingApps(item.uid, { event: 'write', uid: item.uid, // path: item.path, @@ -437,12 +434,12 @@ async function UIDesktop(options){ 'data-type': item.type, }) // set new icon - const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await item_icon(item)).image); + const new_icon = (item.is_dir ? window.icons['folder.svg'] : (await window.item_icon(item)).image); $(`.item[data-uid="${item.overwritten_uid}"]`).find('.item-icon > img').attr('src', new_icon); //sort each window $(`.item-container[data-path='${html_encode(item.dirpath)}' i]`).each(function(){ - sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) + window.sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) }) } else{ @@ -452,7 +449,7 @@ async function UIDesktop(options){ immutable: item.immutable, associated_app_name: item.associated_app?.name, path: item.path, - icon: await item_icon(item), + icon: await window.item_icon(item), name: item.name, size: item.size, type: item.type, @@ -460,14 +457,13 @@ async function UIDesktop(options){ is_dir: item.is_dir, is_shared: item.is_shared, is_shortcut: item.is_shortcut, - associated_app_name: item.associated_app?.name, shortcut_to: item.shortcut_to, shortcut_to_path: item.shortcut_to_path, }); //sort each window $(`.item-container[data-path='${html_encode(item.dirpath)}' i]`).each(function(){ - sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) + window.sort_items(this, $(this).attr('data-sort_by'), $(this).attr('data-sort_order')) }) } }); @@ -488,12 +484,12 @@ async function UIDesktop(options){ data-uid="${options.desktop_fsentry.uid}" data-sort_by="${!options.desktop_fsentry.sort_by ? 'name' : options.desktop_fsentry.sort_by}" data-sort_order="${!options.desktop_fsentry.sort_order ? 'asc' : options.desktop_fsentry.sort_order}" - data-path="${html_encode(desktop_path)}" + data-path="${html_encode(window.desktop_path)}" >`; h += ``; // Get window sidebar width - getItem({ + window.getItem({ key: "window_sidebar_width", success: async function(res){ let value = parseInt(res.value); @@ -505,7 +501,7 @@ async function UIDesktop(options){ }) // Remove `?ref=...` from navbar URL - if(url_query_params.has('ref')){ + if(window.url_query_params.has('ref')){ window.history.pushState(null, document.title, '/'); } @@ -522,7 +518,7 @@ async function UIDesktop(options){ user_preferences[default_app_keys[key].substring(17)] = await puter.kv.get(default_app_keys[key]); } - update_user_preferences(user_preferences); + window.update_user_preferences(user_preferences); }); // Append to
@@ -557,7 +553,7 @@ async function UIDesktop(options){ return false; // recursively create directories and upload files if(e.dataTransfer?.items?.length>0){ - upload_items(e.dataTransfer.items, desktop_path); + window.upload_items(e.dataTransfer.items, window.desktop_path); } e.stopPropagation(); @@ -574,7 +570,7 @@ async function UIDesktop(options){ tolerance: "intersect", drop: function( event, ui ) { // Check if item was actually dropped on desktop and not a window - if(mouseover_window !== undefined) + if(window.mouseover_window !== undefined) return; // Can't drop anything but UIItems on desktop @@ -582,7 +578,7 @@ async function UIDesktop(options){ return; // Don't move an item to its current directory - if( path.dirname($(ui.draggable).attr('data-path')) === desktop_path && !event.ctrlKey) + if( path.dirname($(ui.draggable).attr('data-path')) === window.desktop_path && !event.ctrlKey) return; // If ctrl is pressed and source is Trashed, cancel whole operation @@ -610,11 +606,11 @@ async function UIDesktop(options){ if(path.dirname($(ui.draggable).attr('data-path')) === window.trash_path) return; - copy_items(items_to_move, desktop_path) + window.copy_items(items_to_move, window.desktop_path) } // otherwise, move items else{ - move_items(items_to_move, desktop_path); + window.move_items(items_to_move, window.desktop_path); } } }); @@ -646,16 +642,16 @@ async function UIDesktop(options){ items: [ { html: i18n('auto_arrange'), - icon: is_auto_arrange_enabled ? '✓' : '', + icon: window.is_auto_arrange_enabled ? '✓' : '', onClick: async function(){ - is_auto_arrange_enabled = !is_auto_arrange_enabled; - store_auto_arrange_preference(is_auto_arrange_enabled); - if(is_auto_arrange_enabled){ - sort_items(el_desktop, $(el_desktop).attr('data-sort_by'), $(el_desktop).attr('data-sort_order')); - set_sort_by(options.desktop_fsentry.uid, $(el_desktop).attr('data-sort_by'), $(el_desktop).attr('data-sort_order')) - clear_desktop_item_positions(el_desktop); + window.is_auto_arrange_enabled = !window.is_auto_arrange_enabled; + window.store_auto_arrange_preference(window.is_auto_arrange_enabled); + if(window.is_auto_arrange_enabled){ + window.sort_items(el_desktop, $(el_desktop).attr('data-sort_by'), $(el_desktop).attr('data-sort_order')); + window.set_sort_by(options.desktop_fsentry.uid, $(el_desktop).attr('data-sort_by'), $(el_desktop).attr('data-sort_order')) + window.clear_desktop_item_positions(el_desktop); }else{ - set_desktop_item_positions(el_desktop) + window.set_desktop_item_positions(el_desktop) } } }, @@ -665,38 +661,38 @@ async function UIDesktop(options){ '-', { html: i18n('name'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_by') === 'name' ? '✓' : '', onClick: async function(){ - sort_items(el_desktop, 'name', $(el_desktop).attr('data-sort_order')); - set_sort_by(options.desktop_fsentry.uid, 'name', $(el_desktop).attr('data-sort_order')) + window.sort_items(el_desktop, 'name', $(el_desktop).attr('data-sort_order')); + window.set_sort_by(options.desktop_fsentry.uid, 'name', $(el_desktop).attr('data-sort_order')) } }, { html: i18n('date_modified'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_by') === 'modified' ? '✓' : '', onClick: async function(){ - sort_items(el_desktop, 'modified', $(el_desktop).attr('data-sort_order')); - set_sort_by(options.desktop_fsentry.uid, 'modified', $(el_desktop).attr('data-sort_order')) + window.sort_items(el_desktop, 'modified', $(el_desktop).attr('data-sort_order')); + window.set_sort_by(options.desktop_fsentry.uid, 'modified', $(el_desktop).attr('data-sort_order')) } }, { html: i18n('type'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_by') === 'type' ? '✓' : '', onClick: async function(){ - sort_items(el_desktop, 'type', $(el_desktop).attr('data-sort_order')); - set_sort_by(options.desktop_fsentry.uid, 'type', $(el_desktop).attr('data-sort_order')) + window.sort_items(el_desktop, 'type', $(el_desktop).attr('data-sort_order')); + window.set_sort_by(options.desktop_fsentry.uid, 'type', $(el_desktop).attr('data-sort_order')) } }, { html: i18n('size'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_by') === 'size' ? '✓' : '', onClick: async function(){ - sort_items(el_desktop, 'size', $(el_desktop).attr('data-sort_order')); - set_sort_by(options.desktop_fsentry.uid, 'size', $(el_desktop).attr('data-sort_order')) + window.sort_items(el_desktop, 'size', $(el_desktop).attr('data-sort_order')); + window.set_sort_by(options.desktop_fsentry.uid, 'size', $(el_desktop).attr('data-sort_order')) } }, // ------------------------------------------- @@ -705,22 +701,22 @@ async function UIDesktop(options){ '-', { html: i18n('ascending'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_order') === 'asc' ? '✓' : '', onClick: async function(){ const sort_by = $(el_desktop).attr('data-sort_by') - sort_items(el_desktop, sort_by, 'asc'); - set_sort_by(options.desktop_fsentry.uid, sort_by, 'asc') + window.sort_items(el_desktop, sort_by, 'asc'); + window.set_sort_by(options.desktop_fsentry.uid, sort_by, 'asc') } }, { html: i18n('descending'), - disabled: !is_auto_arrange_enabled, + disabled: !window.is_auto_arrange_enabled, icon: $(el_desktop).attr('data-sort_order') === 'desc' ? '✓' : '', onClick: async function(){ const sort_by = $(el_desktop).attr('data-sort_by') - sort_items(el_desktop, sort_by, 'desc'); - set_sort_by(options.desktop_fsentry.uid, sort_by, 'desc') + window.sort_items(el_desktop, sort_by, 'desc'); + window.set_sort_by(options.desktop_fsentry.uid, sort_by, 'desc') } }, ] @@ -754,7 +750,7 @@ async function UIDesktop(options){ // ------------------------------------------- // New File // ------------------------------------------- - new_context_menu_item(desktop_path, el_desktop), + new_context_menu_item(window.desktop_path, el_desktop), // ------------------------------------------- // - // ------------------------------------------- @@ -764,12 +760,12 @@ async function UIDesktop(options){ // ------------------------------------------- { html: i18n('paste'), - disabled: clipboard.length > 0 ? false : true, + disabled: window.clipboard.length > 0 ? false : true, onClick: function(){ - if(clipboard_op === 'copy') - copy_clipboard_items(desktop_path, el_desktop); - else if(clipboard_op === 'move') - move_clipboard_items(el_desktop) + if(window.clipboard_op === 'copy') + window.copy_clipboard_items(window.desktop_path, el_desktop); + else if(window.clipboard_op === 'move') + window.move_clipboard_items(el_desktop) } }, // ------------------------------------------- @@ -777,9 +773,9 @@ async function UIDesktop(options){ // ------------------------------------------- { html: i18n('undo'), - disabled: actions_history.length > 0 ? false : true, + disabled: window.actions_history.length > 0 ? false : true, onClick: function(){ - undo_last_action(); + window.undo_last_action(); } }, // ------------------------------------------- @@ -788,7 +784,7 @@ async function UIDesktop(options){ { html: i18n('upload_here'), onClick: function(){ - init_upload_using_dialog(el_desktop); + window.init_upload_using_dialog(el_desktop); } }, // ------------------------------------------- @@ -815,7 +811,7 @@ async function UIDesktop(options){ // we don't need to get the desktop items if we're in embedded or fullpage mode // because the items aren't visible anyway and we don't need to waste bandwidth/server resources //------------------------------------------- - if(!is_embedded && !window.is_fullpage_mode){ + if(!window.is_embedded && !window.is_fullpage_mode){ refresh_item_container(el_desktop, {fadeInItems: true}) } @@ -908,7 +904,7 @@ async function UIDesktop(options){ } // refer - if(user.referral_code){ + if(window.user.referral_code){ ht += ``; } @@ -919,7 +915,7 @@ async function UIDesktop(options){ } // qr code button -- only show if not embedded - if(!is_embedded) + if(!window.is_embedded) ht += ``; // user options menu @@ -937,17 +933,17 @@ async function UIDesktop(options){ // --------------------------------------------- // Run apps from insta-login URL // --------------------------------------------- - if(url_query_params.has('app')){ - let url_app_name = url_query_params.get('app'); + if(window.url_query_params.has('app')){ + let url_app_name = window.url_query_params.get('app'); if(url_app_name === 'explorer'){ - let predefined_path = home_path; - if(url_query_params.has('path')) - predefined_path =url_query_params.get('path') + let predefined_path = window.home_path; + if(window.url_query_params.has('path')) + predefined_path =window.url_query_params.get('path') // launch explorer UIWindow({ path: predefined_path, title: path.basename(predefined_path), - icon: await item_icon({is_dir: true, path: predefined_path}), + icon: await window.item_icon({is_dir: true, path: predefined_path}), // todo // uid: $(el_item).attr('data-uid'), is_dir: true, @@ -963,11 +959,11 @@ async function UIDesktop(options){ else if(window.app_launched_from_url){ let qparams = new URLSearchParams(window.location.search); if(!qparams.has('c')){ - launch_app({ - name: app_launched_from_url, + window.launch_app({ + name: window.app_launched_from_url, readURL: qparams.get('readURL'), maximized: qparams.get('maximized'), - params: app_query_params ?? [], + params: window.app_query_params ?? [], is_fullpage: window.is_fullpage_mode, window_options: { stay_on_top: false, @@ -1014,21 +1010,21 @@ async function UIDesktop(options){ var x1=month + "/" + dt + "/" + x.getFullYear(); x1 = x1 + " - " + hours + ":" + minutes + ":" + seconds + " " + ampm; $('#clock').html(x1); - $('#clock').css('line-height', taskbar_height + 'px'); + $('#clock').css('line-height', window.taskbar_height + 'px'); } setInterval(display_ct, 1000); // show referral notice window - if(window.show_referral_notice && !user.email_confirmed){ - getItem({ + if(window.show_referral_notice && !window.user.email_confirmed){ + window.getItem({ key: "shown_referral_notice", success: async function(res){ if(!res){ setTimeout(() => { UIWindowClaimReferral(); }, 1000); - setItem({ + window.setItem({ key: "shown_referral_notice", value: true, }) @@ -1122,13 +1118,13 @@ $(document).on('click', '.user-options-menu-btn', async function(e){ items.push( { html: l_user.username, - icon: l_user.username === user.username ? '✓' : '', + icon: l_user.username === window.user.username ? '✓' : '', onClick: async function(val){ // don't reload everything if clicked on already-logged-in user - if(l_user.username === user.username) + if(l_user.username === window.user.username) return; // update auth data - update_auth_data(l_user.auth_token, l_user); + window.update_auth_data(l_user.auth_token, l_user); // refresh location.reload(); } @@ -1167,7 +1163,7 @@ $(document).on('click', '.user-options-menu-btn', async function(e){ // ------------------------------------------- // Load available languages // ------------------------------------------- - const supportedLanguagesItems = listSupportedLanguages().map(lang => { + const supportedLanguagesItems = window.listSupportedLanguages().map(lang => { return { html: lang.name, icon: window.locale === lang.code ? '✓' : '', @@ -1246,11 +1242,11 @@ $(document).on('click', '.user-options-menu-btn', async function(e){ ] }) if(alert_resp === 'close_and_log_out') - logout(); + window.logout(); } // no open windows else - logout(); + window.logout(); } }, ] @@ -1258,7 +1254,7 @@ $(document).on('click', '.user-options-menu-btn', async function(e){ }) $(document).on('click', '.fullscreen-btn', async function (e) { - if(!is_fullscreen()) { + if(!window.is_fullscreen()) { var elem = document.documentElement; if (elem.requestFullscreen) { elem.requestFullscreen(); @@ -1305,7 +1301,7 @@ $(document).on('click', '.refer-btn', async function(e){ }) $(document).on('click', '.start-app', async function(e){ - launch_app({ + window.launch_app({ name: $(this).attr('data-app-name') }) // close popovers @@ -1367,7 +1363,7 @@ $(document).on('focus', '.launch-search', function(e){ }) $(document).on('change keyup keypress keydown paste', '.launch-search', function(e){ - // search launch_apps.recommended for query + // search window.launch_apps.recommended for query const query = $(this).val().toLowerCase(); if(query === ''){ $('.launch-search-clear').hide(); @@ -1378,7 +1374,7 @@ $(document).on('change keyup keypress keydown paste', '.launch-search', function $('.launch-apps-recent').hide(); $('.start-section-heading').hide(); $('.launch-search-clear').show(); - launch_apps.recommended.forEach((app)=>{ + window.launch_apps.recommended.forEach((app)=>{ if(app.title.toLowerCase().includes(query.toLowerCase())){ $(`.start-app-card[data-name="${app.name}"]`).show(); }else{ @@ -1457,7 +1453,7 @@ window.update_taskbar = function(){ // update taskbar in the server-side $.ajax({ - url: api_origin + "/update-taskbar-items", + url: window.api_origin + "/update-taskbar-items", type: 'POST', data: JSON.stringify({ items: items, @@ -1465,7 +1461,7 @@ window.update_taskbar = function(){ async: true, contentType: "application/json", headers: { - "Authorization": "Bearer "+auth_token + "Authorization": "Bearer "+window.auth_token }, }) } @@ -1485,7 +1481,7 @@ window.enter_fullpage_mode = (el_window)=>{ $(el_window).css({ width: '100%', height: '100%', - top: toolbar_height + 'px', + top: window.toolbar_height + 'px', left: 0, 'border-radius': 0, }); @@ -1499,7 +1495,7 @@ window.exit_fullpage_mode = (el_window)=>{ refresh_item_container($('.desktop.item-container'), {fadeInItems: true}); $(el_window).removeAttr('data-is_fullpage'); if(el_window){ - reset_window_size_and_position(el_window) + window.reset_window_size_and_position(el_window) $(el_window).find('.window-head').show(); } @@ -1510,14 +1506,14 @@ window.exit_fullpage_mode = (el_window)=>{ $('.show-desktop-btn').hide(); // refresh desktop background - refresh_desktop_background(); + window.refresh_desktop_background(); } window.reset_window_size_and_position = (el_window)=>{ $(el_window).css({ width: 680, height: 380, - 'border-radius': window_border_radius, + 'border-radius': window.window_border_radius, top: 'calc(50% - 190px)', left: 'calc(50% - 340px)', });