Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 3e4b5e3ea2 | |||
| c4889ec160 | |||
| 3076f4b179 | |||
| 93fb338ce0 | |||
| 785a073bce |
+1
-1
@@ -69,7 +69,7 @@ add_executable(ezremote_client
|
||||
|
||||
add_self(ezremote_client)
|
||||
|
||||
add_pkg(ezremote_client ${CMAKE_SOURCE_DIR}/data "RMTC00001" "ezRemote Client" "01.29" 32 0)
|
||||
add_pkg(ezremote_client ${CMAKE_SOURCE_DIR}/data "RMTC00001" "ezRemote Client" "01.32" 32 0)
|
||||
|
||||
target_link_libraries(ezremote_client
|
||||
c
|
||||
|
||||
@@ -0,0 +1,166 @@
|
||||
STR_CONNECTION_SETTINGS=Tilkoblingsinnstillinger
|
||||
STR_SITE=Side
|
||||
STR_LOCAL=Lokal
|
||||
STR_REMOTE=Ekstern
|
||||
STR_MESSAGES=Meldinger
|
||||
STR_UPDATE_SOFTWARE=Oppdater programvare
|
||||
STR_CONNECT=Koble til
|
||||
STR_DISCONNECT=Koble fra
|
||||
STR_SEARCH=Søk
|
||||
STR_REFRESH=Oppdater
|
||||
STR_SERVER=Tjener
|
||||
STR_USERNAME=Brukernavn
|
||||
STR_PASSWORD=Passord
|
||||
STR_PORT=Port
|
||||
STR_PASV=Pasv
|
||||
STR_DIRECTORY=Mappe
|
||||
STR_FILTER=Filter
|
||||
STR_YES=Ja
|
||||
STR_NO=Nei
|
||||
STR_CANCEL=Avbryt
|
||||
STR_CONTINUE=Fortsett
|
||||
STR_CLOSE=Lukk
|
||||
STR_FOLDER=Mappe
|
||||
STR_FILE=Fil
|
||||
STR_TYPE=Type
|
||||
STR_NAME=Navn
|
||||
STR_SIZE=Størrelse
|
||||
STR_DATE=Dato
|
||||
STR_NEW_FOLDER=Ny mappe
|
||||
STR_RENAME=Gi nytt navn
|
||||
STR_DELETE=Slett
|
||||
STR_UPLOAD=Last opp
|
||||
STR_DOWNLOAD=Last ned
|
||||
STR_SELECT_ALL=Marker alle
|
||||
STR_CLEAR_ALL=Fjern alle
|
||||
STR_UPLOADING=Laster opp
|
||||
STR_DOWNLOADING=Laster ned
|
||||
STR_OVERWRITE=Skriv over
|
||||
STR_DONT_OVERWRITE=Ikke skriv over
|
||||
STR_ASK_FOR_CONFIRM=Spør om bekreftelse
|
||||
STR_DONT_ASK_CONFIRM=Ikke spør om bekreftelse
|
||||
STR_ALLWAYS_USE_OPTION=Bruk alltid dette valget og ikke spør igjen
|
||||
STR_ACTIONS=Handlinger
|
||||
STR_CONFIRM=Bekreft
|
||||
STR_OVERWRITE_OPTIONS=Overskriv innstillinger
|
||||
STR_PROPERTIES=Egenskaper
|
||||
STR_PROGRESS=Framdrift
|
||||
STR_UPDATES=Oppdateringer
|
||||
STR_DEL_CONFIRM_MSG=Er du sikker på at du vil slette filen(e)/mappen(e)?
|
||||
STR_CANCEL_ACTION_MSG=Avbryter. Venter på at siste handling skal fullføres
|
||||
STR_FAIL_UPLOAD_MSG=Opplasting av fil mislykkes
|
||||
STR_FAIL_DOWNLOAD_MSG=Nedlasting av fil mislykkes
|
||||
STR_FAIL_READ_LOCAL_DIR_MSG=Lesing av mappe mislykkes, eller mappen finnes ikke.
|
||||
STR_CONNECTION_CLOSE_ERR_MSG=426 Tilkobling Lukket.
|
||||
STR_REMOTE_TERM_CONN_MSG=426 Ekstern Tjener har lukket tilkoblingen.
|
||||
STR_FAIL_LOGIN_MSG=300 Innlogging Mislykkes. Vennligst sjekk ditt brukernavn og passord.
|
||||
STR_FAIL_TIMEOUT_MSG=426 Mislykkes. Tilkoblingen timet ut.
|
||||
STR_FAIL_DEL_DIR_MSG=Sletting av mappe mislykkes
|
||||
STR_DELETING=Sletter
|
||||
STR_FAIL_DEL_FILE_MSG=Sletting av fil mislykkes
|
||||
STR_DELETED=Slettet
|
||||
STR_LINK=Lenke
|
||||
STR_SHARE=Del
|
||||
STR_FAILED=310 Mislykket
|
||||
STR_FAIL_CREATE_LOCAL_FILE_MSG=310 Oppretting av lokal fil mislykkes
|
||||
STR_INSTALL=Installér
|
||||
STR_INSTALLING=Installerer
|
||||
STR_INSTALL_SUCCESS=Vellykket
|
||||
STR_INSTALL_FAILED=Mislykket
|
||||
STR_INSTALL_SKIPPED=Hoppet over
|
||||
STR_CHECK_HTTP_MSG=Sjekker tilkobling til ekstern HTTP-tjener
|
||||
STR_FAILED_HTTP_CHECK=Mislykket tilkobling til HTTP-tjener
|
||||
STR_REMOTE_NOT_HTTP=Ekstern tjener er ikke en HTTP-tjener
|
||||
STR_INSTALL_FROM_DATA_MSG=Pakke finnes ikke i mappene /data eller /mnt/usbX
|
||||
STR_ALREADY_INSTALLED_MSG=Pakken er allerede installert
|
||||
STR_INSTALL_FROM_URL=Installer fra URL
|
||||
STR_CANNOT_READ_PKG_HDR_MSG=Kunne ikke lese pakkens header
|
||||
STR_FAVORITE_URLS=Favoritt-URLer
|
||||
STR_SLOT=Spor
|
||||
STR_EDIT=Redigér
|
||||
STR_ONETIME_URL=Engangs-URL
|
||||
STR_NOT_A_VALID_PACKAGE=Ikke en gyldig pakke
|
||||
STR_WAIT_FOR_INSTALL_MSG=Venter på at pakke skal bli ferdig å installere
|
||||
STR_FAIL_INSTALL_TMP_PKG_MSG=Installasjon av PKG-fil mislykkes. Vennligst slett den midlertidlige PKG-filen manuelt
|
||||
STR_FAIL_TO_OBTAIN_GG_DL_MSG=Kunne ikke hente nedlastings-URL
|
||||
STR_AUTO_DELETE_TMP_PKG=Automatisk slett midlertidig nedlastet PKG-fil etter installasjon
|
||||
STR_PROTOCOL_NOT_SUPPORTED=Protokollen er ikke støttet
|
||||
STR_COULD_NOT_RESOLVE_HOST=Kunne ikke koble til tjenernavnet
|
||||
STR_EXTRACT=Pakk ut
|
||||
STR_EXTRACTING=Pakker ut
|
||||
STR_FAILED_TO_EXTRACT=Utpakking mislykkes
|
||||
STR_EXTRACT_LOCATION=Utpakkingsbane
|
||||
STR_COMPRESS=Komprimér
|
||||
STR_ZIP_FILE_PATH=ZIP-filnavn
|
||||
STR_COMPRESSING=Komprimerer
|
||||
STR_ERROR_CREATE_ZIP=Oppretting av ZIP mislykket
|
||||
STR_UNSUPPORTED_FILE_FORMAT=Arkivformatet er ikke støttet
|
||||
STR_CUT=Klipp ut
|
||||
STR_COPY=Kopiér
|
||||
STR_PASTE=Lim inn
|
||||
STR_MOVING=Flytter
|
||||
STR_COPYING=Kopierer
|
||||
STR_FAIL_MOVE_MSG=Flytting av fil mislykkes
|
||||
STR_FAIL_COPY_MSG=Kopiering av fil mislykkes
|
||||
STR_CANT_MOVE_TO_SUBDIR_MSG=Kan ikke flytte overordnet mappe til undermappe
|
||||
STR_CANT_COPY_TO_SUBDIR_MSG=Kan ikke kopiere overordnet mappe til undermappe
|
||||
STR_UNSUPPORTED_OPERATION_MSG=Handling ikke støttet
|
||||
STR_HTTP_PORT=HTTP-port
|
||||
STR_REINSTALL_CONFIRM_MSG=Innholdet er allerede installert. Vil du fortsette installasjonen
|
||||
STR_REMOTE_NOT_SUPPORT_MSG=Fjerninstallasjon av pakker er ikke støttet for beskyttede tjenere.
|
||||
STR_CANNOT_CONNECT_REMOTE_MSG=Ekstern HTTP-tjener kan ikke nås.
|
||||
STR_DOWNLOAD_INSTALL_MSG=Fjerninstallasjon er ikke mulig. Vil du laste ned pakken og installere den istedet?
|
||||
STR_CHECKING_REMOTE_SERVER_MSG=Sjekker tjener for fjerninstallasjon av pakke.
|
||||
STR_ENABLE_RPI=FIP
|
||||
STR_ENABLE_RPI_FTP_SMB_MSG=Dette valget skrur på fjerninstallasjon av pakke via innebygd Web-tjenerproxy.
|
||||
STR_ENABLE_RPI_WEBDAV_MSG=Dette valget skrur på fjerninstallasjon av pakke via innebygd Web-tjenerproxy.
|
||||
STR_FILES=Filer
|
||||
STR_EDITOR=Redigeringsprogram
|
||||
STR_SAVE=Lagre
|
||||
STR_MAX_EDIT_FILE_SIZE_MSG=Kan ikke redigere filer større enn
|
||||
STR_DELETE_LINE=Slett markert linje
|
||||
STR_INSERT_LINE=Sett inn under markert linje
|
||||
STR_MODIFIED=Endret
|
||||
STR_FAIL_GET_TOKEN_MSG=Kunne ikke hente en tilgangstoken fra
|
||||
STR_GET_TOKEN_SUCCESS_MSG=Innlogging vellykket. Du kan lukke nettleseren og gå tilbake til applikasjonen
|
||||
STR_PERM_DRIVE=Se, endre, opprette og slette dine Google Drive-filer
|
||||
STR_PERM_DRIVE_APPDATA=Se, opprette og slette dens egen konfigurasjonsdata i din Google Drive
|
||||
STR_PERM_DRIVE_FILE=Se, endre, opprette og slette kun de spesifikke Google Drive-filene du bruker med denne appen
|
||||
STR_PERM_DRIVE_METADATA=Vise og behandle metadataen til filer i din Google Drive
|
||||
STR_PERM_DRIVE_METADATA_RO=Se informasjon om dine Google Drive-filer
|
||||
STR_GOOGLE_LOGIN_FAIL_MSG=Google-innlogging mislykkes
|
||||
STR_GOOGLE_LOGIN_TIMEOUT_MSG=Google-innlogging timet ut
|
||||
STR_NEW_FILE=Ny Fil
|
||||
STR_SETTINGS=Innstillinger
|
||||
STR_CLIENT_ID=Klient-ID
|
||||
STR_CLIENT_SECRET=Klienthemmelighet (Client Secret)
|
||||
STR_GLOBAL=Global
|
||||
STR_GOOGLE=Google
|
||||
STR_COPY_LINE=Kopier markert linje
|
||||
STR_PASTE_LINE=Lim inn i markert linje
|
||||
STR_SHOW_HIDDEN_FILES=Vis skjulte filer
|
||||
STR_SET_DEFAULT_DIRECTORY=Sett oppstartsmappe
|
||||
STR_SET_DEFAULT_DIRECTORY_MSG=har blitt satt som oppstartsmappe
|
||||
STR_VIEW_IMAGE=Vis bilde
|
||||
STR_VIEW_PKG_INFO=Pakkeinformasjon
|
||||
STR_NFS_EXP_PATH_MISSING_MSG=NFS-eksportbane mangler fra URL
|
||||
STR_FAIL_INIT_NFS_CONTEXT=Initialisering av NFS-kontekst mislykkes
|
||||
STR_FAIL_MOUNT_NFS_MSG=Montering av NFS-share mislykkes
|
||||
STR_WEB_SERVER=Web-tjener
|
||||
STR_ENABLE=Skru på
|
||||
STR_COMPRESSED_FILE_PATH=Lokasjon for komprimerte filer
|
||||
STR_COMPRESSED_FILE_PATH_MSG=Lokasjon for komprimerte filer på Web-tjener
|
||||
STR_ALLDEBRID=AllDebrid
|
||||
STR_API_KEY=API-nøkkel
|
||||
STR_CANT_EXTRACT_URL_MSG=Kunne ikke utvinne nedlastings-URL
|
||||
STR_FAIL_INSTALL_FROM_URL_MSG=Installasjon fra URL mislykkes
|
||||
STR_INVALID_URL=Ugyldig URL
|
||||
STR_ALLDEBRID_API_KEY_MISSING_MSG=For å bruke denne funksjonen, må du konfigurere en API-nøkkel i instillingene for ezRemote Client.
|
||||
STR_LANGUAGE=Språk
|
||||
STR_TEMP_DIRECTORY=Midlertidig mappe
|
||||
STR_REALDEBRID=Real-Debrid
|
||||
STR_BACKGROUND_INSTALL_INPROGRESS=Pakkeinstallasjon kjører i bakrunnen. Ikke lykk denne appen mens installasjonen pågår
|
||||
STR_ENABLE_DISC_CACHE_MSG=Skru på disk-caching. Kan gjøre fjerninstallasjon av pakker kjappere når tilkoblingen er treg, men lar deg ikke fortsette en avbrutt installasjon
|
||||
STR_ENABLE_ALLDEBRID_MSG=Installér via AllDebrid
|
||||
STR_ENABLE_REALDEBRID_MSG=Installér via RealDebrid
|
||||
STR_ENABLE_DISKCACHE_DESC=Skru på disk-cache
|
||||
+1
-1
@@ -1157,7 +1157,7 @@ namespace Actions
|
||||
int ret = tmp_client.Size(path, &bytes_to_download);
|
||||
if (ret == 0)
|
||||
{
|
||||
sprintf(status_message, "%s - %s", lang_strings[STR_FAILED], lang_strings[STR_CANNOT_READ_PKG_HDR_MSG]);
|
||||
sprintf(status_message, "%s", tmp_client.LastResponse());
|
||||
tmp_client.Quit();
|
||||
activity_inprogess = false;
|
||||
Windows::SetModalMode(false);
|
||||
|
||||
+23
-10
@@ -128,18 +128,31 @@ std::vector<DirEntry> ApacheClient::ListDir(const std::string &path)
|
||||
tmp_string = std::string((const char *)value, value_len);
|
||||
if (tmp_string.compare("td") == 0)
|
||||
{
|
||||
value = lxb_dom_node_text_content(node, &value_len);
|
||||
// get the child <a> element
|
||||
lxb_dom_node_t *a_node = NextChildElement(lxb_dom_interface_element(node));
|
||||
if (a_node == nullptr) continue;
|
||||
|
||||
value = lxb_dom_element_local_name(lxb_dom_interface_element(a_node), &value_len);
|
||||
tmp_string = std::string((const char *)value, value_len);
|
||||
tmp_string = Util::Rtrim(tmp_string, "/");
|
||||
sprintf(entry.name, "%s", tmp_string.c_str());
|
||||
sprintf(entry.directory, "%s", path.c_str());
|
||||
if (path.length() > 0 && path[path.length() - 1] == '/')
|
||||
if (tmp_string.compare("a") == 0)
|
||||
{
|
||||
sprintf(entry.path, "%s%s", path.c_str(), entry.name);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(entry.path, "%s/%s", path.c_str(), entry.name);
|
||||
value = lxb_dom_element_get_attribute(lxb_dom_interface_element(a_node), (const lxb_char_t *)"href", 4, &value_len);
|
||||
tmp_string = std::string((const char *)value, value_len);
|
||||
tmp_string = Util::Rtrim(tmp_string, "/");
|
||||
tmp_string = BaseClient::UnEscape(tmp_string);
|
||||
if (tmp_string.compare("..") != 0)
|
||||
{
|
||||
sprintf(entry.directory, "%s", path.c_str());
|
||||
sprintf(entry.name, "%s", tmp_string.c_str());
|
||||
if (path.length() > 0 && path[path.length() - 1] == '/')
|
||||
{
|
||||
sprintf(entry.path, "%s%s", path.c_str(), entry.name);
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(entry.path, "%s/%s", path.c_str(), entry.name);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else continue; // not valid record
|
||||
|
||||
@@ -90,7 +90,7 @@ int BaseClient::Size(const std::string &path, int64_t *size)
|
||||
*size = atoll(content_length.c_str());
|
||||
return 1;
|
||||
}
|
||||
else // Server doesn't support HEAD request. Try get range with 0 bytes and grab size from the response header
|
||||
else if (res->status == 405)// Server doesn't support HEAD request. Try get range with 0 bytes and grab size from the response header
|
||||
// example: Content-Range: bytes 0-10/4372785
|
||||
{
|
||||
Headers headers = {{"Range", "bytes=0-1"}};
|
||||
@@ -111,6 +111,10 @@ int BaseClient::Size(const std::string &path, int64_t *size)
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(this->response, "%d - %s", res->status, detail::status_message(res->status));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
+2
-2
@@ -159,8 +159,8 @@ namespace CONFIG
|
||||
"Site 11", "Site 12", "Site 13", "Site 14", "Site 15", "Site 16", "Site 17", "Site 18", "Site 19", "Site 20"};
|
||||
|
||||
langs = { "Default", "Arabic", "Catalan", "Croatian", "Dutch", "English", "Euskera", "French", "Galego", "German", "Greek",
|
||||
"Hungarian", "Indonesian", "Italiano", "Japanese", "Korean", "Polish", "Portuguese_BR", "Russian", "Romanian", "Ryukyuan", "Spanish", "Turkish",
|
||||
"Simplified Chinese", "Traditional Chinese", "Thai", "Ukrainian", "Vietnamese"};
|
||||
"Hungarian", "Indonesian", "Italiano", "Japanese", "Korean", "Norwegian", "Polish", "Portuguese_BR", "Russian",
|
||||
"Romanian", "Ryukyuan", "Spanish", "Turkish", "Simplified Chinese", "Traditional Chinese", "Thai", "Ukrainian", "Vietnamese"};
|
||||
|
||||
http_servers = {HTTP_SERVER_APACHE, HTTP_SERVER_MS_IIS, HTTP_SERVER_NGINX, HTTP_SERVER_NPX_SERVE, HTTP_SERVER_RCLONE, HTTP_SERVER_ARCHIVEORG, HTTP_SERVER_MYRIENT};
|
||||
text_file_extensions = { ".txt", ".ini", ".log", ".json", ".xml", ".html", ".xhtml", ".conf", ".config" };
|
||||
|
||||
@@ -1898,6 +1898,8 @@ make_basic_authentication_header(const std::string &username,
|
||||
|
||||
namespace detail {
|
||||
|
||||
const char *status_message(int status);
|
||||
|
||||
std::string encode_query_param(const std::string &value);
|
||||
|
||||
std::string encode_url(const std::string &s);
|
||||
|
||||
@@ -258,6 +258,9 @@ namespace Lang
|
||||
case ORBIS_SYSTEM_PARAM_LANG_ROMANIAN:
|
||||
sprintf(langFile, "%s", "/app0/assets/langs/Romanian.ini");
|
||||
break;
|
||||
case ORBIS_SYSTEM_PARAM_LANG_NORWEGIAN:
|
||||
sprintf(langFile, "%s", "/app0/assets/langs/Norwegian.ini");
|
||||
break;
|
||||
default:
|
||||
sprintf(langFile, "%s", "/app0/assets/langs/English.ini");
|
||||
break;
|
||||
|
||||
@@ -1292,7 +1292,7 @@ namespace HttpServer
|
||||
failed(res, 200, lang_strings[STR_CANT_EXTRACT_URL_MSG]);
|
||||
activity_inprogess = false;
|
||||
file_transfering = false;
|
||||
Windows::SetModalMode(true);
|
||||
Windows::SetModalMode(false);
|
||||
return;
|
||||
}
|
||||
delete(filehost);
|
||||
@@ -1305,6 +1305,15 @@ namespace HttpServer
|
||||
|
||||
BaseClient *baseclient = new BaseClient();
|
||||
baseclient->Connect(host, "", "");
|
||||
|
||||
if (!baseclient->FileExists(path))
|
||||
{
|
||||
failed(res, 200, baseclient->LastResponse());
|
||||
activity_inprogess = false;
|
||||
file_transfering = false;
|
||||
Windows::SetModalMode(false);
|
||||
return;
|
||||
}
|
||||
baseclient->Head(path, &header, sizeof(pkg_header));
|
||||
|
||||
if (BE32(header.pkg_magic) == 0x7F434E54)
|
||||
@@ -1322,7 +1331,7 @@ namespace HttpServer
|
||||
failed(res, 200, lang_strings[STR_FAIL_INSTALL_FROM_URL_MSG]);
|
||||
activity_inprogess = false;
|
||||
file_transfering = false;
|
||||
Windows::SetModalMode(true);
|
||||
Windows::SetModalMode(false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user