diff --git a/CMakeLists.txt b/CMakeLists.txt index d3730846d..670759dfe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -140,6 +140,7 @@ set(TRANSLATIONS ${TRANS_FILES}) add_subdirectory(csync) add_subdirectory(src) +add_subdirectory(shell_integration) add_subdirectory(doc) if(UNIT_TESTING) diff --git a/ChangeLog b/ChangeLog index 341811555..e1eadfe59 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,35 @@ ChangeLog ========= +version 1.6.2 (release 2014-07-x ) + * HTTP Credentials: Read password from legacy place if not found. + * Shibboleth: Fix the waiting curser that would not disapear (#1915) + * Limit memory usage to avoid mem wasting and crashes + * Propagator: Fix crash when logging out during upload (#1957) + * Propagator_qnam: Fix signal slot connection (#1963) + * Use more elaborated way to detect that the server was reconfigured (#1948) + * Setup Wizard: Reconfigure Server also if local path was changed (#1948) + +version 1.6.1 (release 2014-06-26 ) + * Fix 'precondition failed' bug with broken upload + * Fix openSSL problems for windows deployment + * Fix syncing a folder with '#' in the name + * Fix #1845: do not update parent directory etag before sub + directories are removed + * Fix reappearing directories if dirs are removed during its + upload + * Fix app version in settings dialog, General tab + * Fix crash in FolderWizard when going offline + * Shibboleth fixes + * More specific error messages (file remove during upload, open + local sync file) + * Use QSet rather than QHash in SyncEngine (save memory) + * Fix some memory leaks + * Fix some thread race problems, ie. wait for neon thread to finish + before the propagator is shut down + * Fix a lot of issues and warnings found by Coverity + * Fix Mac some settings dialog problems + + version 1.6.0 (release 2014-05-30 ) * Minor GUI improvements * Qt5 compile issues fixed diff --git a/admin/win/nsi/l10n/Catalan.nsh b/admin/win/nsi/l10n/Catalan.nsh index 05ee422be..2e81c7bd8 100644 --- a/admin/win/nsi/l10n/Catalan.nsh +++ b/admin/win/nsi/l10n/Catalan.nsh @@ -1,44 +1,44 @@ # Auto-generated - do not modify StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar les notes de versió" +StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "S'ha trobat el(s) procés ${APPLICATION_EXECUTABLE} que s'ha d'aturar.$\nVoleu que l'instal·lador l'aturi?" +StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "S'estan matant els processos ${APPLICATION_EXECUTABLE}." StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Procés per matar no trobat!" StrCpy $PageReinstall_NEW_Field_1 "Una versió anterior de ${APPLICATION_NAME} està instal·lada en el vostre sistema. Es recomana desinstal·lar la versió actual abans d'instal·lar. Seleccioneu l'operació que desitjeu realitzar i feu clic a Següent per continuar." StrCpy $PageReinstall_NEW_Field_2 "Desinstal·lar abans d'instal·lar" StrCpy $PageReinstall_NEW_Field_3 "No instal·lar" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ja instal·lat" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "Trieu la manera com voleu instal·lar ${APPLICATION_NAME}." +StrCpy $PageReinstall_OLD_Field_1 "Una versió més recent de ${APPLICATION_NAME} ja està instal.lada!! No es recomana instal.lar una versió més antiga. Si realment voleu instal.lar una versió més antiga, és millor primer desinstal.lar la versió actual. Seleccioni l'operació que desitjeu realitzar i feu clic a Següent per a continuar." +StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} ja està instal.lat.↩\nSeleccioneu l'operació que desitjeu realitzar i feu clic a Següent per continuar." +StrCpy $PageReinstall_SAME_Field_2 "Afegir/Reinstal.lar components" +StrCpy $PageReinstall_SAME_Field_3 "Desinstal.lar ${APPLICATION_NAME}" +StrCpy $UNINSTALLER_APPDATA_TITLE "Desinstal.lar ${APPLICATION_NAME}" +StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Escolliu l'opció de manteniment per executar-ho." +StrCpy $SEC_APPLICATION_DETAILS "Instal·lant ${APPLICATION_NAME} essencial." +StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Accés directe del programa al menú d'inici" +StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Afegint la drecera per ${APPLICATION_NAME} al menú d'inici." +StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Drecera a l'escriptori" +StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creant les dreceres a l'escriptori" +StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Drecera d'inici ràpid" +StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creant la drecera per l'inici ràpid" +StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essencial." +StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Drecera ${APPLICATION_NAME}." +StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Drecera a l'escrptori per ${APPLICATION_NAME}." +StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Drecera d'inici ràpid per ${APPLICATION_NAME}." +StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Esborra la carpeta de dades de ${APPLICATION_NAME} del vostre equip." +StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Voleu esborrar la carpeta de dades de ${APPLICATION_NAME}?" +StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Deixeu-ho sense marcar per mantenir la carpeta de dades per un ús posterior o marqueu-ho per esborrar la carpeta de dades." +StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Sí, esborra la carpeta de dades." +StrCpy $UNINSTALLER_FILE_Detail "Escrivint el desinstal·lador" +StrCpy $UNINSTALLER_REGISTRY_Detail "Escrivint les claus del registre de l'instal·lador" StrCpy $UNINSTALLER_FINISHED_Detail "Acabat" +StrCpy $UNINSTALL_MESSAGEBOX "No sembla que ${APPLICATION_NAME} estigui instal·lat en la carpeta '$INSTDIR'.$\n$\nContinuo igualment (no recomanat)?" +StrCpy $UNINSTALL_ABORT "La desinstal·lació s'ha cancel·lat." +StrCpy $INIT_NO_QUICK_LAUNCH "Drecera d'inici ràpid (N/A)" +StrCpy $INIT_NO_DESKTOP "Drecera de l'escrpitori (sobreescriu l'existent)" +StrCpy $UAC_ERROR_ELEVATE "No es pot elevar, error:" +StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "Aquest instal·lador requereix accés d'administrador, intenteu-ho de nou" +StrCpy $INIT_INSTALLER_RUNNING "L'instal·lador ja s'està executant." +StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "Aquest desinstal·lador requereix accés d'administrador, intenteu-ho de nou." +StrCpy $INIT_UNINSTALLER_RUNNING "El desinstal·lador ja s'està executant." StrCpy $SectionGroup_Shortcuts "Dreceres" -StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?" -StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Killing ${APPLICATION_EXECUTABLE} processes." -StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue." -StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue." -StrCpy $PageReinstall_SAME_Field_2 "Add/Reinstall components" -StrCpy $PageReinstall_SAME_Field_3 "Uninstall ${APPLICATION_NAME}" -StrCpy $UNINSTALLER_APPDATA_TITLE "Uninstall ${APPLICATION_NAME}" -StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform." -StrCpy $SEC_APPLICATION_DETAILS "Installing ${APPLICATION_NAME} essentials." -StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Start Menu Program Shortcut" -StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu." -StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Desktop Shortcut" -StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creating Desktop Shortcuts" -StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Quick Launch Shortcut" -StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creating Quick Launch Shortcut" -StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} essentials." -StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME} shortcut." -StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Desktop shortcut for ${APPLICATION_NAME}." -StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Quick Launch shortcut for ${APPLICATION_NAME}." -StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer." -StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?" -StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder." -StrCpy $UNINSTALLER_APPDATA_CHECKBOX "Yes, delete this data folder." -StrCpy $UNINSTALLER_FILE_Detail "Writing Uninstaller" -StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys" -StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?" -StrCpy $UNINSTALL_ABORT "Uninstall aborted by user" -StrCpy $INIT_NO_QUICK_LAUNCH "Quick Launch Shortcut (N/A)" -StrCpy $INIT_NO_DESKTOP "Desktop Shortcut (overwrites existing)" -StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:" -StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again" -StrCpy $INIT_INSTALLER_RUNNING "The installer is already running." -StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again" -StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running." diff --git a/admin/win/nsi/l10n/SimpChinese.nsh b/admin/win/nsi/l10n/SimpChinese.nsh index d28e6ab6e..4041ec542 100644 --- a/admin/win/nsi/l10n/SimpChinese.nsh +++ b/admin/win/nsi/l10n/SimpChinese.nsh @@ -1,5 +1,6 @@ # Auto-generated - do not modify StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "查看版本日志" +StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "有 ${APPLICATION_EXECUTABLE} 项进程需要关闭。$\n您想让安装程序关闭这些进程吗?" StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "杀死${APPLICATION_EXECUTABLE}进程。" StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "未找到要杀死的进程!" StrCpy $PageReinstall_NEW_Field_1 "您的系统已经安装${APPLICATION_NAME}较老版本。建议安装前卸载当前版本。选择将要执行的操作,点击下一步继续。" @@ -7,11 +8,15 @@ StrCpy $PageReinstall_NEW_Field_2 "在安装前先卸载" StrCpy $PageReinstall_NEW_Field_3 "不要卸载" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "已经安装" StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_SUBTITLE "选择如何安装${APPLICATION_NAME}。" +StrCpy $PageReinstall_OLD_Field_1 "较新版本的 ${APPLICATION_NAME} 已经安装!安装较旧版本的程序是不推荐的。如果您希望继续安装较旧版本,建议先卸载较新版本。选择您想要执行的操作并点击下一步以继续。" +StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} 已经安装。\n请选择想要执行的操作并点击下一步。" StrCpy $PageReinstall_SAME_Field_2 "增加/重装组件" StrCpy $PageReinstall_SAME_Field_3 "卸载${APPLICATION_NAME}" StrCpy $UNINSTALLER_APPDATA_TITLE "卸载${APPLICATION_NAME}" +StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "选择需要执行的维护选项。" StrCpy $SEC_APPLICATION_DETAILS "安装${APPLICATION_NAME}基本组件。" StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "开始菜单程序快捷方式" +StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "添加 ${APPLICATION_NAME} 快捷方式到开始菜单。" StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "桌面快捷方式" StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "创建桌面快捷方式" StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "快速启动栏快捷方式" @@ -20,25 +25,20 @@ StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME}基本组件。" StrCpy $OPTION_SECTION_SC_START_MENU_Desc "${APPLICATION_NAME}快捷方式。" StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "${APPLICATION_NAME}桌面快捷方式。" StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "${APPLICATION_NAME}快速启动栏快捷方式。" +StrCpy $UNINSTALLER_APPDATA_SUBTITLE "从电脑中移除 ${APPLICATION_NAME} 数据文件夹。" +StrCpy $UNINSTALLER_APPDATA_LABEL_1 "移除 ${APPLICATION_NAME} 数据文件夹?" +StrCpy $UNINSTALLER_APPDATA_LABEL_2 "选择以删除数据文件夹,不选择以保留数据文件夹内容供后续使用。" StrCpy $UNINSTALLER_APPDATA_CHECKBOX "删除数据文件。" StrCpy $UNINSTALLER_FILE_Detail "覆盖卸载器" +StrCpy $UNINSTALLER_REGISTRY_Detail "正在写入注册表" StrCpy $UNINSTALLER_FINISHED_Detail "完成" +StrCpy $UNINSTALL_MESSAGEBOX "${APPLICATION_NAME} 可能并没有安装在 $INSTDIR。$\n$\n仍然继续吗?(不推荐)" +StrCpy $UNINSTALL_ABORT "用户取消了卸载" StrCpy $INIT_NO_QUICK_LAUNCH "快速启动栏快捷方式(N/A)" StrCpy $INIT_NO_DESKTOP "桌面快捷方式(覆盖)" +StrCpy $UAC_ERROR_ELEVATE "无法获得权限,错误:" +StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "安装程序需要管理员权限,请重试" +StrCpy $INIT_INSTALLER_RUNNING "安装程序已经运行。" +StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "卸载程序需要管理员权限,请重试" +StrCpy $INIT_UNINSTALLER_RUNNING "卸载程序已经运行。" StrCpy $SectionGroup_Shortcuts "快捷方式" -StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Found ${APPLICATION_EXECUTABLE} process(s) which need to be stopped.$\nDo you want the installer to stop these for you?" -StrCpy $PageReinstall_OLD_Field_1 "A newer version of ${APPLICATION_NAME} is already installed! It is not recommended that you install an older version. If you really want to install this older version, it is better to uninstall the current version first. Select the operation you want to perform and click Next to continue." -StrCpy $PageReinstall_SAME_Field_1 "${APPLICATION_NAME} ${VERSION} is already installed.\r\nSelect the operation you want to perform and click Next to continue." -StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Choose the maintenance option to perform." -StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Adding shortcut for ${APPLICATION_NAME} to the Start Menu." -StrCpy $UNINSTALLER_APPDATA_SUBTITLE "Remove ${APPLICATION_NAME}'s data folder from your computer." -StrCpy $UNINSTALLER_APPDATA_LABEL_1 "Do you want to delete ${APPLICATION_NAME}'s data folder?" -StrCpy $UNINSTALLER_APPDATA_LABEL_2 "Leave unchecked to keep the data folder for later use or check to delete the data folder." -StrCpy $UNINSTALLER_REGISTRY_Detail "Writing Installer Registry Keys" -StrCpy $UNINSTALL_MESSAGEBOX "It does not appear that ${APPLICATION_NAME} is installed in the directory '$INSTDIR'.$\r$\nContinue anyway (not recommended)?" -StrCpy $UNINSTALL_ABORT "Uninstall aborted by user" -StrCpy $UAC_ERROR_ELEVATE "Unable to elevate, error:" -StrCpy $UAC_INSTALLER_REQUIRE_ADMIN "This installer requires admin access, try again" -StrCpy $INIT_INSTALLER_RUNNING "The installer is already running." -StrCpy $UAC_UNINSTALLER_REQUIRE_ADMIN "This uninstaller requires admin access, try again" -StrCpy $INIT_UNINSTALLER_RUNNING "The uninstaller is already running." diff --git a/cmake/modules/DefineCompilerFlags.cmake b/cmake/modules/DefineCompilerFlags.cmake index 772c67ebe..b6aadfa25 100644 --- a/cmake/modules/DefineCompilerFlags.cmake +++ b/cmake/modules/DefineCompilerFlags.cmake @@ -13,7 +13,7 @@ if (${CMAKE_C_COMPILER_ID} MATCHES "(GNU|Clang)") if (NOT CSYNC_STATIC_COMPILE_DIR) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -pedantic -pedantic-errors") endif() - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wshadow -Wmissing-prototypes -Wdeclaration-after-statement") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wshadow -Wmissing-prototypes") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wunused -Wfloat-equal -Wpointer-arith -Wwrite-strings -Wformat-security") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-format-attribute") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wmissing-format-attribute -D_GNU_SOURCE") diff --git a/cmake/modules/NSIS.template.in b/cmake/modules/NSIS.template.in index 8c9c5dcef..d229b8e6f 100644 --- a/cmake/modules/NSIS.template.in +++ b/cmake/modules/NSIS.template.in @@ -111,8 +111,8 @@ ReserveFile "${NSISDIR}\Plugins\InstallOptions.dll" !define MUI_HEADERIMAGE !define MUI_HEADERIMAGE_BITMAP ${WIN_SETUP_BITMAP_PATH}/page_header.bmp !define MUI_COMPONENTSPAGE_SMALLDESC -!define MUI_FINISHPAGE_LINK "www.${APPLICATION_DOMAIN}" -!define MUI_FINISHPAGE_LINK_LOCATION "http://www.${APPLICATION_DOMAIN}" +!define MUI_FINISHPAGE_LINK "${APPLICATION_DOMAIN}" +!define MUI_FINISHPAGE_LINK_LOCATION "http://${APPLICATION_DOMAIN}" !define MUI_FINISHPAGE_NOREBOOTSUPPORT !ifdef OPTION_FINISHPAGE_RELEASE_NOTES !define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED @@ -370,6 +370,7 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION ;Main executable & csync File "${BUILD_PATH}\bin\${APPLICATION_EXECUTABLE}" File "${BUILD_PATH}\bin\${APPLICATION_CMD_EXECUTABLE}" + File "${BUILD_PATH}\bin\socketapiclient.exe" File "${BUILD_PATH}\src\lib${APPLICATION_SHORTNAME}sync.dll" File "${BUILD_PATH}\csync\src\libocsync.dll" @@ -413,15 +414,14 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION File "${QT_DLL_PATH}\Qt5Xml.dll" ;Qt deps - File "${MING_BIN}\libpng15-15.dll" - File "${MING_BIN}\icudata51.dll" - File "${MING_BIN}\icui18n51.dll" - File "${MING_BIN}\icuuc51.dll" + File "${MING_BIN}\libpng16-16.dll" + File "${MING_BIN}\icudata53.dll" + File "${MING_BIN}\icui18n53.dll" + File "${MING_BIN}\icuuc53.dll" File "${MING_BIN}\libEGL.dll" File "${MING_BIN}\libGLESv2.dll" File "${MING_BIN}\libjpeg-8.dll" File "${MING_BIN}\libpcre16-0.dll" - File "${MING_BIN}\libpng15-15.dll" File "${MING_BIN}\libproxy.dll" File "${MING_BIN}\libqt5keychain.dll" File "${MING_BIN}\libsqlite3-0.dll" @@ -448,6 +448,7 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION ;MinGW stuff File "${MING_BIN}\libgcc_s_sjlj-1.dll" File "${MING_BIN}\libstdc++-6.dll" + File "${MING_BIN}\libwinpthread-1.dll" ; CSync configs File "${SOURCE_PATH}/sync-exclude.lst" diff --git a/cmake/modules/QtVersionAbstraction.cmake b/cmake/modules/QtVersionAbstraction.cmake index 406519acc..6e6e16889 100644 --- a/cmake/modules/QtVersionAbstraction.cmake +++ b/cmake/modules/QtVersionAbstraction.cmake @@ -148,6 +148,8 @@ if(NOT Qt5Core_FOUND) include( ${QT_USE_FILE} ) endmacro() + + add_definitions("-DQ_DECL_OVERRIDE=override") endif() if( Qt5Core_DIR ) diff --git a/cmake/modules/Warnings.cmake b/cmake/modules/Warnings.cmake index 0e1b17308..29a2de8d0 100644 --- a/cmake/modules/Warnings.cmake +++ b/cmake/modules/Warnings.cmake @@ -6,9 +6,11 @@ if(CMAKE_COMPILER_IS_GNUCXX) else(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long") endif(GCC_VERSION VERSION_GREATER 4.8 OR GCC_VERSION VERSION_EQUAL 4.8) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") endif(CMAKE_COMPILER_IS_GNUCXX) if(CMAKE_CXX_COMPILER MATCHES "clang") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") endif(CMAKE_CXX_COMPILER MATCHES "clang") # TODO: handle msvc compilers warnings? diff --git a/csync/src/csync.c b/csync/src/csync.c index 072b0760e..5c4cab8a2 100644 --- a/csync/src/csync.c +++ b/csync/src/csync.c @@ -240,11 +240,6 @@ int csync_update(CSYNC *ctx) { c_secdiff(finish, start), c_rbtree_size(ctx->local.tree)); csync_memstat_check(); - if (rc < 0) { - ctx->status_code = CSYNC_STATUS_TREE_ERROR; - return -1; - } - /* update detection for remote replica */ csync_gettime(&start); ctx->current = REMOTE_REPLICA; diff --git a/csync/src/csync_exclude.c b/csync/src/csync_exclude.c index 4f93933f6..25cd060e0 100644 --- a/csync/src/csync_exclude.c +++ b/csync/src/csync_exclude.c @@ -235,6 +235,7 @@ CSYNC_EXCLUDE_TYPE csync_excluded(CSYNC *ctx, const char *path, int filetype) { type = CSYNC_FILE_EXCLUDE_LIST; if (strlen(pattern) < 1) { + SAFE_FREE(pattern_stored); continue; } /* Ecludes starting with ']' means it can be cleanup */ @@ -270,6 +271,9 @@ CSYNC_EXCLUDE_TYPE csync_excluded(CSYNC *ctx, const char *path, int filetype) { if (bname == NULL || dname == NULL) { match = CSYNC_NOT_EXCLUDED; + SAFE_FREE(bname); + SAFE_FREE(dname); + SAFE_FREE(pattern_stored); goto out; } diff --git a/csync/src/csync_owncloud.c b/csync/src/csync_owncloud.c index 3bad442dd..1e2482898 100644 --- a/csync/src/csync_owncloud.c +++ b/csync/src/csync_owncloud.c @@ -567,7 +567,7 @@ static struct listdir_context *fetch_resource_list(csync_owncloud_ctx_t *ctx, co ret = NE_CONNECT; set_error_message(ctx, req_status->reason_phrase); } - DEBUG_WEBDAV("Simple propfind result code %d.", req_status->code); + DEBUG_WEBDAV("Simple propfind result code %d.", req_status ? req_status->code : -1); } else { if( ret == NE_ERROR && req_status->code == 404) { errno = ENOENT; diff --git a/csync/src/csync_owncloud_private.h b/csync/src/csync_owncloud_private.h index ffe84c73b..e02152b26 100644 --- a/csync/src/csync_owncloud_private.h +++ b/csync/src/csync_owncloud_private.h @@ -127,7 +127,7 @@ static const ne_propname ls_props[] = { { "http://owncloud.org/ns", "id"}, { "http://owncloud.org/ns", "dDU"}, { "http://owncloud.org/ns", "dDC"}, - { "http://owncloud.org/ns", "perm"}, + { "http://owncloud.org/ns", "permissions"}, { NULL, NULL } }; diff --git a/csync/src/csync_owncloud_recursive_propfind.c b/csync/src/csync_owncloud_recursive_propfind.c index fb0dbdb57..d4af3ce63 100644 --- a/csync/src/csync_owncloud_recursive_propfind.c +++ b/csync/src/csync_owncloud_recursive_propfind.c @@ -171,13 +171,12 @@ static void propfind_results_recursive_callback(void *userdata, } /* DEBUG_WEBDAV("results_recursive Added child %s to collection %s", newres->uri, element->self->uri); */ - } else { - /* DEBUG_WEBDAV("results_recursive No parent %s found for child %s", parentPath, newres->uri); */ - resource_free(newres); - newres = NULL; + return; } } + resource_free(newres); + newres = NULL; } void fetch_resource_list_recursive(csync_owncloud_ctx_t *ctx, const char *uri, const char *curi) diff --git a/csync/src/csync_owncloud_util.c b/csync/src/csync_owncloud_util.c index 1e84ca89c..af64ff6fc 100644 --- a/csync/src/csync_owncloud_util.c +++ b/csync/src/csync_owncloud_util.c @@ -318,7 +318,7 @@ void resourceToFileStat(csync_vio_file_stat_t *lfs, struct resource *res ) lfs->directDownloadCookies = c_strdup(res->directDownloadCookies); } if (strlen(res->remotePerm) > 0) { - lfs->fields = CSYNC_VIO_FILE_STAT_FIELDS_PERM; + lfs->fields |= CSYNC_VIO_FILE_STAT_FIELDS_PERM; strncpy(lfs->remotePerm, res->remotePerm, sizeof(lfs->remotePerm)); } } @@ -373,15 +373,15 @@ void fill_webdav_properties_into_resource(struct resource* newres, const ne_prop if (directDownloadCookies) { newres->directDownloadCookies = c_strdup(directDownloadCookies); } - if (perm && strlen(perm) < sizeof(newres->remotePerm)) { - strncpy(newres->remotePerm, perm, sizeof(newres->remotePerm)); - } else if (perm && strlen(perm) == 0) { + if (perm && !perm[0]) { // special meaning for our code: server returned permissions but are empty // meaning only reading is allowed for this resource newres->remotePerm[0] = ' '; // see _csync_detect_update() + } else if (perm && strlen(perm) < sizeof(newres->remotePerm)) { + strncpy(newres->remotePerm, perm, sizeof(newres->remotePerm)); } else { - // old server, keep NULL in newres->remotePerm + // old server, keep newres->remotePerm empty } } diff --git a/csync/src/csync_reconcile.c b/csync/src/csync_reconcile.c index 140117ba1..fda28aadc 100644 --- a/csync/src/csync_reconcile.c +++ b/csync/src/csync_reconcile.c @@ -184,6 +184,7 @@ static int _csync_merge_algorithm_visitor(void *obj, void *data) { csync_vio_set_file_id( other->file_id, cur->file_id ); } other->inode = cur->inode; + other->should_update_etag = true; cur->instruction = CSYNC_INSTRUCTION_NONE; } else if (other->instruction == CSYNC_INSTRUCTION_REMOVE) { other->instruction = CSYNC_INSTRUCTION_RENAME; @@ -193,6 +194,7 @@ static int _csync_merge_algorithm_visitor(void *obj, void *data) { csync_vio_set_file_id( other->file_id, cur->file_id ); } other->inode = cur->inode; + other->should_update_etag = true; cur->instruction = CSYNC_INSTRUCTION_NONE; } else if (other->instruction == CSYNC_INSTRUCTION_NEW) { CSYNC_LOG(CSYNC_LOG_PRIORITY_TRACE, "OOOO=> NEW detected in other tree!"); @@ -238,8 +240,8 @@ static int _csync_merge_algorithm_visitor(void *obj, void *data) { /* file on other replica is changed or new */ case CSYNC_INSTRUCTION_NEW: case CSYNC_INSTRUCTION_EVAL: - if (other->type == CSYNC_VIO_FILE_TYPE_DIRECTORY && - cur->type == CSYNC_VIO_FILE_TYPE_DIRECTORY) { + if (other->type == CSYNC_FTW_TYPE_DIR && + cur->type == CSYNC_FTW_TYPE_DIR) { is_equal_files = (other->modtime == cur->modtime); } else { is_equal_files = ((other->size == cur->size) && (other->modtime == cur->modtime)); diff --git a/csync/src/csync_statedb.c b/csync/src/csync_statedb.c index 4c254cf7c..e23215d5d 100644 --- a/csync/src/csync_statedb.c +++ b/csync/src/csync_statedb.c @@ -133,6 +133,8 @@ static int _csync_statedb_check(const char *statedb) { } } } + } else { + close(fd); } /* if it comes here, the database is broken and should be recreated. */ _tunlink(wstatedb); @@ -314,10 +316,8 @@ static int _csync_file_stat_from_metadata_table( csync_file_stat_t **st, sqlite3 if(column_count > 11 && sqlite3_column_text(stmt,11)) { strncpy((*st)->remotePerm, (char*) sqlite3_column_text(stmt, 11), - sizeof((*st)->remotePerm)); + REMOTE_PERM_BUF_SIZE); } - CSYNC_LOG(CSYNC_LOG_PRIORITY_ERROR, "%s %s",sqlite3_column_text(stmt, 10),sqlite3_column_text(stmt, 11) ); - } } return rc; diff --git a/csync/src/csync_update.c b/csync/src/csync_update.c index adc778594..2fab73010 100644 --- a/csync/src/csync_update.c +++ b/csync/src/csync_update.c @@ -254,38 +254,30 @@ static int _csync_detect_update(CSYNC *ctx, const char *file, st->instruction = CSYNC_INSTRUCTION_EVAL; goto out; } + bool metadata_differ = (ctx->current == REMOTE_REPLICA && (!c_streq(fs->file_id, tmp->file_id) + || !c_streq(fs->remotePerm, tmp->remotePerm))) + || (ctx->current == LOCAL_REPLICA && fs->inode != tmp->inode); if (type == CSYNC_FTW_TYPE_DIR && ctx->current == REMOTE_REPLICA - && c_streq(fs->file_id, tmp->file_id) && !ctx->read_from_db_disabled) { + && !metadata_differ && !ctx->read_from_db_disabled) { /* If both etag and file id are equal for a directory, read all contents from * the database. - * The comparison of file id ensure that we fetch all the file id when upgrading from - * owncloud 5 to owncloud 6. + * The metadata comparison ensure that we fetch all the file id or permission when + * upgrading owncloud */ CSYNC_LOG(CSYNC_LOG_PRIORITY_TRACE, "Reading from database: %s", path); ctx->remote.read_from_db = true; } - if (ctx->current == REMOTE_REPLICA - // DB perm; true for NULL or empty (on update) - && strlen(tmp->remotePerm) == 0 - // remote perm (even if remote perm empty it will be ' ' see fill_webdav_properties_into_resource - && strlen(fs->remotePerm) > 0) - { - /* remotePerm received from server but none in DB. - * Which means we need to update the DB. - * (upgrade from owncloud x to owncloud 7 for instence) */ - st->should_update_etag = true; // write to DB after PROPFIND - ctx->remote.read_from_db = false; // get dirs via PROPFIND - - } - if (!c_streq(fs->file_id, tmp->file_id) && ctx->current == REMOTE_REPLICA) { - /* file id has changed. Which means we need to update the DB. - * (upgrade from owncloud 5 to owncloud 6 for instence) */ + if (metadata_differ) { + /* file id or permissions has changed. Which means we need to update them in the DB. */ st->should_update_etag = true; } st->instruction = CSYNC_INSTRUCTION_NONE; } else { enum csync_vio_file_type_e tmp_vio_type = CSYNC_VIO_FILE_TYPE_UNKNOWN; + /* tmp might point to malloc mem, so free it here before reusing tmp */ + SAFE_FREE(tmp); + /* check if it's a file and has been renamed */ if (ctx->current == LOCAL_REPLICA) { CSYNC_LOG(CSYNC_LOG_PRIORITY_TRACE, "Checking for rename based on inode # %" PRId64 "", (uint64_t) fs->inode); @@ -390,7 +382,7 @@ out: st->directDownloadCookies = c_strdup(fs->directDownloadCookies); } if (fs->fields & CSYNC_VIO_FILE_STAT_FIELDS_PERM) { - strncpy(st->remotePerm, fs->remotePerm, sizeof(st->remotePerm)); + strncpy(st->remotePerm, fs->remotePerm, REMOTE_PERM_BUF_SIZE); } fastout: /* target if the file information is read from database into st */ @@ -700,8 +692,7 @@ int csync_ftw(CSYNC *ctx, const char *uri, csync_walker_fn fn, if (flag == CSYNC_FTW_FLAG_DIR && ctx->current_fs && (ctx->current_fs->instruction == CSYNC_INSTRUCTION_EVAL || - ctx->current_fs->instruction == CSYNC_INSTRUCTION_NEW || - ctx->current_fs->instruction == CSYNC_INSTRUCTION_EVAL_RENAME)) { + ctx->current_fs->instruction == CSYNC_INSTRUCTION_NEW)) { ctx->current_fs->should_update_etag = true; } diff --git a/csync/src/csync_util.c b/csync/src/csync_util.c index 64f2ccfaf..ff18c3e58 100644 --- a/csync/src/csync_util.c +++ b/csync/src/csync_util.c @@ -113,12 +113,12 @@ void csync_win32_set_file_hidden( const char *file, bool h ) { fileName = c_utf8_to_locale( file ); dwAttrs = GetFileAttributesW(fileName); - if (dwAttrs==INVALID_FILE_ATTRIBUTES) return; - - if (h && !(dwAttrs & FILE_ATTRIBUTE_HIDDEN)) { - SetFileAttributesW(fileName, dwAttrs | FILE_ATTRIBUTE_HIDDEN ); - } else if (!h && (dwAttrs & FILE_ATTRIBUTE_HIDDEN)) { - SetFileAttributesW(fileName, dwAttrs & ~FILE_ATTRIBUTE_HIDDEN ); + if (dwAttrs != INVALID_FILE_ATTRIBUTES) { + if (h && !(dwAttrs & FILE_ATTRIBUTE_HIDDEN)) { + SetFileAttributesW(fileName, dwAttrs | FILE_ATTRIBUTE_HIDDEN ); + } else if (!h && (dwAttrs & FILE_ATTRIBUTE_HIDDEN)) { + SetFileAttributesW(fileName, dwAttrs & ~FILE_ATTRIBUTE_HIDDEN ); + } } c_free_locale_string(fileName); diff --git a/csync/src/httpbf/src/httpbf.c b/csync/src/httpbf/src/httpbf.c index 9201afd90..f914655c1 100644 --- a/csync/src/httpbf/src/httpbf.c +++ b/csync/src/httpbf/src/httpbf.c @@ -204,9 +204,9 @@ void hbf_free_transfer( hbf_transfer_t *transfer ) { for( cnt = 0; cnt < transfer->block_cnt; cnt++ ) { hbf_block_t *block = transfer->block_arr[cnt]; + if( !block ) continue; if( block->http_error_msg ) free( block->http_error_msg ); if( block->etag ) free( block->etag ); - if( block ) free(block); } free( transfer->block_arr ); free( transfer->url ); @@ -536,8 +536,8 @@ Hbf_State hbf_transfer( ne_session *session, hbf_transfer_t *transfer, const cha } else { state = HBF_MEMORY_FAIL; } - free( transfer_url ); } + free( transfer_url ); } /* do the source file validation finally (again). */ diff --git a/csync/src/std/c_time.c b/csync/src/std/c_time.c index 62d43c899..cf57a5e57 100644 --- a/csync/src/std/c_time.c +++ b/csync/src/std/c_time.c @@ -135,7 +135,8 @@ int c_utimes(const char *uri, const struct timeval *times) { if(!SetFileTime(hFile, NULL, &LastAccessTime, &LastModificationTime)) { //can this happen? errno=ENOENT; - CloseHandle(hFile); + CloseHandle(hFile); + c_free_locale_string(wuri); return -1; } diff --git a/csync/src/vio/csync_vio_local.c b/csync/src/vio/csync_vio_local.c index 604b31b97..754a35741 100644 --- a/csync/src/vio/csync_vio_local.c +++ b/csync/src/vio/csync_vio_local.c @@ -257,6 +257,7 @@ int csync_vio_local_stat(const char *uri, csync_vio_file_stat_t *buf) { buf->fields |= CSYNC_VIO_FILE_STAT_FIELDS_CTIME; } + c_free_locale_string(wuri); CloseHandle(h); return 0; diff --git a/csync/tests/csync_tests/check_csync_create.c b/csync/tests/csync_tests/check_csync_create.c index bf4e5c8f1..90caab695 100644 --- a/csync/tests/csync_tests/check_csync_create.c +++ b/csync/tests/csync_tests/check_csync_create.c @@ -38,7 +38,6 @@ static void check_csync_destroy_null(void **state) static void check_csync_create(void **state) { CSYNC *csync; - char confdir[1024] = {0}; int rc; (void) state; /* unused */ diff --git a/csync/tests/ownCloud/ownCloud/Test.pm b/csync/tests/ownCloud/ownCloud/Test.pm index 9540682b1..3538d83b0 100644 --- a/csync/tests/ownCloud/ownCloud/Test.pm +++ b/csync/tests/ownCloud/ownCloud/Test.pm @@ -34,6 +34,7 @@ use LWP::UserAgent; use LWP::Protocol::https; use HTTP::Request::Common qw( POST GET DELETE ); use File::Basename; +use IO::Handle; use Encode qw(from_to); use utf8; @@ -577,7 +578,7 @@ sub createLocalFile( $$ ) my $minimum = 32; my $range = 96; - for (my $bytes = 0; $bytes < $size; $bytes += 4) { + for (my $bytes = 0; $bytes < $size-1; $bytes += 4) { my $rand = int(rand($range ** 4)); my $string = ''; for (1..4) { @@ -587,6 +588,9 @@ sub createLocalFile( $$ ) print FILE $string; $md5->add($string); } + my $s = "\n"; + print FILE $s; + $md5->add($s); close FILE; return $md5->hexdigest; } diff --git a/csync/tests/ownCloud/t1.pl b/csync/tests/ownCloud/t1.pl index 5834290b0..d3ffe1eef 100755 --- a/csync/tests/ownCloud/t1.pl +++ b/csync/tests/ownCloud/t1.pl @@ -123,8 +123,8 @@ assertLocalAndRemoteDir( '', 0); # The previous sync should have updated the etags, and this should NOT be a conflict printInfo( "Update the file again"); -system("echo more data >> " . localDir() . "remoteToLocal1/kernelcrash.txt"); -system("echo corruption >> " . localDir() . "remoteToLocal1/kraft_logo.gif"); +createLocalFile( localDir() . "remoteToLocal1/kernelcrash.txt", 2136 ); +createLocalFile( localDir() . "remoteToLocal1/kraft_logo.gif", 2332 ); csync( ); assertLocalAndRemoteDir( '', 0); diff --git a/csync/tests/ownCloud/t2.pl b/csync/tests/ownCloud/t2.pl index 5260f7706..4b68a047f 100755 --- a/csync/tests/ownCloud/t2.pl +++ b/csync/tests/ownCloud/t2.pl @@ -185,12 +185,35 @@ assertLocalAndRemoteDir( 'remoteToLocal1', 1); printInfo("Move a file from the server"); $inode = getInode('remoteToLocal1/rtl2/kb1_local_gone.jpg'); moveRemoteFile( 'remoteToLocal1/rtl2/kb1_local_gone.jpg', 'remoteToLocal1/rtl2/kb1_local_gone2.jpg'); + +#also create a new directory localy for the next test +mkdir( localDir().'superNewDir' ); +createLocalFile(localDir(). 'superNewDir/f1', 1234 ); +createLocalFile(localDir(). 'superNewDir/f2', 1324 ); +my $superNewDirInode = getInode('superNewDir'); + + csync(); -assertLocalAndRemoteDir( 'remoteToLocal1', 1); +assertLocalAndRemoteDir( '', 1); $inode2 = getInode('remoteToLocal1/rtl2/kb1_local_gone2.jpg'); assert( $inode == $inode2, "Inode has changed 3!"); +printInfo("Move a newly created directory"); +moveRemoteFile('superNewDir', 'superNewDirRenamed'); +#also add new files in new directory +createLocalFile(localDir(). 'superNewDir/f3' , 2456 ); +$inode = getInode('superNewDir/f3'); + +csync(); +assertLocalAndRemoteDir( '', 1); +my $file = localDir() . 'superNewDir'; +assert( -e $file ); + +$inode2 = getInode('superNewDir/f3'); +assert( $inode == $inode2, "Inode of f3 changed"); +$inode2 = getInode('superNewDir'); +assert( $superNewDirInode == $inode2, "Inode of superNewDir changed"); cleanup(); diff --git a/csync/tests/ownCloud/t5.pl b/csync/tests/ownCloud/t5.pl index 23ed18301..fce39a033 100755 --- a/csync/tests/ownCloud/t5.pl +++ b/csync/tests/ownCloud/t5.pl @@ -30,7 +30,6 @@ use ownCloud::Test; use strict; print "Hello, this is t5, a tester for syncing of files in Shares\n"; -# stat error occours on windsows when the file is busy for example initTesting(); diff --git a/csync/tests/ownCloud/t6.pl b/csync/tests/ownCloud/t6.pl index 6e8f31b09..66019fecf 100755 --- a/csync/tests/ownCloud/t6.pl +++ b/csync/tests/ownCloud/t6.pl @@ -33,6 +33,34 @@ print "Hello, this is t6, a tester for csync with ownCloud.\n"; initTesting(); +sub createPostUpdateScript() +{ + my $srcFile = localDir()."BIG.file"; + my $cred = configValue("user") . ":" . configValue("passwd"); + my $cmd = "curl -T $srcFile -u $cred " . testDirUrl(); + my $script = "/tmp/post_update_script.sh"; + open SC, ">$script" || die("Can not create script file"); + print SC "#!/bin/bash\n"; + print SC "$cmd\n"; + close SC; + chmod 0755, $script; + + return $script; +} + +sub getETagFromJournal($) +{ + my ($num) = @_; + + my $sql = "sqlite3 " . localDir() . ".csync_journal.db \"SELECT md5 FROM metadata WHERE path='BIG.file';\""; + open(my $fh, '-|', $sql) or die $!; + my $etag = <$fh>; + close $fh; + print "$num etag: $etag"; + + return $etag; +} + sub chunkFileTest( $$ ) { my ($name, $size) = @_; @@ -63,7 +91,27 @@ sub chunkFileTest( $$ ) printInfo("Big file that needs chunking with default chunk size"); chunkFileTest( "BIG.file", 23251233 ); - # Set a custom chunk size in environment. +printInfo("Update the existing file and trigger reupload"); +# change the existing file again -> update +chunkFileTest( "BIG.file", 21762122 ); + +printInfo("Cause a precondition failed error"); +# Now overwrite the existing file to change it +createLocalFile( localDir()."BIG.file", 21832199 ); +# and create a post update script +my $script = createPostUpdateScript(); +$ENV{'OWNCLOUD_POST_UPDATE_SCRIPT'} = $script; + +# Save the etag before the sync +my $firstETag = getETagFromJournal('First'); +csync(); # Sync, which ends in a precondition failed error +# get the etag again. It has to be unchanged because of the error. +my $secondETag = getETagFromJournal('Second'); +assert( $firstETag eq $secondETag, "Different ETags, no precondition error." ); + +unlink($script); + +# Set a custom chunk size in environment. my $ChunkSize = 1*1024*1024; $ENV{'OWNCLOUD_CHUNK_SIZE'} = $ChunkSize; diff --git a/csync/tests/ownCloud/t7.pl b/csync/tests/ownCloud/t7.pl new file mode 100755 index 000000000..837c4da28 --- /dev/null +++ b/csync/tests/ownCloud/t7.pl @@ -0,0 +1,235 @@ +#!/usr/bin/perl +# +# Test script for the ownCloud module of csync. +# This script requires a running ownCloud instance accessible via HTTP. +# It does quite some fancy tests and asserts the results. +# +# Copyright (C) by Klaas Freitag +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# + +use lib "."; + +use Carp::Assert; +use File::Copy; +use ownCloud::Test; + +use strict; + +print "Hello, this is t7, a tester for syncing of files in read only directory\n"; + + +# IMPORTANT NOTE : +print "This test use the OWNCLOUD_TEST_PERMISSIONS environement variable and _PERM_xxx_ on filenames to set the permission. "; +print "It does not rely on real permission set on the server. This test is just for testing the propagation choices\n"; +# "It would be nice" to have a test that test with real permissions on the server + +$ENV{OWNCLOUD_TEST_PERMISSIONS} = "1"; + +initTesting(); + +printInfo( "Init" ); + +#create some files localy +my $tmpdir = "/tmp/t7/"; +mkdir($tmpdir); +createLocalFile( $tmpdir . "normalFile_PERM_WVND_.data", 100 ); +createLocalFile( $tmpdir . "cannotBeRemoved_PERM_WVN_.data", 101 ); +createLocalFile( $tmpdir . "canBeRemoved_PERM_D_.data", 102 ); +my $md5CanotBeModified = createLocalFile( $tmpdir . "canotBeModified_PERM_DVN_.data", 103 ); +createLocalFile( $tmpdir . "canBeModified_PERM_W_.data", 104 ); + +#put them in some directories +createRemoteDir( "normalDirectory_PERM_CKDNV_" ); +glob_put( "$tmpdir/*", "normalDirectory_PERM_CKDNV_" ); +createRemoteDir( "readonlyDirectory_PERM_M_" ); +glob_put( "$tmpdir/*", "readonlyDirectory_PERM_M_" ); +createRemoteDir( "readonlyDirectory_PERM_M_/subdir_PERM_CK_" ); +createRemoteDir( "readonlyDirectory_PERM_M_/subdir_PERM_CK_/subsubdir_PERM_CKDNV_" ); +glob_put( "$tmpdir/normalFile_PERM_WVND_.data", "readonlyDirectory_PERM_M_/subdir_PERM_CK_/subsubdir_PERM_CKDNV_" ); + + +csync(); +assertLocalAndRemoteDir( '', 0); + +system("sleep 1"); #make sure changes have different mtime + +printInfo( "Do some changes and see how they propagate" ); + +#1. remove the file than cannot be removed +# (they should be recovered) +unlink( localDir() . 'normalDirectory_PERM_CKDNV_/cannotBeRemoved_PERM_WVN_.data' ); +unlink( localDir() . 'readonlyDirectory_PERM_M_/cannotBeRemoved_PERM_WVN_.data' ); + +#2. remove the file that can be removed +# (they should properly be gone) +unlink( localDir() . 'normalDirectory_PERM_CKDNV_/canBeRemoved_PERM_D_.data' ); +unlink( localDir() . 'readonlyDirectory_PERM_M_/canBeRemoved_PERM_D_.data' ); + +#3. Edit the files that cannot be modified +# (they should be recovered, and a conflict shall be created) +system("echo 'modified' > ". localDir() . "normalDirectory_PERM_CKDNV_/canotBeModified_PERM_DVN_.data"); +system("echo 'modified_' > ". localDir() . "readonlyDirectory_PERM_M_/canotBeModified_PERM_DVN_.data"); + +#4. Edit other files +# (they should be uploaded) +system("echo '__modified' > ". localDir() . "normalDirectory_PERM_CKDNV_/canBeModified_PERM_W_.data"); +system("echo '__modified_' > ". localDir() . "readonlyDirectory_PERM_M_/canBeModified_PERM_W_.data"); + +#5. Create a new file in a read only folder +# (they should not be uploaded) +createLocalFile( localDir() . "readonlyDirectory_PERM_M_/newFile_PERM_WDNV_.data", 105 ); + +#6. Create a new file in a read only folder +# (should be uploaded) +createLocalFile( localDir() . "normalDirectory_PERM_CKDNV_/newFile_PERM_WDNV_.data", 106 ); + +#do the sync +csync(); + + +#1. +# File should be recovered +assert( -e localDir(). 'normalDirectory_PERM_CKDNV_/cannotBeRemoved_PERM_WVN_.data' ); +assert( -e localDir(). 'readonlyDirectory_PERM_M_/cannotBeRemoved_PERM_WVN_.data' ); + +#2. +# File should be deleted +assert( !-e localDir() . 'normalDirectory_PERM_CKDNV_/canBeRemoved_PERM_D_.data' ); +assert( !-e localDir() . 'readonlyDirectory_PERM_M_/canBeRemoved_PERM_D_.data' ); + +#3. +# File should be recovered +assert($md5CanotBeModified eq md5OfFile( localDir().'normalDirectory_PERM_CKDNV_/canotBeModified_PERM_DVN_.data' )); +assert($md5CanotBeModified eq md5OfFile( localDir().'readonlyDirectory_PERM_M_/canotBeModified_PERM_DVN_.data' )); +# and conflict created +# TODO check that the conflict file has the right content +assert( -e glob(localDir().'normalDirectory_PERM_CKDNV_/canotBeModified_PERM_DVN__conflict-*.data' ) ); +assert( -e glob(localDir().'readonlyDirectory_PERM_M_/canotBeModified_PERM_DVN__conflict-*.data' ) ); +# remove the conflicts for the next assertLocalAndRemoteDir +system("rm " . localDir().'normalDirectory_PERM_CKDNV_/canotBeModified_PERM_DVN__conflict-*.data' ); +system("rm " . localDir().'readonlyDirectory_PERM_M_/canotBeModified_PERM_DVN__conflict-*.data' ); + +#4. File should be updated, that's tested by assertLocalAndRemoteDir + +#5. +# The file should not exist on the remote +# TODO: test that the file is NOT on the server +# but still be there +assert( -e localDir() . "readonlyDirectory_PERM_M_/newFile_PERM_WDNV_.data" ); +# remove it so assertLocalAndRemoteDir succeed. +unlink(localDir() . "readonlyDirectory_PERM_M_/newFile_PERM_WDNV_.data"); + +#6. +# the file should be in the server and local +assert( -e localDir() . "normalDirectory_PERM_CKDNV_/newFile_PERM_WDNV_.data" ); + + +### Both side should still be the same +assertLocalAndRemoteDir( '', 0); + + + + +####################################################################### +printInfo( "remove the read only directory" ); +# -> It must be recovered +system("rm -r " . localDir().'readonlyDirectory_PERM_M_' ); +csync(); +assert( -e localDir(). 'readonlyDirectory_PERM_M_/cannotBeRemoved_PERM_WVN_.data' ); +assert( -e localDir(). 'readonlyDirectory_PERM_M_/subdir_PERM_CK_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); +assertLocalAndRemoteDir( '', 0); + + +####################################################################### +printInfo( "move a directory in a outside read only folder" ); +#Missing directory should be restored +#new directory should be uploaded +system("mv " . localDir().'readonlyDirectory_PERM_M_/subdir_PERM_CK_ ' . localDir().'normalDirectory_PERM_CKDNV_/subdir_PERM_CKDNV_' ); + +# two syncs may be necessary for now +csync(); +csync(); + +# old name restored +assert( -e localDir(). 'readonlyDirectory_PERM_M_/subdir_PERM_CK_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); + +# new still exist +assert( -e localDir(). 'normalDirectory_PERM_CKDNV_/subdir_PERM_CKDNV_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); + +assertLocalAndRemoteDir( '', 0); + + + + + +####################################################################### +printInfo( "rename a directory in a read only folder and move a directory to a read-only" ); + +# do a sync to update the database +csync(); + +#1. rename a directory in a read only folder +#Missing directory should be restored +#new directory should stay but not be uploaded +system("mv " . localDir().'readonlyDirectory_PERM_M_/subdir_PERM_CK_ ' . localDir().'readonlyDirectory_PERM_M_/newname_PERM_CK_' ); + +#2. move a directory from read to read only (move the directory from previous step) +system("mv " . localDir().'normalDirectory_PERM_CKDNV_/subdir_PERM_CKDNV_ ' . localDir().'readonlyDirectory_PERM_M_/moved_PERM_CK_' ); + +# two syncs may be necessary for now +csync(); +csync(); + +#1. +# old name restored +assert( -e localDir(). 'readonlyDirectory_PERM_M_/subdir_PERM_CK_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); + +# new still exist +assert( -e localDir(). 'readonlyDirectory_PERM_M_/newname_PERM_CK_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); +# but is not on server: so remove for assertLocalAndRemoteDir +system("rm -r " . localDir(). "readonlyDirectory_PERM_M_/newname_PERM_CK_"); + +#2. +# old removed +assert( ! -e localDir(). 'normalDirectory_PERM_CKDNV_/subdir_PERM_CKDNV_/' ); +# new still there +assert( -e localDir(). 'readonlyDirectory_PERM_M_/moved_PERM_CK_/subsubdir_PERM_CKDNV_/normalFile_PERM_WVND_.data' ); +#but not on server +system("rm -r " . localDir(). "readonlyDirectory_PERM_M_/moved_PERM_CK_"); + +assertLocalAndRemoteDir( '', 0); + + + +cleanup(); + + + + + + + + + + + + + + + + + diff --git a/csync/tests/ownCloud/t8.pl b/csync/tests/ownCloud/t8.pl new file mode 100755 index 000000000..e8825bc34 --- /dev/null +++ b/csync/tests/ownCloud/t8.pl @@ -0,0 +1,110 @@ +#!/usr/bin/perl +# +# Test script for the ownCloud module of csync. +# This script requires a running ownCloud instance accessible via HTTP. +# It does quite some fancy tests and asserts the results. +# +# Copyright (C) by Olivier Goffart +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +# + +use lib "."; + +use Carp::Assert; +use File::Copy; +use ownCloud::Test; + +use strict; + +print "Hello, this is t8, a tester for syncing of files on a case sensitive FS\n"; + + +# The test is run on a 'normal' file system, but we tell pwncloud that it is case preserving anyway +$ENV{OWNCLOUD_TEST_CASE_PRESERVING} = "1"; + +# FIXME! the code does not work with parallelism +$ENV{OWNCLOUD_MAX_PARALLEL}="1"; + +initTesting(); + +printInfo( "Syncing two files with the same name that differ with case" ); + +#create some files localy +my $tmpdir = "/tmp/t8/"; +mkdir($tmpdir); +createLocalFile( $tmpdir . "HELLO.dat", 100 ); +createLocalFile( $tmpdir . "Hello.dat", 150 ); +createLocalFile( $tmpdir . "Normal.dat", 110 ); + +#put them in some directories +createRemoteDir( "dir" ); +glob_put( "$tmpdir/*", "dir" ); + +csync(); + +# Check that only one of the two file was synced. +# The one that exist here is undefined, the current implementation will take the +# first one alphabetically, but the other one would also be fine. What's imporant +# is that there is only one. +assert( -e localDir() . 'dir/HELLO.dat' ); +assert( !-e localDir() . 'dir/Hello.dat' ); + +printInfo( "Remove one file should remove it on the server and download the other one" ); +unlink( localDir() . 'dir/HELLO.dat' ); + +csync(); +assert( -e localDir() . 'dir/Hello.dat' ); +assert( !-e localDir() . 'dir/HELLO.dat' ); +assertLocalAndRemoteDir( '', 0); + + +printInfo( "Renaming one file to the same name as another one with different casing" ); +moveRemoteFile( 'dir/Hello.dat', 'dir/NORMAL.dat'); + +csync(); + +#It should not have do the move +assert( -e localDir() . 'dir/Hello.dat' ); +assert( !-e localDir() . 'dir/NORMAL.dat' ); +assert( -e localDir() . 'dir/Normal.dat' ); + +printInfo( "Another directory with the same name but different casing is created" ); + +createRemoteDir( "DIR" ); +glob_put( "$tmpdir/*", "DIR" ); + +csync(); + +assert( !-e localDir() . 'DIR' ); + + +printInfo( "Remove the old dir localy" ); + +system("rm -r " . localDir() . "dir"); + +csync(); + +# now DIR was fetched +assert( -e localDir() . 'DIR' ); +assert( -e localDir() . 'DIR/HELLO.dat' ); +assert( !-e localDir() . 'DIR/Hello.dat' ); +assert( !-e localDir() . 'dir' ); + +# dir/NORMAL.dat is still on the server + +cleanup(); +system("rm -r " . $tmpdir); + diff --git a/doc/accountsetup.rst b/doc/accountsetup.rst index d3d15509e..972bd6ec3 100644 --- a/doc/accountsetup.rst +++ b/doc/accountsetup.rst @@ -1,45 +1,42 @@ Setting up an Account ===================== -If no account has been configured, the ownCloud Client will automatically -assist in connecting to your ownCloud server after the application has been -started. +If no account has been configured, the ownCloud Client automatically assist in +connecting to your ownCloud server after the application has been started. -As a first step, specify the URL to your Server. This is the same address -that is used in the browser. +To set up an account: + +1. Specify the URL to your Server. This is the same address that is used in the browser. .. image:: images/wizard_url.png :scale: 50 % .. note:: Make sure to use ``https://`` if the server supports it. Otherwise, - your password and all data will be transferred to the server unencrypted. - This makes it easy for third parties to intercept your communication, and - getting hold of your password! + your password and all data will be transferred to the server unencrypted. This + makes it easy for third parties to intercept your communication, and getting + hold of your password! -Next, enter the username and password. These are the same credentials used -to log into the web interface. +2. Enter the username and password. These are the same credentials used to log into the web interface. .. image:: images/wizard_user.png :scale: 50 % -Finally, choose the folder that ownCloud Client is supposed to sync the -contents of your ownCloud account with. By default, this is a folder -called `ownCloud`, which will be created in the home directory. +3. Choose the folder with which you want the ownCloud Client to synchronize the + contents of your ownCloud account. By default, this is a folder called + `ownCloud`. This folder is created in the home directory. .. image:: images/wizard_targetfolder.png :scale: 50 % -At this time, the synchronization between the root directories of the -ownCloud server will begin. + The synchronization between the root directories of the ownCloud server begins. .. image:: images/wizard_overview.png :scale: 50 % -If selecting a local folder that already contains data, there are -two options that exist. +When selecting a local folder that already contains data, you can choose from two options: -* Keep local data: If selected, the files in the local folder on the - client will be synced up to the ownCloud server. -* Start a clean sync: If selected, all files in the local folder on - the client will be deleted and therefore not synced to the ownCloud - server. +* :guilabel:`Keep local data`: When selected, the files in the local folder on + the client are synchronized to the ownCloud server. + +* :guilabel:`Start a clean sync`: When selected, all files in the local folder on the + client are deleted. These files are not syncrhonized to the ownCloud server. diff --git a/doc/architecture.rst b/doc/architecture.rst index 4099bba39..7496db4eb 100644 --- a/doc/architecture.rst +++ b/doc/architecture.rst @@ -1,88 +1,96 @@ -Appendix B: Architecture -======================== +Appendix B: History and Architecture +==================================== -.. index:: architecture +.. index:: architecture -The ownCloud project provides desktop sync clients to synchronize the -contents of local directories on the desktop machines to the ownCloud. +ownCloud provides desktop sync clients to synchronize the contents of local +directories from computers, tablets, and handheld devices to the ownCloud +server. -The syncing is done with csync_, a bidirectional file synchronizing tool which -provides both a command line client as well as a library. A special module for -csync was written to synchronize with ownCloud’s built-in WebDAV server. +Synchronization is accomplished using csync_, a bidirectional file +synchronizing tool that provides both a command line client as well as a +library. A special module for csync was written to synchronize with the +ownCloud built-in WebDAV server. -The ownCloud sync client is based on a tool called mirall initially written by -Duncan Mac Vicar. Later Klaas Freitag joined the project and enhanced it to work -with ownCloud server. +The ownCloud sync client is based on a tool called *mirall*, initially written +by Duncan Mac Vicar. Later Klaas Freitag joined the project and enhanced it to +function with the ownCloud server. -ownCloud Client is written in C++ using the `Qt Framework`_. As a result, the -ownCloud Client runs on the three important platforms Linux, Windows and MacOS. +The ownCloud Client software is written in C++ using the `Qt Framework`_. As a +result, the ownCloud Client runs on Linux, Windows, and MacOS. .. _csync: http://www.csync.org .. _`Qt Framework`: http://www.qt-project.org -The Sync Process ----------------- +The Synchronization Process +--------------------------- -First it is important to recall what syncing is: It tries to keep the files -on two repositories the same. That means if a file is added to one repository -it is going to be copied to the other repository. If a file is changed on one -repository, the change is propagated to the other repository. Also, if a file -is deleted on one side, it is deleted on the other. As a matter of fact, in -ownCloud syncing we do not have a typical client/server system where the -server is always master. +The process of synchronization keeps files in two separate repositories the same. When syncrhonized: -This is the major difference to other systems like a file backup where just -changes and new files are propagated but files never get deleted. +- If a file is added to one repository it is copied to the other synchronized repository. +- When a file is changed in one repository, the change is propagated to any + syncrhonized other repositories- If a file is deleted in one repository, it + is deleted in any other. -The ownCloud Client checks both repositories for changes frequently after a -certain time span. That is refered to as a sync run. In between the local -repository is monitored by a file system monitor system that starts a sync run -immediately if something was edited, added or removed. +It is important to note that the ownCloud synchronization process does not use +a typical client/server system where the server is always master. This is a +major difference between the ownCloud syncrhonizatin process and other systems +like a file backup, where only changes to files or folders and the addition of +new files are propagated, but these files and folders are never deleted unless +explicitly deleted in the backup. -Sync by Time versus ETag ------------------------- -.. index:: time stamps, file times, etag, unique id +During synchronization, the ownCloud Client checks both repositories for +changes frequently. This process is referred to as a *sync run*. In between +sync runs, the local repository is monitored by a file system monitoring +process that starts a sync run immediately if something was edited, added, or +removed. -Until the release of ownCloud 4.5 and ownCloud Client 1.1, ownCloud employed -a single file property to decide which file is newer and hence needs to be -synced to the other repository: the files modification time. +Synchronization by Time versus ETag +----------------------------------- +.. index:: time stamps, file times, etag, unique id + +Until the release of ownCloud 4.5 and ownCloud Client 1.1, the ownCloud +synchronization process employed a single file property -- the file modificatin +time -- to decide which file was newer and needed to be synchronized to the +other repository. The *modification timestamp* is part of the files metadata. It is available on -every relevant filesystem and is the natural indicator for a file change. -Modification timestamps do not require special action to create and have -a general meaning. One design goal of csync is to not require a special server -component, that’s why it was chosen as the backend component. +every relevant filesystem and is the typical indicator for a file change. +Modification timestamps do not require special action to create, and have a +general meaning. One design goal of csync is to not require a special server +component. This design goal is why csync was chosen as the backend component. -To compare the modification times of two files from different systems, -it is needed to operate on the same base. Before version 1.1.0, -csync requires both sides running on the exact same time, which can -be achieved through enterprise standard `NTP time synchronisation`_ on all -machines. +To compare the modification times of two files from different systems, csync +must operate on the same base. Before ownCloud Client version 1.1.0, csync +required both device repositories to run on the exact same time. This +requirement was achieved through the use of enterprise standard `NTP time +synchronisation`_ on all machines. -Since this strategy is rather fragile without NTP, ownCloud 4.5 introduced a -unique number, which changes whenever the file changes. Although it is a unique -value, it is not a hash of the file, but a randomly chosen number, which it will -transmit in the Etag_ field. Since the file number is guaranteed to change if -the file changes, it can now be used to determine if one of the files has -changed. +Because this timing strategy is rather fragile without the use of NTP, ownCloud +4.5 introduced a unique number (for each file?) that changes whenever the file +changes. Although this number is a unique value, it is not a hash of the file. +Instead, it is a randomly chosen number, that is transmitted in the Etag_ +field. Because the file number changes if the file changes, its use is +guaranteed to determine if one of the files has changed and, thereby, launching +a synchronization process. -.. note:: ownCloud Client 1.1 and newer require file ID capabilities on the - ownCloud server, hence using them with a server earlier than 4.5.0 is - not supported. +.. note:: ownCloud Client release 1.1 and later requires file ID capabilities + on the ownCloud server. Servers that run with release earlier than 4.5.0 do + not support using the file ID functionality. -Before the 1.3.0 release of the client the sync process might create faux -conflict files if time deviates. The original and the conflict files only -differed in the timestamp, but not in content. This behaviour was changed -towards a binary check if the files are different. +Before the 1.3.0 release of the Desktop Client, the synchronization process +might create faux conflict files if time deviates. Original and changed files +conflict only in their timestamp, but not in their content. This behaviour was +changed to employ a binary check if files differ. -Just like files, directories also hold a unique id, which changes whenever -one of the contained files or directories gets modified. Since this is a -recursive process, it significantly reduces the effort required for a sync -cycle, because the client will only walk directories with a modified unique id. +Like files, directories also hold a unique ID that changes whenever one of the +contained files or directories is modified. Because this is a recursive +process, it significantly reduces the effort required for a synchronization +cycle, because the client only analyzes directories with a modified ID. -This table outlines the different sync methods attempted depending -on server/client combination: +The following table outlines the different synchronization methods used, +depending on server/client combination: .. index:: compatiblity table @@ -98,10 +106,10 @@ on server/client combination: | 4.5 or later | 1.1 or later | File ID, Time Stamp | +--------------------+-------------------+----------------------------+ -It is highly recommended to upgrade to ownCloud 4.5 or later with ownCloud -Client 1.1 or later, since the time stamp-based sync mechanism can -lead to data loss in certain edge-cases, especially when multiple clients -are involved and one of them is not in sync with NTP time. +We strongly recommend using ownCloud Server release 4.5 or later when using +ownCloud Client 1.1 or later. Using incompatible time stamp-based +synchronization mechanism can lead to data loss in rare cases, especially when +multiple clients are involved and one utilizes a non-synchronized NTP time. .. _`NTP time synchronisation`: http://en.wikipedia.org/wiki/Network_Time_Protocol .. _Etag: http://en.wikipedia.org/wiki/HTTP_ETag @@ -109,27 +117,28 @@ are involved and one of them is not in sync with NTP time. Comparison and Conflict Cases ----------------------------- -In a sync run the client first has to detect if one of the two repositories have -changed files. On the local repository, the client traverses the file -tree and compares the modification time of each file with the value it was -before. The previous value is stored in the client's database. If it is not, it -means that the file has been added to the local repository. Note that on -the local side, the modificaton time a good attribute to detect changes because -it does not depend on time shifts and such. +As mentioned above, during a *sync run* the client must first detect if one of +the two repositories have changed files. On the local repository, the client +traverses the file tree and compares the modification time of each file with an +expected value stored in its database. If the value is not the same, the client +determines that the file has been modified in the local repository. -For the remote (ie. ownCloud) repository, the client compares the ETag of each -file with it's previous value. Again the previous value is queried from the -database. If the ETag is still the same, the file has not changed. +.. note:: On the local side, the modificaton time a good attribute to use for detecting changes, because +the value does not depend on time shifts and such. -In case a file has changed on both, the local and the remote repository since -the last sync run, it can not easily be decided which version of the file is -the one that should be used. However, changes to any side must not be lost. +For the remote (that is, ownCloud server) repository, the client compares the +ETag of each file with its expected value. Again, the expected ETag value is +queried from the client database. If the ETag is the same, the file has not +changed and no synchronization occurs. -That is called a **conflict case**. The client solves it by creating a conflict -file of the older of the two files and save the newer one under the original -file name. Conflict files are always created on the client and never on the -server. The conflict file has the same name as the original file appended with -the timestamp of the conflict detection. +In the event a file has changed on both the local and the remote repository +since the last sync run, it can not easily be decided which version of the file +is the one that should be used. However, changes to any side be lost. Instead, +a *conflict case* is created. The client resolves this conflic by creating a +conflict file of the older of the two files and saving the newer file under the +original file name. Conflict files are always created on the client and never +on the server. The conflict file uses the same name as the original file, but +is appended with the timestamp of the conflict detection. .. _ignored-files-label: @@ -137,40 +146,40 @@ the timestamp of the conflict detection. Ignored Files ------------- -ownCloud Client supports that certain files are excluded or ignored from -the synchronization. There are a couple of system wide file patterns which -come with the client. Custom patterns can be added by the user. +The ownCloud Client supports the ability to exclude or ignore certain files +from the synchronization process. Some system wide file patterns that are used +to exclude or ignore files are included with the client by default and the +ownCloud Client provides the ability to add custom patterns. -ownCloud Client will ignore the following files: +By default, the ownCloud Client ignores the following files: -* Files matched by one of the pattern in :ref:`ignoredFilesEditor-label` -* Files containing characters that do not work on certain file systems. - Currently, these characters are: `\, :, ?, *, ", >, <, |` -* Files starting in ``.csync_journal.db*`` (reserved for journalling) +- Files matched by one of the patterns defined in :ref:`ignoredFilesEditor-label`. +- Files containing characters that do not work on certain file systems (`\, :, ?, *, ", >, <, |`). +* Files starting in ``.csync_journal.db*``, as these files are reserved for journalling. -If a pattern is checkmarked in the `ignoredFilesEditor-label` (or if a line in -the exclude file starts with the character `]` directly followed -by the file pattern), files matching this pattern are considered fleeting -meta data. These files are ingored and *removed* by the client if found -in the sync folder. This is suitable for meta files created by some +If a pattern selected using a checkbox in the `ignoredFilesEditor-label` (or if +a line in the exclude file starts with the character `]` directly followed by +the file pattern), files matching the pattern are considered *fleeting meta +data*. These files are ingored and *removed* by the client if found in the +synchronized folder. This is suitable for meta files created by some applications that have no sustainable meaning. -If a pattern is ending with character `/` it means that only directories are -matched. The pattern is only applied for directory components of the checked -filename. +If a pattern ends with the backslash (`/`) character, only directories are +matched. The pattern is only applied for directory components of filenames +selected using the checkbox. -To match file names against the exclude patterns, the unix standard C -library function fnmatch is used. It checks the filename against the pattern -using standard shell wildcard pattern matching. Check `The opengroup website -` -for the gory details. +To match filenames against the exclude patterns, the unix standard C library +function fnmatch is used. This procesx checks the filename against the +specified pattern using standard shell wildcard pattern matching. For more +information, please refer to `The opengroup website +`. -The path that is checked is the relative path unter the sync root directory. +The path that is checked is the relative path under the sync root directory. + +**Pattern and File Match Examples:** -Examples: -^^^^^^^^^ +-----------+------------------------------+ -| Pattern | Matches | +| Pattern | File Matches | +===========+==============================+ | ``~$*`` | ``~$foo``, ``~$example.doc`` | +-----------+------------------------------+ @@ -183,15 +192,17 @@ Examples: The Sync Journal ---------------- -The client stores the ETag number in a per-directory database, -called the journal. It is a hidden file right in the directory -to be synced. +The client stores the ETag number in a per-directory database, called the +*journal*. This database is a hidden file contained in the directory to be +synchronized. -If the journal database gets removed, ownCloud Client's CSync backend will -rebuild the database by comparing the files and their modification times. Thus -it should be made sure that both server and client synchronized with NTP time -before restarting the client after a database removal. +If the journal database is removed, the ownCloud Client CSync backend rebuilds +the database by comparing the files and their modification times. This process +ensures that both server and client are synchronized using the appropriate NTP +time before restarting the client following a database removal. -Pressing ``F5`` in the Account Settings Dialog that allows to "reset" the -journal. That can be used to recreate the journal database. Use this only -if advised to do so by the developer or support staff. +Pressing ``F5`` while in the Account Settings Dialog enables you to "reset" the +journal. This function can be used to recreate the journal database. + +.. note:: We recommend that you use this function only when advised to do so by + ownCloud support staff. diff --git a/doc/autoupdate.rst b/doc/autoupdate.rst index f3175dc87..12fb963e8 100644 --- a/doc/autoupdate.rst +++ b/doc/autoupdate.rst @@ -1,81 +1,126 @@ The Automatic Updater ===================== -To ensure you're always using the latest version of ownCloud Client, an -auto-update mechanism has been added in Version 1.5.1. It will ensure -that will automatically profit from the latest features and bugfixes. +To ensure that you are always using the latest version of the ownCloud client, +an auto-update mechanism has been added in Version 1.5.1. The Automatic Updater +ensures that you automatically profit from the latest features and bugfixes. -The updater works differently depending on the operating system. +.. note:: The Automatic Updater functions differently, depending on the operating system. Basic Workflow -------------- +The following sections describe how to use the Automatic Updater on different operating systems: + Windows ^^^^^^^ -ownCloud client will check for updates and download the update if one -is available. You can view the status under ``Settings -> General -> Updates``. -If an update is available and has been successfully downloaded, ownCloud -Client will start a silent update prior to its next launch and then start itself. -If the silent update fails, the client offers a manual download. +The ownCloud client checks for updates and downloads them when available. You +can view the update status under ``Settings -> General -> Updates`` in the +ownCloud client. -.. note:: The user needs to be able to attain administrative privileges - to successfully perform the update. +If an update is available, and has been successfully downloaded, the ownCloud +client starts a silent update prior to its next launch and then restarts +itself. Should the silent update fail, the client offers a manual download. + +.. note:: Administrative privileges are required to perform the update. Mac OS X ^^^^^^^^ -If a new update is available, ownCloud client will ask the user to update -to the latest version using a pop-up dialog. This is the default for Mac -OS X applications which use the Sparkle framework. +If a new update is available, the ownCloud client initializes a pop-up dialog +to alert you of the update and requesting that you update to the latest +version. Due to their use of the Sparkle frameworks, this is the default +process for Mac OS X applications. Linux ^^^^^ -Since distributions provide their own update tool, ownCloud Client on Linux -will not perform any updates on its own. It will, however, check for the -latest version and passively notify the user (``Settings -> General -> Updates``) -if an update is available. +Linux distributions provide their own update tool, so ownCloud clients that use +the Linux operating system do not perform any updates on their own. Linux +operating systems do, however, check for the latest version of the ownCloud +client and passively notify the user (``Settings -> General -> Updates``) when +an update is available. -Preventing Auto Updates ------------------------ +Preventing Automatic Updates +---------------------------- -In controlled environment such as companies or universities, the auto-update -mechanism might not be desired as it interferes with controlled deployment -tools and policies. In this case, it is possible to disable the auto-updater -entirely: +In controlled environments, such as companies or universities, you might not +want to enable the auto-update mechanism, as it interferes with controlled +deployment tools and policies. To address this case, it is possible to disable +the auto-updater entirely. The following sections describe how to disable the +auto-update mechanism for different operating systems. -Windows -^^^^^^^ +Preventing Automatic Updates in Windows Environents +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -There are two alternative approaches: +You can prevent automatic updates from occuring in Windows environments using +one of two methods. The first method allows users to override the automatic +update check mechanism whereas the second method prevents any manual overrides. -1. In ``HKEY_LOCAL_MACHINE\Software\ownCloud\ownCloud``, add a key ``skipUpdateCheck`` (of type DWORD) with the value 1 to the machine. This key - can be manually overrideen by the same value in ``HKEY_CURRENT_USER``. +To prevent automatic updates, but allow manual overrides: -2. In ``HKEY_LOCAL_MACHINE\Software\Policies\ownCloud\ownCloud``, add a key - ``skipUpdateCheck`` (of type DWORD) with the value 1 to the machine. - Setting the value here cannot be overridden by the user and is the preferred - way to control the updater behavior via Group Policies. +1. Migrate to the following directory:: -Mac OS X -^^^^^^^^ + HKEY_LOCAL_MACHINE\Software\ownCloud\ownCloud -You can disable the update check via a system-wide ``.plist`` file located -at ``/Library/Preferences/com.owncloud.desktopclient.plist``. Add a new root -level item of type bool and the name ``skipUpdateCheck`` and set it to ``true``. -You can also just copy the file -``owncloud.app/Contents/Resources/deny_autoupdate_com.owncloud.desktopclient.plist``` +2. Add the key ``skipUpdateCheck`` (of type DWORD). + +3. Specify a value of ``1`` to the machine. + +To manually override this key, use the same value in ``HKEY_CURRENT_USER``. + +To prevent automatic updates and disallow manual overrides: + +.. note::This is the preferred method of controlling the updater behavior using Group Policies. + +1. Migrate to the following directory:: + + HKEY_LOCAL_MACHINE\Software\Policies\ownCloud\ownCloud + +2. Add the key ``skipUpdateCheck`` (of type DWORD). + +3. Specify a value of ``1`` to the machine. + + +Preventing Automatic Updates in Mac OS X Environments +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +You can disable the automatic update mechanism in MAC OS X operating systems +using the system-wide ``.plist`` file. To access this file: + +1. Using the Windows explorer, migrate to the following location:: + + /Library/Preferences/ + + 2. Locate and open the following file:: + + com.owncloud.desktopclient.plist + +3. Add a new root level item of type ``bool``. + +4. Name the item ``skipUpdateCheck``. + +5. Set the item to ``true``. + +Alternatively, you can copy the file +``owncloud.app/Contents/Resources/deny_autoupdate_com.owncloud.desktopclient.plist`` to ``/Library/Preferences/com.owncloud.desktopclient.plist``. -Linux -^^^^^ +Preventing Automatic Updates in Linux Environments +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Since there is no updating functionality, there is no need to remove the check. -If you want to disable the check nontheless, open a file called -``/etc/ownCloud/ownCloud.conf`` and add the following content:: +Because Linux does not provide automatic updating functionality, there is no +need to remove the automatic-update check. However, if you want to disable +this check: - [General] - skipUpdateCheck=true +1. Locate and open the following file:: + + /etc/ownCloud/ownCloud.conf + +2. Add the following content to the file:: + + [General] + skipUpdateCheck=true diff --git a/doc/building.rst b/doc/building.rst index daa5bd3c8..0a24811cb 100644 --- a/doc/building.rst +++ b/doc/building.rst @@ -3,20 +3,20 @@ Appendix A: Building the Client =============================== -This section explains how to build the ownCloud Client from source -for all major platforms. You should read this section if you want -to development on the desktop client. +This section explains how to build the ownCloud Client from source for all +major platforms. You should read this section if you want to develop for the +desktop client. -Note that the building instruction are subject to change as development -proceeds. It is important to check the version which is to built. +.. note:: Building instruction are subject to change as development proceeds. + Please check the version for which you want to built. -This instructions were updated to work with ownCloud Client 1.5. +The instructions contained in this topic were updated to work with version 1.5 of the ownCloud Client. Linux ----- 1. Add the `ownCloud repository from OBS`_. -2. Install the dependencies (as root, or via sudo): +2. Install the dependencies (as root, or using ``sudo``) using the following commands for your specific Linux distribution: * Debian/Ubuntu: ``apt-get update; apt-get build-dep owncloud-client`` * openSUSE: ``zypper ref; zypper si -d owncloud-client`` @@ -27,47 +27,51 @@ Linux Mac OS X -------- -Next to XCode (and the command line tools!), you will need some -extra dependencies. +In additon to needing XCode (along with the command line tools), developing in +the MAC OS X environment requires extra dependencies. You can install these +dependencies through MacPorts_ or Homebrew_. These dependencies are required +only on the build machine, because non-standard libs are deployed in the app +bundle. -You can install these dependencies via MacPorts_ or Homebrew_. -This is only needed on the build machine, since non-standard libs -will be deployed in the app bundle. +The tested and preferred way to develop in this environment is through the use +of HomeBrew_. The ownCloud team has its own repository containing non-standard +recipes. -The tested and preferred way is to use HomeBrew_. The ownCloud team has -its own repository which contains non-standard recipes. Add it with:: +To set up your build enviroment for development using HomeBrew_: + +1. Add the ownCloud repository using the following command:: brew tap owncloud/owncloud -Next, install the missing dependencies:: +2. Install any missing dependencies:: brew install $(brew deps mirall) - To build mirall, follow the `generic build instructions`_. -.. note:: - You should not call ``make install`` at any time, since the product of the - mirall build is an app bundle. Call ``make package`` instead to create an - install-ready disk image. +.. note:: Because the product from the mirall build is an app bundle, do not + call ``make install`` at any time. Instead, call ``make package`` to create an + install-ready disk image. -Windows (cross-compile) +Windows (Cross-Compile) ----------------------- -Due to the amount of dependencies, building the client for Windows -is **currently only supported on openSUSE**, by using the MinGW -cross compiler. You can set up openSUSE 12.1, 12.2 or 13.1 in a virtual machine -if you do not have it installed already. +Due to the large number of dependencies, building the client for Windows is +**currently only supported on openSUSE**, by using the MinGW cross compiler. +You can set up openSUSE 12.1, 12.2, or 13.1 in a virtual machine if you do not +have it installed already. -In order to cross-compile, the following repositories need to be added -via YaST or ``zypper ar`` (adjust when using openSUSE 12.2 or 13.1):: +To cross-compile: - zypper ar http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1/windows:mingw:win32.repo - zypper ar http://download.opensuse.org/repositories/windows:/mingw/openSUSE_13.1/windows:mingw.repo +1. Add the following repositories using YaST or ``zypper ar`` (adjust when using openSUSE 12.2 or 13.1): -Next, install the cross-compiler packages and the cross-compiled dependencies:: + - ``zypper ar http://download.opensuse.org/repositories/windows:/mingw:/win32/openSUSE_13.1/windows:mingw:win32.repo`` - zypper install cmake make mingw32-cross-binutils mingw32-cross-cpp mingw32-cross-gcc \ + - ``zypper ar http://download.opensuse.org/repositories/windows:/mingw/openSUSE_13.1/windows:mingw.repo`` + +2. Install the cross-compiler packages and the cross-compiled dependencies:: + + ``zypper install cmake make mingw32-cross-binutils mingw32-cross-cpp mingw32-cross-gcc \ mingw32-cross-gcc-c++ mingw32-cross-pkg-config mingw32-filesystem \ mingw32-headers mingw32-runtime site-config mingw32-libqt4-sql \ mingw32-libqt4-sql-sqlite mingw32-sqlite mingw32-libsqlite-devel \ @@ -78,74 +82,86 @@ Next, install the cross-compiler packages and the cross-compiled dependencies:: mingw32-libpng-devel mingw32-libsqlite mingw32-qtkeychain \ mingw32-qtkeychain-devel mingw32-dlfcn mingw32-libintl-devel \ mingw32-libneon-devel mingw32-libopenssl-devel mingw32-libproxy-devel \ - mingw32-libxml2-devel mingw32-zlib-devel + mingw32-libxml2-devel mingw32-zlib-devel`` -For the installer, the NSIS installer package is also required:: +3. For the installer, install the NSIS installer package:: - zypper install mingw32-cross-nsis + ``zypper install mingw32-cross-nsis`` -.. Usually, the following would be needed as well, but due to a bug in mingw, they - will currently not build properly from source. +4. Install the following plugin:: - mingw32-cross-nsis-plugin-processes mingw32-cross-nsis-plugin-uac + ``mingw32-cross-nsis-plugin-processes mingw32-cross-nsis-plugin-uac`` -You will also need to manually download and install the following files with -``rpm -ivh `` (They will also work with openSUSE 12.2 and newer):: + .. note:: This plugin is typically required. However, due to a current bug + in ``mingw``, the plugins do not currently build properly from source. - rpm -ihv http://download.tomahawk-player.org/packman/mingw:32/openSUSE_12.1/x86_64/mingw32-cross-nsis-plugin-processes-0-1.1.x86_64.rpm - rpm -ihv http://download.tomahawk-player.org/packman/mingw:32/openSUSE_12.1/x86_64/mingw32-cross-nsis-plugin-uac-0-3.1.x86_64.rpm +5. Manually download and install the following files using ``rpm -ivh ``: -Now, follow the `generic build instructions`_, but pay attention to -the following differences: + ..note:: These files operate using openSUSE 12.2 and newer. -For building for windows a special toolchain file has to be specified. -That makes cmake finding the platform specific tools. This parameter -has to be added to the call to cmake: + - ``rpm -ihv http://download.tomahawk-player.org/packman/mingw:32/openSUSE_12.1/x86_64/mingw32-cross-nsis-plugin-processes-0-1.1.x86_64.rpm`` - ``-DCMAKE_TOOLCHAIN_FILE=../mirall/admin/win/Toolchain-mingw32-openSUSE.cmake`` + - ``rpm -ihv http://download.tomahawk-player.org/packman/mingw:32/openSUSE_12.1/x86_64/mingw32-cross-nsis-plugin-uac-0-3.1.x86_64.rpm`` -Finally, just build by running ``make``. ``make package`` will produce -an NSIS-based installer, provided the NSIS mingw32 packages are installed. +6. Follow the `generic build instructions`_ + + .. note:: When building for Windows platforms, you must specify a special + toolchain file that enables cmake to locate the platform-specific tools. To add + this parameter to the call to cmake, enter + ``DCMAKE_TOOLCHAIN_FILE=../mirall/admin/win/Toolchain-mingw32-openSUSE.cmake``. + +7. Build by running ``make``. + + ..note:: Using ``make package`` produces an NSIS-based installer, provided + the NSIS mingw32 packages are installed. Generic Build Instructions -------------------------- .. _`generic build instructions` -Compared to previous versions building of Mirall has become more easy. -CSync, which is the sync engine library of Mirall, is now part of the -Mirall source repository, not, like it was before, a separate module. +Compared to previous versions, building Mirall has become easier. Unlike +earlier versions, CSync, which is the sync engine library of Mirall, is now +part of the Mirall source repository and not a separate module. -Mirall can be downloaded at ownCloud's `Client Download Page`_. +You can download Mirall from the ownCloud `Client Download Page`_. -If you want to build the leading edge version of the client, you should -use the latest versions of Mirall via Git_, like so:: +To build the most up to date version of the client: - git clone git://github.com/owncloud/mirall.git +1. Clone the latest versions of Mirall from Git_ as follows: -Next, create build directories:: + ``git clone git://github.com/owncloud/mirall.git`` - mkdir mirall-build +2. Create build directories: -Now build mirall:: + ``mkdir mirall-build`` - cd ../mirall-build - cmake -DCMAKE_BUILD_TYPE="Debug" ../mirall +3. Build mirall: -Note that it is important to use absolute pathes for the include- and library -directories. If this succeeds, call ``make``. The owncloud binary should appear -in the ``bin`` directory. You can also run ``make install`` to install the client to -``/usr/local/bin``. + ``cd ../mirall-build`` + ``cmake -DCMAKE_BUILD_TYPE="Debug" ../mirall`` -To build an installer/app bundle (requires the mingw32-cross-nsis packages on Windows):: + ..note:: You must use absolute pathes for the ``include`` and ``library`` directories. - make package +4. Call ``make``. -Known cmake parameters: + The owncloud binary appear in the ``bin`` directory. -* QTKEYCHAIN_LIBRARY=/path/to/qtkeychain.dylib -DQTKEYCHAIN_INCLUDE_DIR=/path/to/qtkeychain/: Use QtKeychain for stored credentials. When compiling with Qt5, the library is called qt5keychain.dylib. You need to compile QtKeychain with the same Qt version. -* WITH_DOC=TRUE: create doc and manpages via running ``make``; also adds install statements to be able to install it via ``make install``. -* CMAKE_PREFIX_PATH=/path/to/Qt5.2.0/5.2.0/yourarch/lib/cmake/ : to build with Qt5 -* BUILD_WITH_QT4=ON : to build with Qt4 even if Qt5 is found +5. (Optional) Call ``make install`` to install the client to the ``/usr/local/bin`` directory. + +6. (Optional) Call ``make package`` to build an installer/app bundle + + ..note:: This step requires the ``mingw32-cross-nsis`` packages be installed on Windows. + +The following are known cmake parameters: + +* ``QTKEYCHAIN_LIBRARY=/path/to/qtkeychain.dylib -DQTKEYCHAIN_INCLUDE_DIR=/path/to/qtkeychain/``: + Used for stored credentials. When compiling with Qt5, the library is called ``qt5keychain.dylib.`` + You need to compile QtKeychain with the same Qt version. +* ``WITH_DOC=TRUE``: Creates doc and manpages through running ``make``; also +* adds install statements, providing the ability to install using ``make +* install``. +* ``CMAKE_PREFIX_PATH=/path/to/Qt5.2.0/5.2.0/yourarch/lib/cmake/``: Builds using Qt5. +* ``BUILD_WITH_QT4=ON``: Builds using Qt4 (even if Qt5 is found). .. _`ownCloud repository from OBS`: http://software.opensuse.org/download/package?project=isv:ownCloud:devel&package=owncloud-client .. _CSync: http://www.csync.org diff --git a/doc/conffile.rst b/doc/conffile.rst index 760a3b4bd..57fcf0766 100644 --- a/doc/conffile.rst +++ b/doc/conffile.rst @@ -1,26 +1,24 @@ -ownCloud Client reads a configuration file. +The ownCloud Client reads a configuration file. You can locate this configuration files as follows: -On Linux it can be found in: +- On Linux distributions: ``$HOME/.local/share/data/ownCloud/owncloud.cfg`` -On Windows it can be found in: +- In Microsoft Windows systems: ``%LOCALAPPDATA%\ownCloud\owncloud.cfg`` -On Mac it can be found in: +- In MAC OS X systems: ``$HOME/Library/Application Support/ownCloud`` -It contains settings in the ini file format known from Windows. +The configuration file contains settings using the Microsoft Windows .ini file +format. You can overwrite changes using the ownCloud configuration dialog. -.. note:: Changes here should be done carefully as wrong settings can cause disfunctionality. +.. note:: Use caution when making changes to the ownCloud Client configuration + file. Incorrect settings can produce unintended results. -.. note:: Changes may be overwritten by using ownCloud's configuration dialog. +You can change the following configuration settings: -These are config settings that may be changed: +- ``remotePollInterval`` (default: ``30000``) -- Specifies the poll time for the remote repository in milliseconds. -``remotePollInterval`` (default: ``30000``) - Poll time for the remote repository in milliseconds - -``maxLogLines`` (default: ``20000``) - Maximum count of log lines shown in the log window +- ``maxLogLines`` (default: ``20000``) -- Specifies the maximum number of log lines displayed in the log window. diff --git a/doc/faq.rst b/doc/faq.rst index a6d493a66..cf5d830fb 100644 --- a/doc/faq.rst +++ b/doc/faq.rst @@ -1,16 +1,17 @@ FAQ === -Some files are continuously uploaded to the server even when they are not modified ----------------------------------------------------------------------------------- +**Issue:** + +Some files are continuously uploaded to the server, even when they are not modified. + +**Resolution:** It is possible that another program is changing the modification date of the file. -If the file is a ``.eml`` file, Windows automatically change all file all the time unless you remove -``\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers`` from -the windows registry. -See http://petersteier.wordpress.com/2011/10/22/windows-indexer-changes-modification-dates-of-eml-files/ - - - +If the file is uses the ``.eml`` extention, Windows automatically and +continually changes all files, unless you remove +``\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\PropertySystem\PropertyHandlers` +from the windows registry. +See http://petersteier.wordpress.com/2011/10/22/windows-indexer-changes-modification-dates-of-eml-files/ for more information. diff --git a/doc/images/client_setup_wizard_components.png b/doc/images/client_setup_wizard_components.png new file mode 100644 index 000000000..d66bb8b9a Binary files /dev/null and b/doc/images/client_setup_wizard_components.png differ diff --git a/doc/images/client_setup_wizard_install_finish.png b/doc/images/client_setup_wizard_install_finish.png new file mode 100644 index 000000000..545a29a35 Binary files /dev/null and b/doc/images/client_setup_wizard_install_finish.png differ diff --git a/doc/images/client_setup_wizard_install_progress.png b/doc/images/client_setup_wizard_install_progress.png new file mode 100644 index 000000000..9cb0f0859 Binary files /dev/null and b/doc/images/client_setup_wizard_install_progress.png differ diff --git a/doc/images/client_setup_wizard_location.png b/doc/images/client_setup_wizard_location.png new file mode 100644 index 000000000..c848ad235 Binary files /dev/null and b/doc/images/client_setup_wizard_location.png differ diff --git a/doc/images/client_setup_wizard_main.png b/doc/images/client_setup_wizard_main.png new file mode 100644 index 000000000..6e6cf9058 Binary files /dev/null and b/doc/images/client_setup_wizard_main.png differ diff --git a/doc/images/client_setup_wizard_reinstall.png b/doc/images/client_setup_wizard_reinstall.png new file mode 100644 index 000000000..d23d88acb Binary files /dev/null and b/doc/images/client_setup_wizard_reinstall.png differ diff --git a/doc/images/client_setup_wizard_uninstall.png b/doc/images/client_setup_wizard_uninstall.png new file mode 100644 index 000000000..9e7671db7 Binary files /dev/null and b/doc/images/client_setup_wizard_uninstall.png differ diff --git a/doc/images/client_setup_wizard_uninstall_2.png b/doc/images/client_setup_wizard_uninstall_2.png new file mode 100644 index 000000000..2de1ff22b Binary files /dev/null and b/doc/images/client_setup_wizard_uninstall_2.png differ diff --git a/doc/images/client_setup_wizard_uninstall_3.png b/doc/images/client_setup_wizard_uninstall_3.png new file mode 100644 index 000000000..745e0fb2e Binary files /dev/null and b/doc/images/client_setup_wizard_uninstall_3.png differ diff --git a/doc/images/download_button.png b/doc/images/download_button.png new file mode 100644 index 000000000..9dac7621d Binary files /dev/null and b/doc/images/download_button.png differ diff --git a/doc/images/log_output_window.png b/doc/images/log_output_window.png new file mode 100644 index 000000000..29aaf9ed5 Binary files /dev/null and b/doc/images/log_output_window.png differ diff --git a/doc/images/oc_client_download_options.png b/doc/images/oc_client_download_options.png new file mode 100644 index 000000000..cb94876a0 Binary files /dev/null and b/doc/images/oc_client_download_options.png differ diff --git a/doc/images/oc_client_linux_download.png b/doc/images/oc_client_linux_download.png new file mode 100644 index 000000000..c544d3cc8 Binary files /dev/null and b/doc/images/oc_client_linux_download.png differ diff --git a/doc/images/oc_client_macosx_download.png b/doc/images/oc_client_macosx_download.png new file mode 100644 index 000000000..4565de235 Binary files /dev/null and b/doc/images/oc_client_macosx_download.png differ diff --git a/doc/images/oc_client_windows_download.png b/doc/images/oc_client_windows_download.png new file mode 100644 index 000000000..24f0ed080 Binary files /dev/null and b/doc/images/oc_client_windows_download.png differ diff --git a/doc/images/oc_client_windows_option.png b/doc/images/oc_client_windows_option.png new file mode 100644 index 000000000..edd57d5d6 Binary files /dev/null and b/doc/images/oc_client_windows_option.png differ diff --git a/doc/images/oc_connection_wizard_credentials.png b/doc/images/oc_connection_wizard_credentials.png new file mode 100644 index 000000000..54056a25c Binary files /dev/null and b/doc/images/oc_connection_wizard_credentials.png differ diff --git a/doc/images/oc_connection_wizard_finish.png b/doc/images/oc_connection_wizard_finish.png new file mode 100644 index 000000000..8682e870c Binary files /dev/null and b/doc/images/oc_connection_wizard_finish.png differ diff --git a/doc/images/oc_connection_wizard_localfolder.png b/doc/images/oc_connection_wizard_localfolder.png new file mode 100644 index 000000000..3a0cbf9ff Binary files /dev/null and b/doc/images/oc_connection_wizard_localfolder.png differ diff --git a/doc/images/oc_connection_wizard_server.png b/doc/images/oc_connection_wizard_server.png new file mode 100644 index 000000000..87bb4723d Binary files /dev/null and b/doc/images/oc_connection_wizard_server.png differ diff --git a/doc/images/oc_website.png b/doc/images/oc_website.png new file mode 100644 index 000000000..31679f792 Binary files /dev/null and b/doc/images/oc_website.png differ diff --git a/doc/images/owncloud_logo_transparent.png b/doc/images/owncloud_logo_transparent.png new file mode 100644 index 000000000..4f42e4b8f Binary files /dev/null and b/doc/images/owncloud_logo_transparent.png differ diff --git a/doc/images/owncloud_small_wh_bl.jpg b/doc/images/owncloud_small_wh_bl.jpg new file mode 100644 index 000000000..10105fe48 Binary files /dev/null and b/doc/images/owncloud_small_wh_bl.jpg differ diff --git a/doc/images/save_log_file.png b/doc/images/save_log_file.png new file mode 100644 index 000000000..9f3abee01 Binary files /dev/null and b/doc/images/save_log_file.png differ diff --git a/doc/images/security_warning_windows.png b/doc/images/security_warning_windows.png new file mode 100644 index 000000000..45200b71b Binary files /dev/null and b/doc/images/security_warning_windows.png differ diff --git a/doc/index.rst b/doc/index.rst index 916544409..70bc8afaa 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -4,11 +4,12 @@ Contents ======== .. toctree:: - :maxdepth: 2 + :maxdepth: 3 introduction + installing accountsetup - visualtour + navigating advancedusage autoupdate diff --git a/doc/installing-linux.rst b/doc/installing-linux.rst new file mode 100644 index 000000000..b85f95049 --- /dev/null +++ b/doc/installing-linux.rst @@ -0,0 +1,208 @@ +.. _installing-linux: + +Installing the Linux Desktop Client +=================================== + +The ownCloud Desktop Client is provided for a wide range of Linux +distributions. The following table provides a list of Linux operating systems +and the specific distributions on which you can install the Desktop Client. + ++------------------+-------------------------+ +| Operating System | Distribution | ++==================+=========================+ +| CentOS (Redhat) | - Red Hat RHEL-6 | +| | - CentOS CentOS-6 | ++------------------+-------------------------+ +| Debian | - Debian 7.0 | +| | - Fedora 19 | +| | - Fedora 20 | ++------------------+-------------------------+ +| openSUSE | - openSUSE | +| | - Factory PPC | +| | - openSUSE Factory ARM | +| | - openSUSE Factory | +| | - openSUSE 13.1 Ports | +| | - openSUSE 13.1 | +| | - openSUSE 12.3 Ports | +| | - openSUSE 12.3 | +| | - openSUSE 12.2 | ++------------------+-------------------------+ +| SUSE (SLE) | - SLE 11 SP3 | ++------------------+-------------------------+ +| Ubuntu | - xUbuntu 14.04 | +| | - xUbuntu 13.10 | +| | - xUbuntu 12.10 | +| | - xUbuntu 12.04 | ++------------------+-------------------------+ + +General instructions for how to install the ownCloud Desktop Client on any +supported Linux distribution can be found on the `ownCloud download page +`_. + +Linux Installation Methods +-------------------------- + +You can install the ownCloud Desktop Client using either of the following three methods: + +- One Click Install (openSUSE and SUSE SLE distributions only) — Installs the + ownCloud Desktop using a bundled installation package. +- Adding the ownCloud package repository — Installs the ownCloud Desktop client + using a Linux terminal and keeps it up to date using the distribution's + package manager. + +.. note:: + + Manual command line installation requires that you perform the installation as root. + +- Binary package — Installs the ownCloud Desktop Client using a raw binary package. + +Installing the Desktop Client on Redhat or CentOS Linux Operating Systems +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To install the ownCloud Desktop Client on a Redhat or CentOS operating system manually: + +1. Open a Linux terminal window. + +2. Specify the directory in which you want to install the client. + + ``cd /etc/yum.repos.d/`` + +3. Choose and download the client for your specific distribution: + + * Red Hat RHEL-6: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/RedHat_RHEL-6/isv:ownCloud:desktop.repo`` + * CentOS CentOS-6: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/CentOS_CentOS-6/isv:ownCloud:desktop.repo`` + +4. Install the client. + + ``yum install owncloud-client`` + +5. After the installation completes, go to Setting Up the ownCloud Desktop Client. + +**Installing the Desktop Client on Debian 7.0 Linux Operating Systems Manually** + +To install the ownCloud Desktop Client on the Debian 7.0 distribution manually: + +1. Open a Linux terminal window. + +2. Download the client. + + ``echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Debian_7.0/ /' >> /etc/apt/sources.list.d/owncloud-client.list`` + +3. Download the package lists from any repositories and updates them to ensure the latest package versions and their dependencies. + + ``apt-get update`` + +4. Install the client. + + ``apt-get install owncloud-client`` + +5. (Optional) Download the apt-key for the Debian repository + + ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Debian_7.0/Release.key`` + +6. After the installation completes, go to Setting Up the ownCloud Desktop Client. + +Installing the Desktop Client on Fedora Linux Operating Systems +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To install the ownCloud Desktop Client on the Fedora operating system manually: + +1. Open a Linux terminal window. +2. Specify the directory in which you want to install the client. + + cd /etc/yum.repos.d/ + +3. Choose and download the client for your specific distribution + + * Fedora 19: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Fedora_19/isv:ownCloud:desktop.repo`` + * Fedora 20: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Fedora_20/isv:ownCloud:desktop.repo`` + +4. Install the client. + + ``yum install owncloud-client`` + +5. After the installation completes, go to Setting Up the ownCloud Desktop Client. + +Installing the Desktop Client on openSUSE Linux Operating Systems +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To install the ownCloud Desktop Client on the openSUSE operating system manually: + +1. Open a Linux terminal window. + +2. Choose and download the client for your specific distribution: + + * Factory PPC: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_Factory_PPC/isv:ownCloud:desktop.repo`` + * **Factory ARM**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_Factory_ARM/isv:ownCloud:desktop.repo`` + * **Factory**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_Factory/isv:ownCloud:desktop.repo`` + * **13.1 Ports**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_13.1_Ports/isv:ownCloud:desktop.repo`` + * **13.1**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_13.1/isv:ownCloud:desktop.repo`` + * **12.3 Ports**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_12.3_Ports/isv:ownCloud:desktop.repo`` + * **12.3**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_12.3/isv:ownCloud:desktop.repo`` + * **12.2**: ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/openSUSE_12.2/isv:ownCloud:desktop.repo`` + +3. Download any package metadata from the medium and store it in local cache. + + ``zypper refresh`` + +4. Install the client. + + ``zypper install owncloud-client`` + +5. After the installation completes, go to Setting Up the ownCloud Desktop Client. + +Installing the Desktop Client on SLE Linux Operating Systems +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To install the ownCloud Desktop Client on the SUSE Linux Enterprise (SLE) operating system. + +1. Open a Linux terminal window. + +2. Download the client. + + ``zypper addrepo http://download.opensuse.org/repositories/isv:ownCloud:desktop/SLE_11_SP3/isv:ownCloud:desktop.repo`` + +3. Download any package metadata from the medium and store it in local cache. + + ``zypper refresh`` + +4. Install the client. + + ``zypper install owncloud-client`` + +5. After the installation completes, go to Setting Up the ownCloud Desktop Client. + +Installing the Desktop Client on Ubuntu Linux Operating Systems +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To install the ownCloud Desktop Client on the Ubuntu operating system: + +1. Open a Linux terminal window. + +2. Choose and download the client for your specific distribution: + + * **xUbuntu 14.04**: ``sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_14.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"`` + * **xUbuntu 13.10**: ``sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_13.10/ /' >> /etc/apt/sources.list.d/owncloud-client.list"`` + * **xUbuntu 12.10**: ``sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_12.10/ /' >> /etc/apt/sources.list.d/owncloud-client.list"`` + * **xUbuntu 12.04**: ``sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_12.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"`` + +3. Download the package lists from any repositories and updates them to ensure the latest package versions and their dependencies. + + ``apt-get update`` + +4. Install the client. + + ``sudo apt-get install owncloud-client`` + +5. (Optional) Download the apt-key for the Ubuntu repository: + + * **xUbuntu 14.04**: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_14.04/Release.key`` + * **xUbuntu 13.10**: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_13.10/Release.key`` + * **xUbuntu 12.10**: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_12.10/Release.key`` + * **xUbuntu 12.04**: ``wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_12.04/Release.key`` + +6. (Optional) Add the apt key. + + ``sudo apt-key add - < Release.key`` + +7. After the installation completes, go to `Setting Up the ownCloud Desktop Client`_. diff --git a/doc/installing-macosx.rst b/doc/installing-macosx.rst new file mode 100644 index 000000000..664f0e1e3 --- /dev/null +++ b/doc/installing-macosx.rst @@ -0,0 +1,4 @@ +.. _installing-macosx: + +Installing the MAC OSX Desktop Client +===================================== \ No newline at end of file diff --git a/doc/installing-windows.rst b/doc/installing-windows.rst new file mode 100644 index 000000000..86df98fc3 --- /dev/null +++ b/doc/installing-windows.rst @@ -0,0 +1,102 @@ +.. _installing-windows: + +Installing the Windows Desktop Client +===================================== + +The ownCloud desktop client for Windows is provided as a Nullsoft Scriptable Install System (NSIS) setup file for machine-wide installation. + +To install the ownCloud desktop client: + +1. Access the ownCloud website. + + The ownCloud web page opens. + + .. image:: images/oc_website.png + + ownCloud Web Page + +2. Select Products > Desktop Clients from the website menu. + + The Desktop Client download page opens. + + .. image:: images/oc_client_download_options.png + + Desktop client download selections + +3. Click the 'Download for Windows' option. + The Desktop Client download page opens. + + .. image:: images/oc_client_windows_download.png + + ownCloud Windows Client Download + +4. Click the 'download' button. + + The Microsoft Windows client download begins. Depending on your browser + settings, the client installation file might launch automatically. + +5. Once the download completes, locate the client installation file in your system Downloads folder. + +6. Double-click the client installation file to start the download. + + The Open File - Security Warning dialog box opens. + + .. image:: images/security_warning_windows.png + + Open File - Security Warning dialog box + +7. Click 'Run' in the dialog box to begin the installation. + + On systems running virus protection software, you might have to verify + that you want to install the ownCloud Desktop Client software. + +8. Click 'Yes' to continue with the software installation. + + The ownCloud Setup Wizard window opens. + + .. image:: images/client_setup_wizard_main.png + + ownCloud Setup Wizard Window + +9. Click 'Next' to continue. + + The Choose Components window opens. + + .. image:: images/client_setup_wizard_components.png + + Choose Components Window + +10. Choose the components that you want to install for the Desktop Client. + + All relevant components for your platform are selected by default. + However, you can choose to exlude different components from the installation. + +11. Click Next to continue. + + The Choose Install Location window opens. + + .. image:: images/client_setup_wizard_location.png + + Choose Install Location window + +12. Verify the destination folder for the Desktop Client installation and then click Install. + + The Installing window opens. + + .. image:: images/client_setup_wizard_install_progress.png + + Installing window + +13. Once the installation completes, click 'Next' to continue. + + The Setup Wizard Completion window opens. + + .. image:: images/client_setup_wizard_install_finish.png + + Completion window + + You can choose to launch the Desktop Client from this window or launch the application at another time. + +14. Click 'Finish' to complete the installation. + + After the installation completes, go to Setting Up the ownCloud Desktop Client. diff --git a/doc/installing.rst b/doc/installing.rst new file mode 100644 index 000000000..34c9e09d9 --- /dev/null +++ b/doc/installing.rst @@ -0,0 +1,13 @@ +Installing the Synchronization Client +===================================== + +The latest version of the ownCloud Synchronization Client can be obtained from +the `ownCloud Website `_. You can download and install +the client on Windows, MAC OSX, and various Linux software distrubutions. The +following sections describe specific support and installation procedures for +the different software platforms: + +- :ref:`installing-windows` +- :ref:`installing-macosx` +- :ref:`installing-linux` + diff --git a/doc/introduction.rst b/doc/introduction.rst index 4cd1e8562..3bd3a164d 100644 --- a/doc/introduction.rst +++ b/doc/introduction.rst @@ -1,32 +1,14 @@ Introduction ============ -The ownCloud Sync Client is a desktop program installed on a user’s computer. -It allows a user to specify one or more directories on the local machine to -sync to the ownCloud server. It allows the user to always have the latest -files wherever they may be. When a change is made to the file on the -computer, it will sync to the ownCloud server via the sync client. +Available for Windows, MAC OS X, and various Linux distributions, the ownCloud +Sync client is a desktop program installed on your computer. The client enables +you to: -The ownCloud Sync Client is available for Windows, MAC OS X, and various -Linux distributions. +- Specify one or more directories on your computer that you want to synchronize + to the ownCloud server. +- Always have the latest files synchronized, wherever they are located. -Obtaining the Client --------------------- +Changes made to any synchronized file on the computer are automatically made to +the files on the ownCloud server using the sync client. -The latest version of the Client can be obtained on the ownCloud web site. - -ownCloud client for **Windows** is provided as a NSIS-based setup file for -machine-wide install. Installing the ownCloud client on **Mac OS** follows -the normal app bundle installation pattern: - -1. Download the installation file: Click ``ownCloud-x.y.z.dmg``, a window with - the ownCloud icon opens. -2. In that window, drag the ownCloud application into the ``Applications`` - folder. -3. On the right hand side From ``Applications``, choose ``ownCloud``. - -The ownCloud client is also provided as in a convenient repository for a wide -range of popular **Linux distributions**. - -Supported distributions are Fedora, openSUSE, Ubuntu and Debian. -To support other distributions, a is required, see :ref:`building-label` diff --git a/doc/logo-blue.pdf b/doc/logo-blue.pdf index 81562944c..5fd39dfa5 100644 Binary files a/doc/logo-blue.pdf and b/doc/logo-blue.pdf differ diff --git a/doc/navigating.rst b/doc/navigating.rst new file mode 100644 index 000000000..9e6bfeca9 --- /dev/null +++ b/doc/navigating.rst @@ -0,0 +1,313 @@ +Using the Synchronization Client +================================ + +.. index:: navigating, usage + +The ownCloud Client remains in the background and is visible as an icon in the +system tray (Windows, KDE), status bar (MAC OS X), or notification area +(Ubuntu). + +.. image:: images/icon.png + +**ownCloud Desktop Client icon** + +Using the Desktop Client Menu +----------------------------- + +A right click on the icon (left click on Ubuntu and Mac OS X) provides the +following menu: + +.. image:: images/menu.png + +**ownCloud Desktop Client menu** + +The Desktop Client menu provides the following options: + +* ``Open ownCloud in browser``: Launches the ownCloud WEB interface. +* ``Open folder 'ownCloud'``: Opens the ownCloud local folder. If you have defined multiple synchronization targets, the window displays each local folder. +* **Disk space indicator**: Indicates the amount of space currently used on the server. +* Operation indicator: Displays the status of the current synchronization process or indicates ``Up to date`` if the server and client are in sync. +* **Recent Changes**: Displays the last six files modified by the synchronization operations and provides access to the current synchronization status listing all changes since the last restart of the ownCloud client. +* ``Settings...``: Provides access to the settings menu. +* ``Help``: Opens a browser to display ownCloud Desktop Client Guide. +* ``Sign out``: Disables the client from continued synchronizations. +* ``Quit ownCloud``: Quits the ownCloud Client, ending any currently running + synchronizations. + +Using the Account Settings Window +--------------------------------- + +.. index:: account settings, user, password, Server URL + +The ``Account`` window provides a summary for general settings associated with the ownCloud account. This window enalbes you to manage any synchronized folders in the account and enables you to modify them. + +To access and modify the account settings: + +.. image:: images/settings_account.png + :scale: 50 % + +The fields and options in this window include: + +* ``Connected to as `` field: Indicates the ownCloud server to which the client is synchronizing and the user account on that server. + +* ``Add Folder...`` button: Provides the ability to add another folder to the synchronization process (see ``Adding a Folder``). + +* ``Pause/Resume`` button: Pauses the current sync (or prevents the client from starting a new sync) or resumes the sync process. + +* ``Remove`` button: Removes the selected folder from the sync process. This button is used when you want to synchronize only a few folders and not the root folder. If only the root folder is available, you must first remove the root from the synchronization and then add individual folders that you want to synchronize as desired. + +* ``Storage Usage`` field: Indicates the storage utilization on the ownCloud server. + +* ``Edit Ignored Files`` button: Launches the Ignored Files Editor. + +* ``Modify Account`` button: Enables you to change the ownCloud server to which you are synchronizing. This option launches the ``Setting up an Account`` windows (See ??). + + +Adding a Folder +^^^^^^^^^^^^^^^ + +The ``Add a Folder ...`` button enables you to add a new folder to the syncrhonization process. + +To add a new folder: + +1. Click the ``Add a Folder ...`` button in the Account window. + + The ``Add Folder...`` window opens + + .. image:: images/folderwizard_local.png + :scale: 50 % + + **``Add Folder...`` window (local folder)** + +2. Specify a *unique* path and alias name to the folder or use the ``Choose...`` button to locate the new folder on your system to which you want to synchronize. + + ..note:: Nested synchronizations are not supported. In other words, you + cannot add a folder that is already contained within another synchronized + folder. In addition, you cannot add a higher level (parent) folder that + contains a folder to which you are already synchronizing. By default, the + ownCloud Set Up Wizard syncrhonizes your entire ownCloud account to the root + folder of the ownCloud server. Due to this default setup, you must first remove + the top-level folder prior to specifying new synchronizations. + +3. Click 'Next' to continue. + + A window opens prompting you to select a remote destination folder on the + ownCloud server to which you want to synchronize. + + .. image:: images/folderwizard_remote.png + :scale: 50 % + + **``Add Folder...`` window (remote destination)** + +4. Select a folder on the ownCloud server to which you want to synchronize your newly added folder. + + ..note:: A server folder can only be synchronized with a particular client once. + If you attempt to sync the root directory, you cannot sync with other folders + on the server. Similarly, if you sync with folder ``/a``, you cannot create + another sync with ``/a/b``, since ``b`` is already being synched. + +Editing Ignored Files +^^^^^^^^^^^^^^^^^^^^^ + +The :guilabel:`Ignored Files Editor` provides a list of preconfigured files +that are ignored (that is, not synchronized) by the client and server during +synchronizations. The Ignored Files Editor enables you to add patterns for +files or directories that you want to exclude from the synchronization process. +In addition to using standard characters, the Ignored Files Editor enables you +to use wild cards (for example, using an asterisk ‘*’ to indicate multiple +characters or a question mark ‘?’ to incidate a single character). + +For additional information about this editor, see `Using the Ignored Files Editor`_ + +Using the Activity Settings Window +---------------------------------- + +.. index:: activity, recent changes, sync activity + +The Activity window provides an in-depth account of recent synchronization +activity. It shows files that have not been synchronized because they are on +the ignored files list or because they cannot be synced in a cross-platform +manner due to containing special characters that cannot be stored on certain +file systems. + +.. image:: images/settings_activity.png + :scale: 50 % + + **Activity settings window** + +You can open the Activity window in one of the following ways: + +- Click 'Activity' in the left frame of the ownCloud Settings window. + +- Invoke the window from the ownCloud Desktop Client menu by selecting ``Recent + Changes`` > ``Details...``. (See Using the Desktop Client Menu.) + +Using the General Settings Window +--------------------------------- + +.. index:: general settings, auto start, startup, desktop notifications + +The General settings window enables you to set general settings for the +ownCloud Desktop Client and provides information about the software version, +its creator, and the existance of any updates. + +.. image:: images/settings_general.png + :scale: 50 % + + **General settings window** + +The settings and information contained in this window are as follows: + +* ``Launch on System Startup`` checkbox: Provides the option to check (enable) + or uncheck (disable) whether the ownCloud Desktop Client launches upon system + startup. By default, this option is enabled (checked)once you have configured + your account. + +* ``Show Desktop Nofications`` checkbox: Provides the option to check (enable) + or uncheck (disable) bubble notifications alerting you as to when a set of + synchronization operations is performed. + +* ``Use Monochrome Icons`` checkbox: Provides the option to check (enable) or + uncheck (disable) the use of monochrome (visually less obtrusive) icons. + + .. note:: This option can be useful on MAC OSX platforms. + +* ``About`` field: Provides information about the software authors along with + pertinent build conditions. + + .. note:: Information in this field can be valuable when submitting a support request. + +* ``Updates`` field: Provides information about any available updates for the + ownCloud Desktop Client. + +Using the Network Settings Window +--------------------------------- + +.. index:: proxy settings, SOCKS, bandwith, throttling, limiting + +The Network settings window enables you to define network proxy settings as +well as limit the download and upload bandwidth utilization of file +synchronizations. + +.. image:: images/settings_network.png + :scale: 50 % + + **Network settings window** + +Specifying Proxy Settings +^^^^^^^^^^^^^^^^^^^^^^^^^ + +A proxy server is a server (for example, a computer system or an application) +that functions as an intermediary contact for requests from clients that are +seeking resources from other servers. For the ownCloud Desktop Client, you can +define the following proxy settings: + +* ``No Proxy`` option: Specifies that the ownCloud Client circumvent the default proxy configured on the system. +* ``Use system proxy`` option: Default setting. Follows the systems proxy + settings. On Linux systems, this setting uses the value of the variable + ``http_proxy``. +* ``Specify proxy manually as`` option: Enables you to specify + the following custom proxy settings: + - ``HTTP(S)``: Used when you are required to use an HTTP(S) proxy server (for example, Squid or Microsoft Forefront TMG). + - ``SOCKSv5``: Typically used in special company LAN setups, or in combination with the OpenSSH + dynamic application level forwarding feature (see ``ssh -D``). + - ``Host``: Host name or IP address of the proxy server along with the port number. HTTP proxies + typically listen over Ports 8080 (default) or 3128. SOCKS servers typically listen over port 1080. +* ``Proxy Server requires authentication`` checkbox: Provides the option to check (enable/require) or + uncheck (disable/not require) proxy server authentication. When not checked, the proxy server must + be configured to allow anonymous usage. When checked, a proxy server username and password is required. + +Bandwidth Limiting +^^^^^^^^^^^^^^^^^^ + +Synchronization of files between a client and server can utilized a lot of +bandwidth. Bandwidth limiting can assist in shaping the total download or +upload bandwidth (or both) of your client/server connection to a more +manageable level. By limiting your bandwidth usage, you can maintain free +bandwidth for other applications to use. + +The ownCloud Desktop Client enables you to limit (throttle) the bandwidth usage +for both file downloads and file uploads. The Download Bandwidth field (for +data flowing from the ownCloud server to the client) provides the following +options: + +- ``No limit`` option: The default setting for the client; specifies that there + are no limit settings on the amount of data downloaded from the server. + +- ``Limit to KBytes/s`` option: Limits (throttles) the bandwidth to + a customized value (in KBytes/second). + +The Upload Bandwidth field (for data flowing from the ownCloud client to the +server) provides the following options: + +- ``No limit`` option: The default setting for the client; specifies that there + are no limit settings on the amount of data downloaded from the server. + +- ``Limit automatically``: When enabled, the ownCloud client surrenders + available bandwidth to other applications. Use this option if there are + issues with real time communication (for example, the use of IP phone or live + streaming) in conjunction with the ownCloud Client. + +- ``Limit to KBytes/s`` option: Limits (throttles) the bandwidth to a + customized value (in KBytes/second). + + +.. _ignoredFilesEditor-label: + +Using the Ignored Files Editor +------------------------------ + +.. index:: ignored files, exclude files, pattern + +You might have some files or directories that you do not want to backup and +store on the server. To identify and exclude these files or directories, you +can use the *Ignored Files Editor* that is embedded in the ownCloud Desktop +Client. + +.. image:: images/ignored_files_editor.png + :scale: 50% + + Ignored Files Editor window + +The :guilabel:`Ignored Files Editor` enables you to define customized patterns that the +ownCloud Client uses to identify files and directories that you want to exclude +from the synchronization process. For your convenience, the editor is +pre-populated with a default list of typically ignore patterns. These patterns +are contained in a system file (typically ``sync-exclude.lst``) located in the +ownCloud Client application directory. You cannot modify these pre-populated +patterns directly from the editor. However, if necessary, you can hover over +any pattern in the list to show the path and filename associated with that +pattern, locate the file, and edit the ``sync-exclude.lst`` file. + +.. note:: Modifying the global exclude definition file might render the client + unusable or result in undesired behavior. + +Each line in the editor contains an ignore pattern string. When creating custom +patterns, in addition to being able to use normal characters to define an +ignore pattern, you can use wildcards characters for matching values. As an +example, you can use an asterisk (``*``) to idenfify an arbitrary number of +characters or a question mark (``?``) to identify a single character. + +Patterns that end with a slash character (``/``) are applied to only directory +components of the path being checked. + +.. note:: Custom entries are currently not validated for syntactical + correctness by the editor, but might fail to load correctly. + +Each pattern string in the list is preceded by a checkbox. When the check box +contains a check mark, in addition to ignoring the file or directory component +matched by the pattern, any matched files are also deemed "fleeting metadata" +and removed by the client. + +In addition to excluding files and directories that use patterns defined in +this list: + +- The ownCloud Client always excludes files containing characters that cannot + be synchronized to other file systems. + +- As of ownCloud Desktop Client version 1.5.0, files are removed that cause + individual errors three times during a synchronization. However, the client + provides the option of retrying a synchronization three additional times on + files that produce errors. + +For more detailed information see :ref:`ignored-files-label`. diff --git a/doc/ocdoc b/doc/ocdoc index 2c3e584b2..c612df399 160000 --- a/doc/ocdoc +++ b/doc/ocdoc @@ -1 +1 @@ -Subproject commit 2c3e584b2356dc4324e6e0720b7aa908aaa480a3 +Subproject commit c612df399e3c775a2f9db1dc5e39d25920ab467b diff --git a/doc/options.rst b/doc/options.rst index e3dc8875f..6f6536d84 100644 --- a/doc/options.rst +++ b/doc/options.rst @@ -1,24 +1,23 @@ When invoking the client from the command line, the following options are supported: ``-h``, ``--help`` - shows all the below options (opens a window on Windows) + Displays all the options below or, when used on Windows, opens a window displaying all options. ``--logwindow`` - open a window to show log output. + Opens a window displaying log output. ``--logfile`` `` - write log output to file . To write to stdout, specify `-` - as filename + Write log output to the file specified. To write to stdout, specify `-` as the filename. ``--logdir`` `` - write each sync log output in a new file in directory + Writes each synchronization log output in a new file in the specified directory. ``--logexpire`` `` - removes logs older than hours. (to be used with --logdir) + Removes logs older than the value specified (in hours). This command is used with ``--logdir``. ``--logflush`` - flush the log file after every write. + Clears (flushes) the log file after each write action. ``--confdir`` `` - Use the given configuration directory. + Uses the specified configuration directory. diff --git a/doc/owncloud.1.rst b/doc/owncloud.1.rst index a67cf1834..26e431e85 100644 --- a/doc/owncloud.1.rst +++ b/doc/owncloud.1.rst @@ -10,13 +10,9 @@ SYNOPSIS DESCRIPTION =========== -ownCloud is a file synchronisation desktop utility based on mirall. -It synchronizes files on your local machine with an ownCloud Server. If you -make a change to the files on one computer, it will flow across the others -using this desktop sync clients. +The ownCloud Client is a file synchronization desktop utility based on mirall. It synchronizes files on your local computer, tablet, or handheld device with an ownCloud Server. If you make a change to the files on one device, the change is propagated to all other syncrhonized devices using the desktop synchronization clients. -Normally you start the client by click on the desktop icon or start from the -application menu. After starting an ownCloud icon appears in the system tray. +Normally, you start the client by clicking on the desktop icon or by starting it from the client application menu. After starting, an ownCloud icon appears in the computer system tray or on your tablet or handheld device. Options ======= diff --git a/doc/owncloudcmd.1.rst b/doc/owncloudcmd.1.rst index 8ea736d03..e33e51917 100644 --- a/doc/owncloudcmd.1.rst +++ b/doc/owncloudcmd.1.rst @@ -9,38 +9,38 @@ SYNOPSIS DESCRIPTION =========== -owncloudcmd is the command line tool for the ownCloud file synchronisation -desktop utility, based on mirall. +owncloudcmd is the command line tool used for the ownCloud file synchronization +desktop utility. This command line tool is based on mirall. -Contrary to the :manpage:`owncloud(1)` GUI client, `owncloudcmd` will only -perform a single sync run and then exit. It thus replaces the `ocsync` binary -used for the same purpose in earlier releases. +Contrary to the :manpage:`owncloud(1)` GUI client, `owncloudcmd` only performs +a single sync run and then exits. In so doing, `owncloudcmd` replaces the +`ocsync` binary used for the same purpose in earlier releases. -A sync run will sync a single local directory with a WebDAV share on a +A *sync run* synchronizes a single local directory using a WebDAV share on a remote ownCloud server. To invoke the command line client, provide the local and the remote repository: The first parameter is the local directory. The second parameter is the server URL. -.. note:: Prior to 1.6, the tool only accepted ``owncloud://`` or ``ownclouds://`` - in place of ``http://`` and ``https://`` as a scheme. See ``Examples`` - for details. +.. note:: Prior to the 1.6 release of owncloudcmd, the tool only accepted + ``owncloud://`` or ``ownclouds://`` in place of ``http://`` and ``https://`` as + a scheme. See ``Examples`` for details. OPTIONS ======= ``--confdir`` `PATH` - The configuration dir where `csync.conf` is located + Specifies the configuration directory where `csync.conf` is located. ``--silent`` - Don't give verbose log output + Inhibits verbose log output. ``--httpproxy http://[user@pass:]:`` - Use ``server`` as HTTP proxy + Uses ``server`` as HTTP proxy. Example ======= -To sync the ownCloud directory ``Music`` to the local directory ``media/music`` +To synchronize the ownCloud directory ``Music`` to the local directory ``media/music`` through a proxy listening on port ``8080`` on the gateway machine ``192.168.178.1``, the command line would be:: @@ -49,7 +49,7 @@ the command line would be:: https://server/owncloud/remote.php/webdav/Music -Using the legacy scheme, it would look like this:: +Using the legacy scheme, it would be:: $ owncloudcmd --httpproxy http://192.168.178.1:8080 \ $HOME/media/music \ diff --git a/doc/owncloudcmd.rst b/doc/owncloudcmd.rst index 479d39b74..61836c37a 100644 --- a/doc/owncloudcmd.rst +++ b/doc/owncloudcmd.rst @@ -1,44 +1,43 @@ -The ownCloud Client packages come with a command line client which -can be used to synchronize ownCloud files to client machines. The -command line client is called ``owncloudcmd``. +The ownCloud Client packages contain a command line client that can be used to +synchronize ownCloud files to client machines. The command line client is +called ``owncloudcmd``. -owncloudcmd performs a single sync run and then exits. -That means that it processes the differences between client- and -server directory and propagates the files to get both repositories -on the same status. Contrary to the GUI based client, it does not -repeat syncs on its own. It does also not monitor for file system -changes. +owncloudcmd performs a single *sync run* and then exits the synchronization +process. In this manner, owncloudcmd processes the differences between client +and server directories and propagates the files to bring both repositories to +the same state. Contrary to the GUI-based client, owncloudcmd does not repeat +synchronizations on its own. It also does not monitor for file system changes. -To invoke the command line client, the user has to provide the local -and the remote repository urls:: +To invoke the owncloudcmd, you must provide the local and the remote repository +urls using the following command:: owncloudcmd [OPTIONS...] sourcedir owncloudurl where ``sourcedir`` is the local directory and ``owncloudurl`` is -the server url. +the server URL. -.. note:: Prior to 1.6, the tool only accepted ``owncloud://`` or - ``ownclouds://`` in place of ``http://`` and ``https://`` - as a scheme. See ``Examples`` for details. +.. note:: Prior to the 1.6 version of owncloudcmd, the tool only accepted + ``owncloud://`` or ``ownclouds://`` in place of ``http://`` and ``https://`` as + a scheme. See ``Examples`` for details. -These are other comand line switches supported by owncloudcmd: +Other comand line switches supported by owncloudcmd include the following: -``--silent`` - Don't give verbose log output +- ``--silent`` + Supresses verbose log output. -``--confdir`` `PATH` - Fetch or store configuration in this custom config directory +- ``--confdir`` `PATH` + Fetches or stores configuration in the specified configuration directory. -``--httpproxy http://[user@pass:]:`` - Use ``server`` as HTTP proxy +- ``--httpproxy http://[user@pass:]:`` + Uses the specified ``server`` as the HTTP proxy. Credential Handling ~~~~~~~~~~~~~~~~~~~ By default, owncloudcmd reads the client configuration and uses the credentials -of the GUI sync client. If no client was configured or to use a different user -to sync, the user password setting can be specified with the usual URL pattern, -for example:: +of the GUI syncrhonization client. If no client is configured, or if you choose +to use a different user to synchronize, you can specify the user password +setting with the usual URL pattern. For example:: https://user:secret@192.168.178.2/remote.php/webdav @@ -46,16 +45,16 @@ for example:: Example ~~~~~~~ -To sync the ownCloud directory ``Music`` to the local directory ``media/music`` -through a proxy listening on port ``8080`` on the gateway machine ``192.168.178.1``, -the command line would be:: +To synchronize the ownCloud directory ``Music`` to the local directory +``media/music`, through a proxy listening on port ``8080``, and on a gateway +machine using IP address ``192.168.178.1``, the command line would be:: $ owncloudcmd --httpproxy http://192.168.178.1:8080 \ $HOME/media/music \ https://server/owncloud/remote.php/webdav/Music -Using the legacy scheme, it would look like this:: +Using the legacy scheme, the command line would be:: $ owncloudcmd --httpproxy http://192.168.178.1:8080 \ $HOME/media/music \ diff --git a/doc/troubleshooting.rst b/doc/troubleshooting.rst index b1dc39f0b..c501a2576 100644 --- a/doc/troubleshooting.rst +++ b/doc/troubleshooting.rst @@ -1,158 +1,223 @@ Appendix C: Troubleshooting =========================== -If the client fails to start syncing it basically can have two -basic reasons: Either the server setup has a problem or the client -has a bug. When reporting bugs, it is crucial to find out what part -of the system causes the problem. +The following two general issues can result in failed synchronization: -Identifying basic functionality problems +- The server setup is incorrect. +- The client contains a bug. + +When reporting bugs, it is helpful if you first determine what part of the +system is causing the issue. + +Identifying Basic Functionality Problems ---------------------------------------- -:Perform a general ownCloud Server test: - A very first check is to verify that you can log on to ownClouds web - application. Assuming your ownCloud instance is installed at - ``http://yourserver.com/owncloud``, type - ``http://yourserver.com/owncloud/`` into your browsers address bar. +:Performing a general ownCloud Server test: + The first step in troubleshooting synchronization issues is to verify that + you can log on to the ownCloud web application. To verify connectivity to the + ownCloud server: + + - Open a browser window and enter the server address to your own server in the location/address bar. + + For example, if your ownCloud instance is installed at URL address + ``http://yourserver.com/owncloud``, enter ``http://yourserver.com/owncloud/`` + into your browsers location/address bar. - If you are not prompted to enter your user name and password, or if you - see a red warning box on the page, your server setup is not correct or needs - fixes. Please verify that your server installation is working correctly. + If you are not prompted for your username and password, or if a red warning + box appears on the page, your server setup requires modification. Please verify + that your server installation is working correctly. :Ensure the WebDAV API is working: - If all desktop clients fail to connect to ownCloud, but the access via the - web interface works, the problem often is a mis-configuration of the WebDAV - API. + If all desktop clients fail to connect to the ownCloud Server, but access + using the web interface functions properly, the problem is often a + misconfiguration of the WebDAV API. - The ownCloud client uses the built-in WebDAV access of the server content. - Verify that you can log on to ownClouds WebDAV server. Assuming your ownCloud - instance is installed at ``http://yourserver.com/owncloud``, type - ``http://yourserver.com/owncloud/remote.php/webdav`` into your browsers - address bar. + The ownCloud Client uses the built-in WebDAV access of the server content. + Verify that you can log on to ownClouds WebDAV server. To verify connectivity + with the ownCloud WebDAV server: - If you are prompted, but the authentication fails even though the credentials - your provided are correct, please ensure that your authentication backend - is configured properly. + - Open a browser window and enter the address to the ownCloud WebDAV server. + + For example, if your ownCloud instance is installed at + ``http://yourserver.com/owncloud``, your WebDAV server address is + ``http://yourserver.com/owncloud/remote.php/webdav``. + + If you are prompted for your username and password but, after providing the + correct credentials, authentication fails, please ensure that your + authentication backend is configured properly. :Use a WebDAV command line tool to test: - A more sophisticated test is to use a WebDAV command line client and log - into the ownCloud WebDAV server, such as a little app called cadaver, - available on Linux. It can be used to further verify that the WebDAV server is - running properly, for example by performing PROPFIND calls: + A more sophisticated test method for troubleshooting syncrhonization issues + is to use a WebDAV command line client and log into the ownCloud WebDAV server. + One such command line client -- called cadaver -- is available for Linux + distributions. You can use this application to further verify that the WebDAV + server is running properly using PROPFIND calls. + + As an example, after installing the cadaver app, you can issue the + ``propget`` command to obtain various properties pertaining to the current + directory and also verify WebDAV server connection. - ``propget .`` called within cadaver will return some properties of the current - directory and thus be a successful WebDAV connect. Isolating other issues ---------------------- -If the sync result is unreliable, please ensure that the folder synced with -ownCloud is not shared with other syncing apps. +Other issues can affect synchronization of your ownCloud files: -.. note:: Syncing the same directory with ownCloud and other sync software such - as Unison, rsync, Microsoft Windows Offline Folders or cloud services - such as DropBox or Microsoft SkyDrive is not supported and should - not be attempted. In the worst case, doing so can result in data - loss. +- If you find that the results of the synchronizations are unreliable, please + ensure that the folder to which you are synchronizing is not shared with + other synchronization applications. -If some files do not get take a look at the sync protocol. Some files are -automatically automatically being ignored because they are system files, -others get ignored because their file name contains characters that cannot -be represented on certain file systems. See :ref:`_ignored-files-label` for -details. + .. note:: Synchronizing the same directory with ownCloud and other + synchronization software such as Unison, rsync, Microsoft Windows Offline + Folders, or other cloud services such as DropBox or Microsoft SkyDrive is not + supported and should not be attempted. In the worst case, it is possible that + synchronizing folders or files using ownCloud and other synchronization + software or services can result in data loss. -If you are operating your own server and use the local storage backend (the -default), make sure that ownCloud has exclusive access to the directory. +- If you find that only specific files are not synrchronized, the + synchronization protocol might be having an effect. Some files are + automatically ignored because they are system files, other files might be + ignored because their filename contains characters that are not supported on + certain file systems. For more information about ignored files, see + :ref:`_ignored-files-label`. -.. note:: The data directory on the server is exclusive to ownCloud and must - not be modified manually. +- If you are operating your own server, and use the local storage backend (the + default), make sure that ownCloud has exclusive access to the directory. -If you are using a different backend, you can try to exclude a bug in the -backend by reverting to the local backend. + .. note:: The data directory on the server is exclusive to ownCloud and must not be modified manually. -Logfiles --------- + If you are using a different file backend on the server, you can try to exclude a bug in the + backend by reverting to the built-in backend. -Doing effective debugging requires to provide as much as relevant logs as -possible. The log output can help you with tracking down problem, and if you -report a bug, you're advised to include the output. +Log Files +--------- -Client Logfile -~~~~~~~~~~~~~~ +Effectively debugging software requires as much relative information as can be +obtained. To assist the ownCloud support personnel, please try to provide as +many relevant logs as possible. Log output can help with tracking down +problems and, if you report a bug, log output can help to resolve an issue more +quickly. -Start the client with ``--logwindow``. That opens a window providing a view -on the current log. It provides a Save button to let you save the log to a -file. +Obtaining the Client Log File +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -You can also open a log window for an already running session, by simply -starting the client again with this parameter. Syntax: +To obtain the client log file: + +1. Open the ownCloud Desktop Client. + +2. Press F12 on your keyboard. + + The Log Output window opens. + + .. image:: images/log_output_window.png + +3. Click the 'Save' button. + + The Save Log File window opens. + + .. image:: images/save_log_file.png + +4. Migrate to a location on your system where you want to save your log file. + +5. Name the log file and click the 'Save' button. + + The log files is saved in the location specifed. + +Alternatively, you can launch the ownCloud Log Output window using the +``--logwindow`` command. After issuing this command, the Log Output window +opens to show the current log. You can then follow the same procedures +mentioned above to save the log to a file. + + .. note:: You can also open a log window for an already running session, by + restarting the client using the following command: * Windows: ``C:\Program Files (x86)\ownCloud\owncloud.exe --logwindow`` * Mac OS X: ``/Applications/owncloud.app/Contents/MacOS/owncloud --logwindow`` * Linux: ``owncloud --logwindow`` -It is also possible to directly log to a directory, which is an useful option -in case the problem only happens ocassionally. In that case it is better to -create a huge amount of data, as the log window has a limited buffer. +Saving Files Directly +~~~~~~~~~~~~~~~~~~~~~ -To write logs to disk, start the client with ``--logfile ``, where -````, where ```` -is an existing directory. In case of ``--logdir``, each sync run will create a -new file. To limit the amount of data that accumulates over time, there is another -useful parameter: ``--logexpire ```. If that is combined with ```--logdir``` -the client automatically erases log data in that directory that is older than the -given expiry period. +The ownCloud client enables you to save log files directly to a predefined file +or directory. This is a useful option for troubleshooting sporadic issues as +it enables you to log large amounts of data and bypasses the limited buffer +settings associated with the log window. -For example, for a long running test where you intend to keep the log data of the -last two days, this would be the command line: +To save log files to a file or a directory: + +1. To save to a file, start the client using the ``--logfile `` command, + where ```` is the filename to which you want to save the file. + +2. To save to a directory, start the client using the ``--logdir `` command, where ```` + is an existing directory. + +When using the ``--logdir`` command, each sync run creates a new file. To limit +the amount of data that accumulates over time, you can specify the +``--logexpire `` command. When combined with the ``--logdir`` command, +the client automatically erases saved log data in the directory that is older +than the specified number of hours. + +As an example, to define a test where you keep log data for two days, you can +issue the following command: ``` owncloud --logdir /tmp/owncloud_logs --logexpire 48 ``` -ownCloud server Logfile -~~~~~~~~~~~~~~~~~~~~~~~ +ownCloud server Log File +~~~~~~~~~~~~~~~~~~~~~~~~ -The ownCloud server maintains an ownCloud specific logfile as well. It can and -must be enabled through the ownCloud Administration page. There you can adjust -the loglevel. It is advisable to set it to a verbose level like ``Debug`` or -``Info``. +The ownCloud server also maintains an ownCloud specific log file. This log file +must be enabled through the ownCloud Administration page. On that page, you can +adjust the log level. We recommend that when setting the log file level that +you set it to a verbose level like ``Debug`` or ``Info``. -The logfile can be viewed either in the web interface or can be found in the -filesystem in the ownCloud server data dir. +You can view the server log file using the web interface or you can open it +directly from the file system in the ownCloud server data directory. -Webserver Logfiles -~~~~~~~~~~~~~~~~~~ +.. todo:: Need more information on this. How is the log file accessed? + Need to explore procedural steps in access and in saving this file ... similar + to how the log file is managed for the client. Perhaps it is detailed in the + Admin Guide and a link should be provided from here. I will look into that + when I begin heavily editing the Admin Guide. -Also, please take a look at your webservers error log file to check if there -are problems. For Apache on Linux, the error logs usually can be found at -``/var/log/apache2``. A file called ``error_log`` shows errors like PHP code -problems. A file called ``access_log`` usually records all requests handled -by the server. Especially the access_log is a very good debugging tool as the -log line contains a lot of information of every request and it's result. +Webserver Log Files +~~~~~~~~~~~~~~~~~~~ + +It can be helpful to view your webservers error log file to isolate any +ownCloud-related problems. For Apache on Linux, the error logs are typically +located in the ``/var/log/apache2`` directory. Some helpful files include the +following: + +- ``error_log`` -- Maintains errors associated with PHP code. +- ``access_log`` -- Typically records all requests handled by the server; very + useful as a debugging tool because the log line contains information specific + to each request and its result. -More information about the apache logging can be found at +You can find more information about Apache logging at ``http://httpd.apache.org/docs/current/logs.html``. Core Dumps ---------- -In case of crashes of the client software, having a core dump helps to -debug the issue tremendously. +On MAC OS X and Linux systems, and in the unlikely event the client software +crashes, the client is able to write a core dump file. Obtaining a core dump +file can assist ownCloud Customer Support tremendously in the debugging +process. -The client is able to write a core dump in case of crashing on Linux and -MacOSX. To enable that, the environment variable ``OWNCLOUD_CORE_DUMP`` has -to be defined. +To enable the writing of core dump files, you must define the +``OWNCLOUD_CORE_DUMP`` environment variable on the system. -For example +For example: ``` OWNCLOUD_CORE_DUMP=1 owncloud ``` -starts the client with core dumping enabled. Core dumps appear in the -current working directory, and since they can be fairly large, it is -important to have plenty of disk space when running with dumps enabled. +This command starts the client with core dumping enabled and saves the files in +the current working directory. -If a core dump file should be transfered back to the developers it -should be compressed properly before. +.. note:: Core dump files can be fairly large. Before enabling core dumps on + your system, ensure that you have enough disk space to accommodate these files. + Also, due to their size, we strongly recommend that you properly compress any + core dump files prior to sending them to ownCloud Customer Support. diff --git a/shell_integration/CMakeLists.txt b/shell_integration/CMakeLists.txt new file mode 100644 index 000000000..8f561fbd3 --- /dev/null +++ b/shell_integration/CMakeLists.txt @@ -0,0 +1 @@ +add_subdirectory(testclient) diff --git a/shell_integration/MacOSX/LiferayNativity.xcworkspace/xcuserdata/mackie.xcuserdatad/UserInterfaceState.xcuserstate b/shell_integration/MacOSX/LiferayNativity.xcworkspace/xcuserdata/mackie.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 000000000..0d18ea8e3 Binary files /dev/null and b/shell_integration/MacOSX/LiferayNativity.xcworkspace/xcuserdata/mackie.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/shell_integration/testclient/CMakeLists.txt b/shell_integration/testclient/CMakeLists.txt new file mode 100644 index 000000000..ee201813a --- /dev/null +++ b/shell_integration/testclient/CMakeLists.txt @@ -0,0 +1,11 @@ +cmake_minimum_required(VERSION 2.6) +project(socketapiclient) +set(socketapiclient_SOURCES main.cpp window.cpp) +set(socketapiclient_HEADERS window.h) +qt_wrap_ui(socketapiclient_UI_SRCS window.ui) +add_executable(socketapiclient ${socketapiclient_SOURCES} ${socketapiclient_HEADERS} ${socketapiclient_UI_SRCS}) +target_link_libraries(socketapiclient ${QT_LIBRARIES}) +set_target_properties(socketapiclient PROPERTIES AUTOMOC TRUE) +qt5_use_modules(socketapiclient Widgets Network) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) +set_target_properties(socketapiclient PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) diff --git a/shell_integration/testclient/main.cpp b/shell_integration/testclient/main.cpp new file mode 100644 index 000000000..901767dc4 --- /dev/null +++ b/shell_integration/testclient/main.cpp @@ -0,0 +1,27 @@ +#include +#include +#include + +#include "window.h" + +int main(int argc, char *argv[]) +{ + QApplication app(argc, argv); + QLocalSocket sock; + QString sockAddr; +#ifdef Q_OS_UNIX + sockAddr = QDir::homePath() + QLatin1String("/.local/share/data/ownCloud/socket"); +#else + sockAddr = QLatin1String("\\\\.\\pipe\\ownCloud"); +#endif + Window win(&sock); + QObject::connect(&sock, SIGNAL(readyRead()), &win, SLOT(receive())); + QObject::connect(&sock, SIGNAL(error(QLocalSocket::LocalSocketError)), + &win, SLOT(receiveError(QLocalSocket::LocalSocketError))); + + win.show(); + sock.connectToServer(sockAddr, QIODevice::ReadWrite); + qDebug() << "Connecting to" << sockAddr; + + return app.exec(); +} diff --git a/shell_integration/testclient/socketclient.cpp b/shell_integration/testclient/socketclient.cpp new file mode 100644 index 000000000..dbe8bdfc1 --- /dev/null +++ b/shell_integration/testclient/socketclient.cpp @@ -0,0 +1,22 @@ + +#include "socketclient.h" + +SocketClient::SocketClient(QObject *parent) : + QObject(parent) + , sock(new QLocalSocket(this)) +{ + QString sockAddr; +#ifdef Q_OS_UNIX + sockAddr = QDir::homePath() + QLatin1String("/.local/share/data/ownCloud/"); +#else + sockAddr = QLatin1String("\\\\.\\pipe\\ownCloud"); +#endif + sock->connectToServer(sockAddr); + sock->open(QIODevice::ReadWrite); + connect(sock, SIGNAL(readyRead()), SLOT(writeData())); +} + +void SocketClient::writeData() +{ + qDebug() << sock->readAll(); +} diff --git a/shell_integration/testclient/socketclient.h b/shell_integration/testclient/socketclient.h new file mode 100644 index 000000000..59bb08863 --- /dev/null +++ b/shell_integration/testclient/socketclient.h @@ -0,0 +1,21 @@ +#ifndef SOCKETCLIENT_H +#define SOCKETCLIENT_H + +#include + +class QLocalSocket; + +class SocketClient : public QObject +{ + Q_OBJECT +public: + explicit SocketClient(QObject *parent = 0); + +public slots: + void writeData(); + +private: + QLocalSocket *sock; +}; + +#endif // SOCKETCLIENT_H diff --git a/shell_integration/testclient/window.cpp b/shell_integration/testclient/window.cpp new file mode 100644 index 000000000..a3f185b9e --- /dev/null +++ b/shell_integration/testclient/window.cpp @@ -0,0 +1,101 @@ +#include "window.h" +#include "ui_window.h" + +#include +#include + +class LogWindowHighlighter : public QSyntaxHighlighter +{ +public: + LogWindowHighlighter(QTextDocument *parent = 0); + +protected: + void highlightBlock(const QString &text); + void highlightHelper(const QString& text, const QTextCharFormat &format, const QString &exp); +}; + +Window::Window(QIODevice *dev, QWidget *parent) : + QWidget(parent), + ui(new Ui::Window) + , device(dev) +{ + ui->setupUi(this); + connect(ui->inputEdit->lineEdit(), SIGNAL(returnPressed()), SLOT(handleReturn())); + addDefaultItems(); + QFont f("Courier"); + f.setStyleHint(QFont::Monospace); + ui->outputs->setFont(f); + new LogWindowHighlighter(ui->outputs->document()); +} + +Window::~Window() +{ + delete ui; +} + +void Window::receive() +{ + QByteArray ba = device->readAll(); + ui->outputs->insertPlainText(QString::fromLatin1(ba)); +} + +void Window::receiveError(QLocalSocket::LocalSocketError error) +{ + qDebug() << "Error connecting to socket:" << error; +} + +void Window::handleReturn() +{ + QString cmd = ui->inputEdit->currentText()+QLatin1Char('\n'); + ui->outputs->insertPlainText(cmd); + device->write(cmd.toLatin1()); + ui->inputEdit->lineEdit()->clear(); +} + +void Window::addDefaultItems() +{ + QStringList commands; + commands << "RETRIEVE_FOLDER_STATUS:" << "RETRIEVE_FILE_STATUS:"; + ui->inputEdit->addItems(commands); +} + + +LogWindowHighlighter::LogWindowHighlighter(QTextDocument *parent) + : QSyntaxHighlighter(parent) +{ + +} + +void LogWindowHighlighter::highlightBlock(const QString &text) +{ + QTextCharFormat responseKeywordFormat; + responseKeywordFormat.setFontWeight(QFont::Bold); + responseKeywordFormat.setForeground(Qt::darkMagenta); + QString responsePattern = "(UPDATE_VIEW|BROADCAST:|STATUS:)"; + highlightHelper(text, responseKeywordFormat, responsePattern); + + QTextCharFormat messageKeywordFormat; + messageKeywordFormat.setFontWeight(QFont::Bold); + messageKeywordFormat.setForeground(Qt::darkYellow); + QString messagePattern = "(RETRIEVE_(FOLDER|FILE)_STATUS):"; + highlightHelper(text, messageKeywordFormat, messagePattern); +} + +void LogWindowHighlighter::highlightHelper(const QString& text, const QTextCharFormat &format, + const QString &pattern) +{ + QRegExp rex(pattern); + int index = text.indexOf(rex); + if (index >= 0) { + int len = rex.matchedLength(); + setFormat(index, len, format); + int lastMatchedEnd=index+len; + int secondDoubleDotIndex = text.indexOf(':', lastMatchedEnd); + if (secondDoubleDotIndex >= 0) { + QTextCharFormat boldFormat; + boldFormat.setFontWeight(QFont::Bold); + setFormat(lastMatchedEnd, secondDoubleDotIndex-lastMatchedEnd, boldFormat); + } + } + +} diff --git a/shell_integration/testclient/window.h b/shell_integration/testclient/window.h new file mode 100644 index 000000000..ec37d2154 --- /dev/null +++ b/shell_integration/testclient/window.h @@ -0,0 +1,32 @@ +#ifndef WINDOW_H +#define WINDOW_H + +#include +#include + +namespace Ui { +class Window; +} + +class Window : public QWidget +{ + Q_OBJECT + +public: + explicit Window(QIODevice *dev, QWidget *parent = 0); + ~Window(); + +public slots: + void receive(); + void receiveError(QLocalSocket::LocalSocketError); + +private slots: + void handleReturn(); + +private: + void addDefaultItems(); + Ui::Window *ui; + QIODevice *device; +}; + +#endif // WINDOW_H diff --git a/shell_integration/testclient/window.ui b/shell_integration/testclient/window.ui new file mode 100644 index 000000000..82ce2a901 --- /dev/null +++ b/shell_integration/testclient/window.ui @@ -0,0 +1,31 @@ + + + Window + + + + 0 + 0 + 400 + 300 + + + + SocketAPI Test Client + + + + + + true + + + + + + + + + + + diff --git a/src/3rdparty/QProgressIndicator/QProgressIndicator.h b/src/3rdparty/QProgressIndicator/QProgressIndicator.h index 0614da60d..ec81fb72b 100644 --- a/src/3rdparty/QProgressIndicator/QProgressIndicator.h +++ b/src/3rdparty/QProgressIndicator/QProgressIndicator.h @@ -64,8 +64,8 @@ public: */ const QColor & color() const { return m_color; } - virtual QSize sizeHint() const; - int heightForWidth(int w) const; + virtual QSize sizeHint() const Q_DECL_OVERRIDE; + int heightForWidth(int w) const Q_DECL_OVERRIDE; public slots: /*! Starts the spin animation. \sa stopAnimation isAnimated @@ -95,8 +95,8 @@ public slots: */ void setColor(const QColor & color); protected: - virtual void timerEvent(QTimerEvent * event); - virtual void paintEvent(QPaintEvent * event); + virtual void timerEvent(QTimerEvent * event) Q_DECL_OVERRIDE; + virtual void paintEvent(QPaintEvent * event) Q_DECL_OVERRIDE; private: int m_angle; int m_timerId; diff --git a/src/3rdparty/fancylineedit/fancylineedit.cpp b/src/3rdparty/fancylineedit/fancylineedit.cpp index cab09d4a7..e6357064b 100644 --- a/src/3rdparty/fancylineedit/fancylineedit.cpp +++ b/src/3rdparty/fancylineedit/fancylineedit.cpp @@ -99,7 +99,7 @@ class FancyLineEditPrivate : public QObject public: explicit FancyLineEditPrivate(FancyLineEdit *parent); - virtual bool eventFilter(QObject *obj, QEvent *event); + virtual bool eventFilter(QObject *obj, QEvent *event) Q_DECL_OVERRIDE; FancyLineEdit *m_lineEdit; QPixmap m_pixmap[2]; @@ -317,7 +317,7 @@ void FancyLineEdit::setButtonFocusPolicy(Side side, Qt::FocusPolicy policy) // IconButton - helper class to represent a clickable icon IconButton::IconButton(QWidget *parent) - : QAbstractButton(parent), m_autoHide(false) + : QAbstractButton(parent), m_iconOpacity(0), m_autoHide(false) { setCursor(Qt::ArrowCursor); setFocusPolicy(Qt::NoFocus); diff --git a/src/3rdparty/fancylineedit/fancylineedit.h b/src/3rdparty/fancylineedit/fancylineedit.h index a148c3df2..a9b995005 100644 --- a/src/3rdparty/fancylineedit/fancylineedit.h +++ b/src/3rdparty/fancylineedit/fancylineedit.h @@ -45,7 +45,7 @@ class IconButton: public QAbstractButton Q_PROPERTY(QPixmap pixmap READ pixmap WRITE setPixmap) public: explicit IconButton(QWidget *parent = 0); - void paintEvent(QPaintEvent *event); + void paintEvent(QPaintEvent *event) Q_DECL_OVERRIDE; void setPixmap(const QPixmap &pixmap) { m_pixmap = pixmap; update(); } QPixmap pixmap() const { return m_pixmap; } float iconOpacity() { return m_iconOpacity; } @@ -105,7 +105,7 @@ private slots: void iconClicked(); protected: - virtual void resizeEvent(QResizeEvent *e); + virtual void resizeEvent(QResizeEvent *e) Q_DECL_OVERRIDE; private: void updateMargins(); diff --git a/src/3rdparty/qtsingleapplication/qtsingleapplication.h b/src/3rdparty/qtsingleapplication/qtsingleapplication.h index 9e8d86cf5..384a71ce8 100644 --- a/src/3rdparty/qtsingleapplication/qtsingleapplication.h +++ b/src/3rdparty/qtsingleapplication/qtsingleapplication.h @@ -50,7 +50,7 @@ public: void setActivationWindow(QWidget* aw, bool activateOnMessage = true); QWidget* activationWindow() const; - bool event(QEvent *event); + bool event(QEvent *event) Q_DECL_OVERRIDE; QString applicationId() const; void setBlock(bool value); diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 669854fd2..ec15a250a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -48,21 +48,6 @@ if (APPLE) ) endif() -set(3rdparty_HEADER -3rdparty/qtsingleapplication/qtlocalpeer.h -3rdparty/qtsingleapplication/qtsingleapplication.h -3rdparty/qtsingleapplication/qtsinglecoreapplication.h -3rdparty/fancylineedit/fancylineedit.h -3rdparty/QProgressIndicator/QProgressIndicator.h -) - -if (APPLE) - list(APPEND 3rdparty_HEADER - 3rdparty/qtmacgoodies/src/macpreferenceswindow.h - 3rdparty/qtmacgoodies/src/macstandardicon.h - ) -endif() - if(NOT WIN32) list(APPEND 3rdparty_SRC 3rdparty/qtlockedfile/qtlockedfile_unix.cpp) else() @@ -79,9 +64,6 @@ set(3rdparty_INC ) set(libsync_SRCS - mirall/folderman.cpp - mirall/folder.cpp - mirall/folderwatcher.cpp mirall/syncresult.cpp mirall/mirallconfigfile.cpp mirall/syncengine.cpp @@ -103,8 +85,8 @@ set(libsync_SRCS mirall/account.cpp mirall/quotainfo.cpp mirall/clientproxy.cpp - mirall/syncrunfilelog.cpp mirall/cookiejar.cpp + mirall/syncfilestatus.cpp creds/dummycredentials.cpp creds/abstractcredentials.cpp creds/credentialsfactory.cpp @@ -129,24 +111,10 @@ else() ) endif() -IF( NOT WIN32 AND NOT APPLE ) - set(libsync_SRCS ${libsync_SRCS} mirall/folderwatcher_linux.cpp) -ENDIF() -IF( WIN32 ) - set(libsync_SRCS ${libsync_SRCS} mirall/folderwatcher_win.cpp) -ENDIF() -IF( APPLE ) - list(APPEND libsync_SRCS mirall/folderwatcher_mac.cpp) -ENDIF() - - # These headers are installed for libowncloudsync to be used by 3rd party apps set(owncloudsync_HEADERS mirall/account.h mirall/syncengine.h - mirall/folder.h - mirall/folderman.h - mirall/folderwatcher.h mirall/mirallconfigfile.h mirall/networkjobs.h mirall/progressdispatcher.h @@ -272,9 +240,13 @@ qt_wrap_ui(mirall_UI_SRCS ${mirall_UI}) set(mirall_SRCS mirall/application.cpp mirall/systray.cpp + mirall/folderman.cpp + mirall/folder.cpp + mirall/folderwatcher.cpp mirall/folderwizard.cpp mirall/folderstatusmodel.cpp mirall/protocolwidget.cpp + mirall/openfilemanager.cpp wizard/owncloudwizard.cpp wizard/owncloudsetuppage.cpp wizard/owncloudhttpcredspage.cpp @@ -294,63 +266,38 @@ set(mirall_SRCS mirall/owncloudgui.cpp mirall/socketapi.cpp mirall/sslbutton.cpp + mirall/syncrunfilelog.cpp ) - -set(mirall_HEADERS - mirall/application.h - mirall/systray.h - mirall/folderwizard.h - mirall/owncloudsetupwizard.h - wizard/owncloudwizard.h - wizard/owncloudsetuppage.h - wizard/owncloudhttpcredspage.h - wizard/abstractcredswizardpage.h - wizard/owncloudwizardresultpage.h - wizard/owncloudwizardcommon.h - wizard/owncloudshibbolethcredspage.h - wizard/owncloudadvancedsetuppage.h - mirall/folderstatusmodel.h - mirall/sslerrordialog.h - mirall/logbrowser.h - mirall/settingsdialog.h - mirall/generalsettings.h - mirall/networksettings.h - mirall/accountsettings.h - mirall/ignorelisteditor.h - mirall/protocolwidget.h - mirall/owncloudgui.h - mirall/socketapi.h - mirall/sslbutton.h -) - set(updater_SRCS updater/updateinfo.cpp updater/updater.cpp updater/ocupdater.cpp ) -set(updater_HEADERS - updater/updater.h - updater/ocupdater.h -) - IF( APPLE ) list(APPEND mirall_SRCS mirall/cocoainitializer_mac.mm) - list(APPEND mirall_HEADERS mirall/cocoainitializer.h) list(APPEND mirall_SRCS mirall/settingsdialogmac.cpp) - list(APPEND mirall_HEADERS mirall/settingsdialogmac.h) if(SPARKLE_FOUND) # Define this, we need to check in updater.cpp add_definitions( -DHAVE_SPARKLE ) list(APPEND updater_SRCS updater/sparkleupdater_mac.mm) - list(APPEND updater_HEADERS updater/sparkleupdater.h) endif() ENDIF() +IF( NOT WIN32 AND NOT APPLE ) +set(mirall_SRCS ${mirall_SRCS} mirall/folderwatcher_linux.cpp) +ENDIF() +IF( WIN32 ) +set(mirall_SRCS ${mirall_SRCS} mirall/folderwatcher_win.cpp) +ENDIF() +IF( APPLE ) +list(APPEND mirall_SRCS mirall/folderwatcher_mac.cpp) +ENDIF() + # csync is required. include_directories(../csync/src ../csync/src/httpbf/src ${CMAKE_CURRENT_BINARY_DIR}/../csync ${CMAKE_CURRENT_BINARY_DIR}/../csync/src ) include_directories(${3rdparty_INC}) @@ -358,12 +305,10 @@ include_directories(${3rdparty_INC}) qt_add_translation(mirall_I18N ${TRANSLATIONS}) set( final_src - ${mirall_HEADERS} ${MIRALL_RC_SRC} ${mirall_SRCS} ${mirall_UI_SRCS} ${mirallMoc} - ${mirall_HEADERS} ${mirall_I18N} ${3rdparty_SRC} ${3rdparty_MOC} diff --git a/src/creds/dummycredentials.h b/src/creds/dummycredentials.h index d6401b2ed..516280fe7 100644 --- a/src/creds/dummycredentials.h +++ b/src/creds/dummycredentials.h @@ -27,17 +27,17 @@ public: QString _user; QString _password; - void syncContextPreInit(CSYNC* ctx); - void syncContextPreStart(CSYNC* ctx); - bool changed(AbstractCredentials* credentials) const; - QString authType() const; - QString user() const; - QNetworkAccessManager* getQNAM() const; - bool ready() const; - bool stillValid(QNetworkReply *reply); - void fetch(Account*); - void persist(Account*); - void invalidateToken(Account *) {} + void syncContextPreInit(CSYNC* ctx) Q_DECL_OVERRIDE; + void syncContextPreStart(CSYNC* ctx) Q_DECL_OVERRIDE; + bool changed(AbstractCredentials* credentials) const Q_DECL_OVERRIDE; + QString authType() const Q_DECL_OVERRIDE; + QString user() const Q_DECL_OVERRIDE; + QNetworkAccessManager* getQNAM() const Q_DECL_OVERRIDE; + bool ready() const Q_DECL_OVERRIDE; + bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE; + void fetch(Account*) Q_DECL_OVERRIDE; + void persist(Account*) Q_DECL_OVERRIDE; + void invalidateToken(Account *) Q_DECL_OVERRIDE {} }; } // ns Mirall diff --git a/src/creds/httpcredentials.cpp b/src/creds/httpcredentials.cpp index f5ab3b68b..41902f909 100644 --- a/src/creds/httpcredentials.cpp +++ b/src/creds/httpcredentials.cpp @@ -48,8 +48,9 @@ int getauth(const char *prompt, void *userdata) { int re = 0; - QMutex mutex; - // ### safe? + + // ### safe? Not really. If the wizard is run in the main thread, the caccount could change during the sync. + // Ideally, http_credentials could be use userdata, but userdata is the SyncEngine. HttpCredentials* http_credentials = qobject_cast(AccountManager::instance()->account()->credentials()); if (!http_credentials) { @@ -63,10 +64,8 @@ int getauth(const char *prompt, if( qPrompt == QLatin1String("Enter your username:") ) { // qDebug() << "OOO Username requested!"; - QMutexLocker locker( &mutex ); qstrncpy( buf, user.toUtf8().constData(), len ); } else if( qPrompt == QLatin1String("Enter your password:") ) { - QMutexLocker locker( &mutex ); // qDebug() << "OOO Password requested!"; qstrncpy( buf, pwd.toUtf8().constData(), len ); } else { @@ -86,7 +85,7 @@ public: HttpCredentialsAccessManager(const HttpCredentials *cred, QObject* parent = 0) : MirallAccessManager(parent), _cred(cred) {} protected: - QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) { + QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) Q_DECL_OVERRIDE { QByteArray credHash = QByteArray(_cred->user().toUtf8()+":"+_cred->password().toUtf8()).toBase64(); QNetworkRequest req(request); req.setRawHeader(QByteArray("Authorization"), QByteArray("Basic ") + credHash); @@ -101,7 +100,8 @@ HttpCredentials::HttpCredentials() : _user(), _password(), _ready(false), - _fetchJobInProgress(false) + _fetchJobInProgress(false), + _readPwdFromDeprecatedPlace(false) { } @@ -230,6 +230,7 @@ void HttpCredentials::fetch(Account *account) job->setProperty("account", QVariant::fromValue(account)); job->start(); _fetchJobInProgress = true; + _readPwdFromDeprecatedPlace = true; } } bool HttpCredentials::stillValid(QNetworkReply *reply) @@ -261,18 +262,40 @@ void HttpCredentials::slotReadJobDone(QKeychain::Job *job) _ready = true; emit fetched(); } else { - if( error != NoError ) { - qDebug() << "Error while reading password" << job->errorString(); + // we come here if the password is empty or any other keychain + // error happend. + // In all error conditions it should + // ask the user for the password interactively now. + if( _readPwdFromDeprecatedPlace ) { + // there simply was not a password. Lets restart a read job without + // a settings object as we did it in older client releases. + ReadPasswordJob *job = new ReadPasswordJob(Theme::instance()->appName()); + + const QString kck = keychainKey(account->url().toString(), _user); + job->setKey(kck); + + connect(job, SIGNAL(finished(QKeychain::Job*)), SLOT(slotReadJobDone(QKeychain::Job*))); + job->setProperty("account", QVariant::fromValue(account)); + job->start(); + _readPwdFromDeprecatedPlace = false; // do try that only once. + _fetchJobInProgress = true; + // Note: if this read job succeeds, the value from the old place is still + // NOT persisted into the new account. + } else { + // interactive password dialog starts here + bool ok; + QString pwd = queryPassword(&ok); + _fetchJobInProgress = false; + if (ok) { + _password = pwd; + _ready = true; + persist(account); + } else { + _password = QString::null; + _ready = false; + } + emit fetched(); } - bool ok; - QString pwd = queryPassword(&ok); - _fetchJobInProgress = false; - if (ok) { - _password = pwd; - _ready = true; - persist(account); - } - emit fetched(); } } diff --git a/src/creds/httpcredentials.h b/src/creds/httpcredentials.h index 38402fc8c..e90b586e1 100644 --- a/src/creds/httpcredentials.h +++ b/src/creds/httpcredentials.h @@ -38,19 +38,19 @@ public: HttpCredentials(); HttpCredentials(const QString& user, const QString& password); - void syncContextPreInit(CSYNC* ctx); - void syncContextPreStart(CSYNC* ctx); - bool changed(AbstractCredentials* credentials) const; - QString authType() const; - QNetworkAccessManager* getQNAM() const; - bool ready() const; - void fetch(Account *account); - bool stillValid(QNetworkReply *reply); - void persist(Account *account); - QString user() const; + void syncContextPreInit(CSYNC* ctx) Q_DECL_OVERRIDE; + void syncContextPreStart(CSYNC* ctx) Q_DECL_OVERRIDE; + bool changed(AbstractCredentials* credentials) const Q_DECL_OVERRIDE; + QString authType() const Q_DECL_OVERRIDE; + QNetworkAccessManager* getQNAM() const Q_DECL_OVERRIDE; + bool ready() const Q_DECL_OVERRIDE; + void fetch(Account *account) Q_DECL_OVERRIDE; + bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE; + void persist(Account *account) Q_DECL_OVERRIDE; + QString user() const Q_DECL_OVERRIDE; QString password() const; QString queryPassword(bool *ok); - void invalidateToken(Account *account); + void invalidateToken(Account *account) Q_DECL_OVERRIDE; QString fetchUser(Account *account); private Q_SLOTS: @@ -63,6 +63,7 @@ private: QString _password; bool _ready; bool _fetchJobInProgress; //True if the keychain job is in progress or the input dialog visible + bool _readPwdFromDeprecatedPlace; }; } // ns Mirall diff --git a/src/creds/shibboleth/shibbolethuserjob.h b/src/creds/shibboleth/shibbolethuserjob.h index f6427a45b..3f2c10b59 100644 --- a/src/creds/shibboleth/shibbolethuserjob.h +++ b/src/creds/shibboleth/shibbolethuserjob.h @@ -26,17 +26,15 @@ class ShibbolethUserJob : public AbstractNetworkJob { Q_OBJECT public: explicit ShibbolethUserJob(Account *account, QObject* parent = 0); - void start(); +public slots: + void start() Q_DECL_OVERRIDE; signals: // is always emitted when the job is finished. user is empty in case of error. void userFetched(const QString &user); - // Another job need to be created - void tryAgain(); - private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; diff --git a/src/creds/shibboleth/shibbolethwebview.cpp b/src/creds/shibboleth/shibbolethwebview.cpp index c641d22c8..2961442fd 100644 --- a/src/creds/shibboleth/shibbolethwebview.cpp +++ b/src/creds/shibboleth/shibbolethwebview.cpp @@ -18,10 +18,8 @@ #include #include #include -#include #include -#include "creds/shibboleth/authenticationdialog.h" #include "creds/shibboleth/shibbolethwebview.h" #include "creds/shibbolethcredentials.h" #include "mirall/account.h" @@ -36,6 +34,7 @@ ShibbolethWebView::ShibbolethWebView(Account* account, QWidget* parent) : QWebView(parent) , _account(account) , _accepted(false) + , _cursorOverriden(false) { // no minimize setWindowFlags(Qt::Dialog); @@ -81,6 +80,10 @@ void ShibbolethWebView::onNewCookiesForUrl (const QList& cookieL void ShibbolethWebView::closeEvent(QCloseEvent *event) { + if (_cursorOverriden) { + QApplication::restoreOverrideCursor(); + } + if (!_accepted) { Q_EMIT rejected(); } @@ -89,12 +92,17 @@ void ShibbolethWebView::closeEvent(QCloseEvent *event) void ShibbolethWebView::slotLoadStarted() { - QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); + if (!_cursorOverriden) { + QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); + _cursorOverriden = true; + } } void ShibbolethWebView::slotLoadFinished(bool success) { - QApplication::restoreOverrideCursor(); + if (_cursorOverriden) { + QApplication::restoreOverrideCursor(); + } if (!title().isNull()) { setWindowTitle(tr("%1 - %2").arg(Theme::instance()->appNameGUI(), title())); @@ -106,23 +114,6 @@ void ShibbolethWebView::slotLoadFinished(bool success) } } -void ShibbolethWebView::slotHandleAuthentication(QNetworkReply *reply, QAuthenticator *authenticator) -{ - Q_UNUSED(reply) - QUrl url = reply->url(); - // show only scheme, host and port - QUrl reducedUrl; - reducedUrl.setScheme(url.scheme()); - reducedUrl.setHost(url.host()); - reducedUrl.setPort(url.port()); - - AuthenticationDialog dialog(authenticator->realm(), reducedUrl.toString(), this); - if (dialog.exec() == QDialog::Accepted) { - authenticator->setUser(dialog.user()); - authenticator->setPassword(dialog.password()); - } -} - void ShibbolethWebView::accept() { _accepted = true; diff --git a/src/creds/shibboleth/shibbolethwebview.h b/src/creds/shibboleth/shibbolethwebview.h index 1999dfde9..25eb03274 100644 --- a/src/creds/shibboleth/shibbolethwebview.h +++ b/src/creds/shibboleth/shibbolethwebview.h @@ -37,7 +37,7 @@ public: ShibbolethWebView(Account *account, ShibbolethCookieJar* jar, QWidget* parent = 0); ~ShibbolethWebView(); - void closeEvent(QCloseEvent *event); + void closeEvent(QCloseEvent *event) Q_DECL_OVERRIDE; Q_SIGNALS: void shibbolethCookieReceived(const QNetworkCookie &cookie, Account *account); @@ -47,7 +47,6 @@ private Q_SLOTS: void onNewCookiesForUrl(const QList& cookieList, const QUrl& url); void slotLoadStarted(); void slotLoadFinished(bool success); - void slotHandleAuthentication(QNetworkReply*,QAuthenticator*); protected: void accept(); @@ -56,6 +55,7 @@ private: void setup(Account *account, ShibbolethCookieJar* jar); QPointer _account; bool _accepted; + bool _cursorOverriden; }; } // ns Mirall diff --git a/src/creds/shibbolethcredentials.cpp b/src/creds/shibbolethcredentials.cpp index 6c01efc53..5b83f701f 100644 --- a/src/creds/shibbolethcredentials.cpp +++ b/src/creds/shibbolethcredentials.cpp @@ -16,9 +16,11 @@ #include #include #include +#include #include #include "creds/shibbolethcredentials.h" +#include "creds/shibboleth/authenticationdialog.h" #include "creds/shibboleth/shibbolethwebview.h" #include "creds/shibboleth/shibbolethrefresher.h" #include "creds/shibbolethcredentials.h" @@ -92,6 +94,23 @@ ShibbolethCredentials::ShibbolethCredentials() _browser(0) {} +ShibbolethCredentials::ShibbolethCredentials(const QNetworkCookie& cookie, Account* account) + : _ready(true), + _stillValid(true), + _fetchJobInProgress(false), + _browser(0), + _shibCookie(cookie) +{ + if (account) { + /* The _user has not yet been fetched, so fetch it now */ + ShibbolethUserJob *job = new ShibbolethUserJob(account, this); + connect(job, SIGNAL(userFetched(QString)), this, SLOT(slotUserFetched(QString))); + QTimer::singleShot(1234, job, SLOT(start())); + + } +} + + void ShibbolethCredentials::syncContextPreInit(CSYNC* ctx) { csync_set_auth_callback (ctx, handleNeonSSLProblems); @@ -154,6 +173,8 @@ QNetworkAccessManager* ShibbolethCredentials::getQNAM() const QNetworkAccessManager* qnam(new MirallAccessManager); connect(qnam, SIGNAL(finished(QNetworkReply*)), this, SLOT(slotReplyFinished(QNetworkReply*))); + connect(qnam, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), + SLOT(slotHandleAuthentication(QNetworkReply*,QAuthenticator*))); return qnam; } @@ -298,6 +319,23 @@ void ShibbolethCredentials::invalidateAndFetch(Account* account) job->start(); } +void ShibbolethCredentials::slotHandleAuthentication(QNetworkReply *reply, QAuthenticator *authenticator) +{ + Q_UNUSED(reply) + QUrl url = reply->url(); + // show only scheme, host and port + QUrl reducedUrl; + reducedUrl.setScheme(url.scheme()); + reducedUrl.setHost(url.host()); + reducedUrl.setPort(url.port()); + + AuthenticationDialog dialog(authenticator->realm(), reducedUrl.toString()); + if (dialog.exec() == QDialog::Accepted) { + authenticator->setUser(dialog.user()); + authenticator->setPassword(dialog.password()); + } +} + void ShibbolethCredentials::slotInvalidateAndFetchInvalidateDone(QKeychain::Job* job) { Account *account = qvariant_cast(job->property("account")); @@ -350,6 +388,13 @@ void ShibbolethCredentials::showLoginWindow(Account* account) // FIXME On OS X this does not raise properly return; } + + CookieJar *jar = static_cast(account->networkAccessManager()->cookieJar()); + // When opening a new window clear all the session cookie that might keep the user from logging in + // (or the session may already be open in the server, and there will not be redirect asking for the + // real long term cookie we want to store) + jar->clearSessionCookies(); + _browser = new ShibbolethWebView(account); connect(_browser, SIGNAL(shibbolethCookieReceived(QNetworkCookie, Account*)), this, SLOT(onShibbolethCookieReceived(QNetworkCookie, Account*)), Qt::QueuedConnection); diff --git a/src/creds/shibbolethcredentials.h b/src/creds/shibbolethcredentials.h index fe23ab208..5a58fac4f 100644 --- a/src/creds/shibbolethcredentials.h +++ b/src/creds/shibbolethcredentials.h @@ -26,6 +26,8 @@ namespace QKeychain { class Job; } +class QAuthenticator; + namespace Mirall { @@ -38,17 +40,20 @@ Q_OBJECT public: ShibbolethCredentials(); - void syncContextPreInit(CSYNC* ctx); - void syncContextPreStart(CSYNC* ctx); - bool changed(AbstractCredentials* credentials) const; - QString authType() const; - QString user() const; - QNetworkAccessManager* getQNAM() const; - bool ready() const; - void fetch(Account *account); - bool stillValid(QNetworkReply *reply); - void persist(Account *account); - void invalidateToken(Account *account); + /* create a credidentials for an already connected account */ + ShibbolethCredentials(const QNetworkCookie &cookie, Account *acc); + + void syncContextPreInit(CSYNC* ctx) Q_DECL_OVERRIDE; + void syncContextPreStart(CSYNC* ctx) Q_DECL_OVERRIDE; + bool changed(AbstractCredentials* credentials) const Q_DECL_OVERRIDE; + QString authType() const Q_DECL_OVERRIDE; + QString user() const Q_DECL_OVERRIDE; + QNetworkAccessManager* getQNAM() const Q_DECL_OVERRIDE; + bool ready() const Q_DECL_OVERRIDE; + void fetch(Account *account) Q_DECL_OVERRIDE; + bool stillValid(QNetworkReply *reply) Q_DECL_OVERRIDE; + void persist(Account *account) Q_DECL_OVERRIDE; + void invalidateToken(Account *account) Q_DECL_OVERRIDE; void showLoginWindow(Account*); @@ -57,7 +62,8 @@ public: static QByteArray shibCookieName(); public Q_SLOTS: - void invalidateAndFetch(Account *account); + void invalidateAndFetch(Account *account) Q_DECL_OVERRIDE; + void slotHandleAuthentication(QNetworkReply*,QAuthenticator*); private Q_SLOTS: void onShibbolethCookieReceived(const QNetworkCookie&, Account*); diff --git a/src/creds/tokencredentials.cpp b/src/creds/tokencredentials.cpp index e2607e0da..7e9a56238 100644 --- a/src/creds/tokencredentials.cpp +++ b/src/creds/tokencredentials.cpp @@ -79,15 +79,16 @@ public: : MirallAccessManager(parent), _cred(cred) {} protected: QNetworkReply *createRequest(Operation op, const QNetworkRequest &request, QIODevice *outgoingData) { - QByteArray credHash = QByteArray(_cred->user().toUtf8()+":"+_cred->password().toUtf8()).toBase64(); - QNetworkRequest req(request); - req.setRawHeader(QByteArray("Authorization"), QByteArray("Basic ") + credHash); - //qDebug() << "Request for " << req.url() << "with authorization" << QByteArray::fromBase64(credHash); + if (_cred->user().isEmpty() || _cred->password().isEmpty() || _cred->_token.isEmpty()) { + qWarning() << Q_FUNC_INFO << "Empty user/password/token provided!"; + } - // Append token cookie - QList cookies = request.header(QNetworkRequest::CookieHeader).value >(); - cookies.append(QNetworkCookie::parseCookies(_cred->_token.toUtf8())); - req.setHeader(QNetworkRequest::CookieHeader, QVariant::fromValue(cookies)); + QNetworkRequest req(request); + + QByteArray credHash = QByteArray(_cred->user().toUtf8()+":"+_cred->password().toUtf8()).toBase64(); + req.setRawHeader(QByteArray("Authorization"), QByteArray("Basic ") + credHash); + + req.setRawHeader("Cookie", _cred->_token.toUtf8()); // analogous to neon in syncContextPreStart return MirallAccessManager::createRequest(op, req, outgoingData); } @@ -161,12 +162,6 @@ bool TokenCredentials::ready() const return _ready; } -QString TokenCredentials::fetchUser(Account* account) -{ - _user = account->credentialSetting(QLatin1String(userC)).toString(); - return _user; -} - void TokenCredentials::fetch(Account *account) { if( !account ) { @@ -174,10 +169,11 @@ void TokenCredentials::fetch(Account *account) } Q_EMIT fetched(); } + bool TokenCredentials::stillValid(QNetworkReply *reply) { return ((reply->error() != QNetworkReply::AuthenticationRequiredError) - // returned if user or password is incorrect + // returned if user/password or token are incorrect && (reply->error() != QNetworkReply::OperationCanceledError || !reply->property(authenticationFailedC).toBool())); } @@ -189,19 +185,12 @@ QString TokenCredentials::queryPassword(bool *ok) void TokenCredentials::invalidateToken(Account *account) { - _password = QString(); + qDebug() << Q_FUNC_INFO; _ready = false; - - // User must be fetched from config file to generate a valid key - fetchUser(account); - - const QString kck = keychainKey(account->url().toString(), _user); - if( kck.isEmpty() ) { - qDebug() << "InvalidateToken: User is empty, bailing out!"; - return; - } - account->clearCookieJar(); + _token = QString(); + _user = QString(); + _password = QString(); } void TokenCredentials::persist(Account *account) diff --git a/src/creds/tokencredentials.h b/src/creds/tokencredentials.h index 7b593d56c..d44fb2049 100644 --- a/src/creds/tokencredentials.h +++ b/src/creds/tokencredentials.h @@ -53,7 +53,6 @@ public: QString password() const; QString queryPassword(bool *ok); void invalidateToken(Account *account); - QString fetchUser(Account *account); private Q_SLOTS: void slotAuthentication(QNetworkReply*, QAuthenticator*); @@ -61,7 +60,7 @@ private Q_SLOTS: private: QString _user; QString _password; - QString _token; + QString _token; // the cookies bool _ready; }; diff --git a/src/mirall/accountsettings.cpp b/src/mirall/accountsettings.cpp index d06bc67f8..6259d4493 100644 --- a/src/mirall/accountsettings.cpp +++ b/src/mirall/accountsettings.cpp @@ -416,28 +416,6 @@ void AccountSettings::setFolderList( const Folder::Map &folders ) } -// move from Application -void AccountSettings::slotFolderOpenAction( const QString& alias ) -{ - Folder *f = FolderMan::instance()->folder(alias); - qDebug() << "opening local url " << f->path(); - if( f ) { - QUrl url(f->path(), QUrl::TolerantMode); - url.setScheme( QLatin1String("file") ); - -#ifdef Q_OS_WIN - // work around a bug in QDesktopServices on Win32, see i-net - QString filePath = f->path(); - - if (filePath.startsWith(QLatin1String("\\\\")) || filePath.startsWith(QLatin1String("//"))) - url.setUrl(QDir::toNativeSeparators(filePath)); - else - url = QUrl::fromLocalFile(filePath); -#endif - QDesktopServices::openUrl(url); - } -} - void AccountSettings::slotEnableCurrentFolder() { QModelIndex selected = ui->_folderList->selectionModel()->currentIndex(); @@ -454,7 +432,11 @@ void AccountSettings::slotEnableCurrentFolder() // this sets the folder status to disabled but does not interrupt it. Folder *f = folderMan->folder( alias ); - if( f && folderEnabled ) { + if (!f) { + return; + } + + if( folderEnabled ) { // check if a sync is still running and if so, ask if we should terminate. if( f->isBusy() ) { // its still running #if defined(Q_OS_MAC) @@ -737,7 +719,7 @@ void AccountSettings::slotIgnoreFilesEditor() _ignoreEditor->setAttribute( Qt::WA_DeleteOnClose, true ); _ignoreEditor->open(); } else { - Utility::raiseDialog(_ignoreEditor); + ownCloudGui::raiseDialog(_ignoreEditor); } } diff --git a/src/mirall/accountsettings.h b/src/mirall/accountsettings.h index fd36a2f24..4e64ea25e 100644 --- a/src/mirall/accountsettings.h +++ b/src/mirall/accountsettings.h @@ -60,7 +60,6 @@ public slots: void slotOpenOC(); void slotUpdateFolderState( Folder* ); void slotDoubleClicked( const QModelIndex& ); - void slotFolderOpenAction( const QString& ); void slotSetProgress(const QString& folder, const Progress::Info& progress); void slotButtonsSetEnabled(); diff --git a/src/mirall/application.cpp b/src/mirall/application.cpp index 53cc83021..c5acd2d42 100644 --- a/src/mirall/application.cpp +++ b/src/mirall/application.cpp @@ -71,7 +71,7 @@ QString applicationTrPath() #elif defined(Q_OS_MAC) return QApplication::applicationDirPath()+QLatin1String("/../Resources/Translations"); // path defaults to app dir. #elif defined(Q_OS_UNIX) - return QString::fromLatin1(DATADIR"/"APPLICATION_EXECUTABLE"/i18n/"); + return QString::fromLatin1(DATADIR "/" APPLICATION_EXECUTABLE "/i18n/"); #endif } } @@ -151,9 +151,6 @@ Application::Application(int &argc, char **argv) : } connect (this, SIGNAL(aboutToQuit()), SLOT(slotCleanup())); - - _socketApi = new SocketApi(this, QUrl::fromLocalFile(cfg.configPathWithAppName().append(QLatin1String("socket")))); - } Application::~Application() diff --git a/src/mirall/application.h b/src/mirall/application.h index 36d3baa5c..02690cc99 100644 --- a/src/mirall/application.h +++ b/src/mirall/application.h @@ -38,7 +38,6 @@ namespace Mirall { class Theme; class Folder; class SslErrorDialog; -class SocketApi; class Application : public SharedTools::QtSingleApplication { @@ -87,7 +86,6 @@ private: void setHelp(); QPointer _gui; - QPointer _socketApi; QPointer _conValidator; diff --git a/src/mirall/connectionvalidator.cpp b/src/mirall/connectionvalidator.cpp index a8031c669..24954f548 100644 --- a/src/mirall/connectionvalidator.cpp +++ b/src/mirall/connectionvalidator.cpp @@ -15,7 +15,6 @@ #include #include "mirall/connectionvalidator.h" -#include "mirall/mirallconfigfile.h" #include "mirall/theme.h" #include "mirall/account.h" #include "mirall/networkjobs.h" diff --git a/src/mirall/cookiejar.h b/src/mirall/cookiejar.h index 6e84c80f1..3166b547d 100644 --- a/src/mirall/cookiejar.h +++ b/src/mirall/cookiejar.h @@ -26,10 +26,14 @@ class OWNCLOUDSYNC_EXPORT CookieJar : public QNetworkCookieJar public: explicit CookieJar(QObject *parent = 0); ~CookieJar(); - bool setCookiesFromUrl(const QList &cookieList, const QUrl &url); - QList cookiesForUrl(const QUrl &url) const; + bool setCookiesFromUrl(const QList &cookieList, const QUrl &url) Q_DECL_OVERRIDE; + QList cookiesForUrl(const QUrl &url) const Q_DECL_OVERRIDE; - virtual bool deleteCookie(const QNetworkCookie & cookie); + bool deleteCookie(const QNetworkCookie & cookie) +#if QT_VERSION > QT_VERSION_CHECK(5, 0, 0) + Q_DECL_OVERRIDE //that function is not virtual in Qt4 +#endif + ; void clearSessionCookies(); signals: diff --git a/src/mirall/filesystem.h b/src/mirall/filesystem.h index f4a167114..c8e10ceb0 100644 --- a/src/mirall/filesystem.h +++ b/src/mirall/filesystem.h @@ -16,6 +16,8 @@ #include #include +#include + namespace Mirall { /** @@ -28,7 +30,7 @@ namespace FileSystem { bool fileEquals(const QString &fn1, const QString &fn2); /** Mark the file as hidden (only has effects on windows) */ -void setFileHidden(const QString& filename, bool hidden); +void OWNCLOUDSYNC_EXPORT setFileHidden(const QString& filename, bool hidden); void setModTime(const QString &filename, time_t modTime); diff --git a/src/mirall/folder.cpp b/src/mirall/folder.cpp index bc27738c9..7e78fdeb7 100644 --- a/src/mirall/folder.cpp +++ b/src/mirall/folder.cpp @@ -35,13 +35,20 @@ #include #include -#ifndef TOKEN_AUTH_ONLY #include #include -#endif namespace Mirall { +static void csyncLogCatcher(int /*verbosity*/, + const char */*function*/, + const char *buffer, + void */*userdata*/) +{ + Logger::instance()->csyncLog( QString::fromUtf8(buffer) ); +} + + Folder::Folder(const QString &alias, const QString &path, const QString& secondPath, QObject *parent) : QObject(parent) , _path(path) @@ -106,8 +113,6 @@ bool Folder::init() csync_set_log_callback( csyncLogCatcher ); csync_set_log_level( 11 ); - MirallConfigFile cfgFile; - if (Account *account = AccountManager::instance()->account()) { account->credentials()->syncContextPreInit(_csync_ctx); } else { @@ -368,17 +373,17 @@ void Folder::bubbleUpSyncResult() qDebug() << "Processing result list and logging took " << timer.elapsed() << " Milliseconds."; _syncResult.setWarnCount(ignoredItems); - createGuiLog( firstItemNew._file, FILE_STATUS_NEW, newItems ); - createGuiLog( firstItemDeleted._file, FILE_STATUS_REMOVE, removedItems ); - createGuiLog( firstItemUpdated._file, FILE_STATUS_UPDATED, updatedItems ); + createGuiLog( firstItemNew._file, SyncFileStatus(SyncFileStatus::STATUS_NEW), newItems ); + createGuiLog( firstItemDeleted._file, SyncFileStatus(SyncFileStatus::STATUS_REMOVE), removedItems ); + createGuiLog( firstItemUpdated._file, SyncFileStatus(SyncFileStatus::STATUS_UPDATED), updatedItems ); if( !firstItemRenamed.isEmpty() ) { - SyncFileStatus status = FILE_STATUS_RENAME; + SyncFileStatus status(SyncFileStatus::STATUS_RENAME); // if the path changes it's rather a move QDir renTarget = QFileInfo(firstItemRenamed._renameTarget).dir(); QDir renSource = QFileInfo(firstItemRenamed._file).dir(); if(renTarget != renSource) { - status = FILE_STATUS_MOVE; + status.set(SyncFileStatus::STATUS_MOVE); } createGuiLog( firstItemRenamed._file, status, renamedItems, firstItemRenamed._renameTarget ); } @@ -397,36 +402,36 @@ void Folder::createGuiLog( const QString& filename, SyncFileStatus status, int c // not all possible values of status are evaluated here because the others // are not used in the calling function. Please check there. - switch (status) { - case FILE_STATUS_REMOVE: + switch (status.tag()) { + case SyncFileStatus::STATUS_REMOVE: if( count > 1 ) { text = tr("%1 and %2 other files have been removed.", "%1 names a file.").arg(file).arg(count-1); } else { text = tr("%1 has been removed.", "%1 names a file.").arg(file); } break; - case FILE_STATUS_NEW: + case SyncFileStatus::STATUS_NEW: if( count > 1 ) { text = tr("%1 and %2 other files have been downloaded.", "%1 names a file.").arg(file).arg(count-1); } else { text = tr("%1 has been downloaded.", "%1 names a file.").arg(file); } break; - case FILE_STATUS_UPDATED: + case SyncFileStatus::STATUS_UPDATED: if( count > 1 ) { text = tr("%1 and %2 other files have been updated.").arg(file).arg(count-1); } else { text = tr("%1 has been updated.", "%1 names a file.").arg(file); } break; - case FILE_STATUS_RENAME: + case SyncFileStatus::STATUS_RENAME: if( count > 1 ) { text = tr("%1 has been renamed to %2 and %3 other files have been renamed.").arg(file).arg(renameTarget).arg(count-1); } else { text = tr("%1 has been renamed to %2.", "%1 and %2 name files.").arg(file).arg(renameTarget); } break; - case FILE_STATUS_MOVE: + case SyncFileStatus::STATUS_MOVE: if( count > 1 ) { text = tr("%1 has been moved to %2 and %3 other files have been moved.").arg(file).arg(renameTarget).arg(count-1); } else { @@ -708,11 +713,7 @@ void Folder::slotJobCompleted(const SyncFileItem &item) void Folder::slotAboutToRemoveAllFiles(SyncFileItem::Direction direction, bool *cancel) { -#ifndef TOKEN_AUTH_ONLY - QString msg = direction == SyncFileItem::Down ? - tr("This sync would remove all the files in the local sync folder '%1'.\n" - "If you or your administrator have reset your account on the server, choose " - "\"Keep files\". If you want your data to be removed, choose \"Remove all files\".") : + QString msg = tr("This sync would remove all the files in the sync folder '%1'.\n" "This might be because the folder was silently reconfigured, or that all " "the file were manually removed.\n" @@ -732,7 +733,6 @@ void Folder::slotAboutToRemoveAllFiles(SyncFileItem::Direction direction, bool * _lastEtag = QString(); QTimer::singleShot(50, this, SLOT(slotPollTimerTimeout())); } -#endif } } // namespace Mirall diff --git a/src/mirall/folder.h b/src/mirall/folder.h index 9e14bdb23..8a9d55411 100644 --- a/src/mirall/folder.h +++ b/src/mirall/folder.h @@ -21,6 +21,7 @@ #include "mirall/progressdispatcher.h" #include "mirall/syncjournaldb.h" #include "mirall/clientproxy.h" +#include "mirall/syncfilestatus.h" #include @@ -42,22 +43,7 @@ class SyncEngine; class FolderWatcher; -enum SyncFileStatus { - FILE_STATUS_NONE, - FILE_STATUS_EVAL, - FILE_STATUS_REMOVE, - FILE_STATUS_RENAME, - FILE_STATUS_MOVE, - FILE_STATUS_NEW, - FILE_STATUS_CONFLICT, - FILE_STATUS_IGNORE, - FILE_STATUS_SYNC, - FILE_STATUS_STAT_ERROR, - FILE_STATUS_ERROR, - FILE_STATUS_UPDATED -}; - -class OWNCLOUDSYNC_EXPORT Folder : public QObject +class Folder : public QObject { Q_OBJECT @@ -198,7 +184,6 @@ private: QString _remotePath; QString _alias; QString _configFile; - QFileSystemWatcher *_pathWatcher; bool _enabled; SyncResult _syncResult; QScopedPointer _engine; diff --git a/src/mirall/folderman.cpp b/src/mirall/folderman.cpp index 6c4b1b801..3cbaa8382 100644 --- a/src/mirall/folderman.cpp +++ b/src/mirall/folderman.cpp @@ -17,6 +17,7 @@ #include "mirall/folder.h" #include "mirall/syncresult.h" #include "mirall/theme.h" +#include "mirall/socketapi.h" #include @@ -27,10 +28,8 @@ #include #endif -#ifndef TOKEN_AUTH_ONLY #include -#endif - +#include #include namespace Mirall { @@ -52,6 +51,8 @@ FolderMan::FolderMan(QObject *parent) : ne_sock_init(); Q_ASSERT(!_instance); _instance = this; + + _socketApi = new SocketApi(this); } FolderMan *FolderMan::instance() @@ -71,6 +72,27 @@ Mirall::Folder::Map FolderMan::map() return _folderMap; } +// Attention: this function deletes the folder object to which +// the alias refers. Do NOT USE the folder pointer any more after +// having this called. +void FolderMan::unloadFolder( const QString& alias ) +{ + Folder *f = 0; + if( _folderMap.contains(alias)) { + f = _folderMap[alias]; + } + if( f ) { + _folderChangeSignalMapper->removeMappings(f); + if( _folderWatchers.contains(alias)) { + FolderWatcher *fw = _folderWatchers[alias]; + _folderWatcherSignalMapper->removeMappings(fw); + _folderWatchers.remove(alias); + } + _folderMap.remove( alias ); + delete f; + } +} + int FolderMan::unloadAllFolders() { int cnt = 0; @@ -79,11 +101,13 @@ int FolderMan::unloadAllFolders() Folder::MapIterator i(_folderMap); while (i.hasNext()) { i.next(); - delete _folderMap.take( i.key() ); + unloadFolder(i.key()); cnt++; } _currentSyncFolder.clear(); _scheduleQueue.clear(); + + Q_ASSERT(_folderMap.count() == 0); return cnt; } @@ -164,7 +188,6 @@ int FolderMan::setupFolders() bool FolderMan::ensureJournalGone(const QString &localPath) { // FIXME move this to UI, not libowncloudsync -#ifndef TOKEN_AUTH_ONLY // remove old .csync_journal file QString stateDbFile = localPath+QLatin1String("/.csync_journal.db"); while (QFile::exists(stateDbFile) && !QFile::remove(stateDbFile)) { @@ -178,7 +201,6 @@ bool FolderMan::ensureJournalGone(const QString &localPath) return false; } } -#endif return true; } @@ -394,7 +416,7 @@ void FolderMan::slotScheduleSync( const QString& alias ) if( alias.isEmpty() ) return; if( _currentSyncFolder == alias ) { - qDebug() << " the current folder is currently syncing."; + qDebug() << "folder " << alias << " is currently syncing. NOT scheduling."; return; } qDebug() << "Schedule folder " << alias << " to sync!"; @@ -406,6 +428,7 @@ void FolderMan::slotScheduleSync( const QString& alias ) f->prepareToSync(); } else { qDebug() << "Folder is not enabled, not scheduled!"; + _socketApi->slotUpdateFolderView(f->alias()); return; } } @@ -496,15 +519,14 @@ void FolderMan::addFolderDefinition(const QString& alias, const QString& sourceF settings.sync(); } -Folder *FolderMan::folderForPath(const QUrl &path) +Folder *FolderMan::folderForPath(const QString &path) { - QString absolutePath = path.toLocalFile(); - absolutePath.append("/"); + QString absolutePath = QDir::cleanPath(path)+QLatin1Char('/'); - foreach(Folder* folder, map().values()) - { - if(absolutePath.startsWith(folder->path())) - { + foreach(Folder* folder, this->map().values()) { + const QString folderPath = QDir::cleanPath(folder->path())+QLatin1Char('/'); + + if(absolutePath.startsWith(folderPath)) { qDebug() << "found folder: " << folder->path() << " for " << absolutePath; return folder; } @@ -562,6 +584,9 @@ void FolderMan::removeFolder( const QString& alias ) qDebug() << "Remove folder config file " << file.fileName(); file.remove(); } + + unloadFolder( alias ); // now the folder object is gone. + // FIXME: this is a temporar dirty fix against a crash happening because // the csync owncloud module still has static components. Activate the // delete once the module is fixed. diff --git a/src/mirall/folderman.h b/src/mirall/folderman.h index 0f4a79d70..c3a8d0012 100644 --- a/src/mirall/folderman.h +++ b/src/mirall/folderman.h @@ -19,6 +19,7 @@ #include #include #include +#include #include "mirall/folder.h" #include "mirall/folderwatcher.h" @@ -26,13 +27,13 @@ class QSignalMapper; -class SyncResult; - namespace Mirall { class Application; +class SyncResult; +class SocketApi; -class OWNCLOUDSYNC_EXPORT FolderMan : public QObject +class FolderMan : public QObject { Q_OBJECT public: @@ -52,7 +53,7 @@ public: void addFolderDefinition(const QString&, const QString&, const QString& ); /** Returns the folder which the file or directory stored in path is in */ - Folder* folderForPath(const QUrl& path); + Folder* folderForPath(const QString& path); /** Returns the folder by alias or NULL if no folder with the alias exists. */ Folder *folder( const QString& ); @@ -101,6 +102,8 @@ public slots: void terminateSyncProcess( const QString& alias = QString::null ); + /* unload and delete on folder object */ + void unloadFolder( const QString& alias ); /* delete all folder objects */ int unloadAllFolders(); @@ -144,6 +147,7 @@ private: bool _syncEnabled; QQueue _scheduleQueue; QMap _folderWatchers; + QPointer _socketApi; static FolderMan *_instance; explicit FolderMan(QObject *parent = 0); diff --git a/src/mirall/folderstatusmodel.h b/src/mirall/folderstatusmodel.h index 7db24f698..74acaa08a 100644 --- a/src/mirall/folderstatusmodel.h +++ b/src/mirall/folderstatusmodel.h @@ -24,8 +24,8 @@ class FolderStatusModel : public QStandardItemModel { public: FolderStatusModel(); - virtual Qt::ItemFlags flags( const QModelIndex& ) const; - QVariant data(const QModelIndex &index, int role) const; + virtual Qt::ItemFlags flags( const QModelIndex& ) const Q_DECL_OVERRIDE; + QVariant data(const QModelIndex &index, int role) const Q_DECL_OVERRIDE; }; @@ -52,13 +52,10 @@ class FolderStatusDelegate : public QStyledItemDelegate WarningCount, SyncRunning }; - void paint( QPainter*, const QStyleOptionViewItem&, const QModelIndex& ) const; - QSize sizeHint( const QStyleOptionViewItem&, const QModelIndex& ) const; + void paint( QPainter*, const QStyleOptionViewItem&, const QModelIndex& ) const Q_DECL_OVERRIDE; + QSize sizeHint( const QStyleOptionViewItem&, const QModelIndex& ) const Q_DECL_OVERRIDE; bool editorEvent( QEvent* event, QAbstractItemModel* model, const QStyleOptionViewItem& option, - const QModelIndex& index ); - -private: - bool _addProgressSpace; + const QModelIndex& index ) Q_DECL_OVERRIDE; }; } // namespace Mirall diff --git a/src/mirall/folderwatcher.cpp b/src/mirall/folderwatcher.cpp index ae119ca1e..7813a1e7f 100644 --- a/src/mirall/folderwatcher.cpp +++ b/src/mirall/folderwatcher.cpp @@ -13,7 +13,6 @@ // event masks #include "mirall/folderwatcher.h" -#include "mirall/folder.h" #include diff --git a/src/mirall/folderwizard.cpp b/src/mirall/folderwizard.cpp index d11100dc5..e5792abe0 100644 --- a/src/mirall/folderwizard.cpp +++ b/src/mirall/folderwizard.cpp @@ -170,8 +170,8 @@ bool FolderWizardLocalPath::isComplete() const bool goon = true; while( goon && i != map.constEnd() ) { Folder *f = i.value(); - qDebug() << "Checking local alias: " << f->alias(); if( f ) { + qDebug() << "Checking local alias: " << f->alias(); if( f->alias() == alias ) { warnStrings.append( tr("The alias %1 is already in use. Please pick another alias.").arg(alias) ); isOk = false; @@ -225,6 +225,7 @@ void FolderWizardLocalPath::slotChooseLocalFolder() FolderWizardRemotePath::FolderWizardRemotePath() : FormatWarningsWizardPage() ,_warnWasVisible(false) + { _ui.setupUi(this); _ui.warnFrame->hide(); diff --git a/src/mirall/folderwizard.h b/src/mirall/folderwizard.h index 658524f69..8db9b1319 100644 --- a/src/mirall/folderwizard.h +++ b/src/mirall/folderwizard.h @@ -43,9 +43,9 @@ public: FolderWizardLocalPath(); ~FolderWizardLocalPath(); - virtual bool isComplete() const; - void initializePage(); - void cleanupPage(); + virtual bool isComplete() const Q_DECL_OVERRIDE; + void initializePage() Q_DECL_OVERRIDE; + void cleanupPage() Q_DECL_OVERRIDE; void setFolderMap( const Folder::Map &fm ) { _folderMap = fm; } protected slots: @@ -68,10 +68,10 @@ public: FolderWizardRemotePath(); ~FolderWizardRemotePath(); - virtual bool isComplete() const; + virtual bool isComplete() const Q_DECL_OVERRIDE; - virtual void initializePage(); - virtual void cleanupPage(); + virtual void initializePage() Q_DECL_OVERRIDE; + virtual void cleanupPage() Q_DECL_OVERRIDE; protected slots: @@ -86,8 +86,6 @@ protected slots: private: void recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path); Ui_FolderWizardTargetPage _ui; - ownCloudInfo *_ownCloudDirCheck; - bool _dirChecked; bool _warnWasVisible; }; diff --git a/src/mirall/generalsettings.ui b/src/mirall/generalsettings.ui index 987230c5a..1ae6761bd 100644 --- a/src/mirall/generalsettings.ui +++ b/src/mirall/generalsettings.ui @@ -17,7 +17,7 @@ - General Setttings + General Settings diff --git a/src/mirall/logbrowser.h b/src/mirall/logbrowser.h index b46963ce6..24f2406bb 100644 --- a/src/mirall/logbrowser.h +++ b/src/mirall/logbrowser.h @@ -48,7 +48,7 @@ public: void setLogFile(const QString& , bool ); protected: - void closeEvent(QCloseEvent *); + void closeEvent(QCloseEvent *) Q_DECL_OVERRIDE; protected slots: void slotNewLog( const QString &msg ); diff --git a/src/mirall/mirallaccessmanager.h b/src/mirall/mirallaccessmanager.h index 149dd5ae4..d2fc0e531 100644 --- a/src/mirall/mirallaccessmanager.h +++ b/src/mirall/mirallaccessmanager.h @@ -28,7 +28,7 @@ public: MirallAccessManager(QObject* parent = 0); protected: - QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest& request, QIODevice* outgoingData = 0); + QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest& request, QIODevice* outgoingData = 0) Q_DECL_OVERRIDE; protected slots: void slotProxyAuthenticationRequired(const QNetworkProxy &proxy, QAuthenticator *authenticator); }; diff --git a/src/mirall/mirallconfigfile.cpp b/src/mirall/mirallconfigfile.cpp index a5474644d..8988a05fa 100644 --- a/src/mirall/mirallconfigfile.cpp +++ b/src/mirall/mirallconfigfile.cpp @@ -25,6 +25,7 @@ #ifndef TOKEN_AUTH_ONLY #include #include +#include #endif #include @@ -183,9 +184,13 @@ QVariant MirallConfigFile::getPolicySetting(const QString &setting, const QVaria QString MirallConfigFile::configPath() const { + #ifndef TOKEN_AUTH_ONLY if( _confDir.isEmpty() ) { - _confDir = Utility::dataLocation(); + // Qt 5's QStandardPaths::writableLocation gives us wrong results (without /data/), + // so we'll have to use the deprecated version for now + _confDir = QDesktopServices::storageLocation(QDesktopServices::DataLocation); } + #endif QString dir = _confDir; if( !dir.endsWith(QLatin1Char('/')) ) dir.append(QLatin1Char('/')); diff --git a/src/mirall/networkjobs.cpp b/src/mirall/networkjobs.cpp index 42762454e..7034f148e 100644 --- a/src/mirall/networkjobs.cpp +++ b/src/mirall/networkjobs.cpp @@ -408,20 +408,25 @@ bool CheckServerJob::finished() } bool success = false; - QVariantMap status = QtJson::parse(QString::fromUtf8(reply()->readAll()), success).toMap(); - // empty or invalid response - if (!success || status.isEmpty()) { - qDebug() << "status.php from server is not valid JSON!"; - } - - qDebug() << "status.php returns: " << status << " " << reply()->error() << " Reply: " << reply(); - if( status.contains("installed") - && status.contains("version") - && status.contains("versionstring") ) { - emit instanceFound(reply()->url(), status); - } else { - qDebug() << "No proper answer on " << requestedUrl; + QByteArray body = reply()->readAll(); + if( body.isEmpty() ) { emit instanceNotFound(reply()); + } else { + QVariantMap status = QtJson::parse(QString::fromUtf8(body), success).toMap(); + // empty or invalid response + if (!success || status.isEmpty()) { + qDebug() << "status.php from server is not valid JSON!"; + } + + qDebug() << "status.php returns: " << status << " " << reply()->error() << " Reply: " << reply(); + if( status.contains("installed") + && status.contains("version") + && status.contains("versionstring") ) { + emit instanceFound(reply()->url(), status); + } else { + qDebug() << "No proper answer on " << requestedUrl; + emit instanceNotFound(reply()); + } } return true; } diff --git a/src/mirall/networkjobs.h b/src/mirall/networkjobs.h index 6f0834303..5b8c196d3 100644 --- a/src/mirall/networkjobs.h +++ b/src/mirall/networkjobs.h @@ -114,13 +114,13 @@ class OWNCLOUDSYNC_EXPORT EntityExistsJob : public AbstractNetworkJob { Q_OBJECT public: explicit EntityExistsJob(Account *account, const QString &path, QObject* parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void exists(QNetworkReply*); private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; /** @@ -130,13 +130,13 @@ class OWNCLOUDSYNC_EXPORT LsColJob : public AbstractNetworkJob { Q_OBJECT public: explicit LsColJob(Account *account, const QString &path, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void directoryListing(const QStringList &items); private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; /** @@ -146,7 +146,7 @@ class PropfindJob : public AbstractNetworkJob { Q_OBJECT public: explicit PropfindJob(Account *account, const QString &path, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; void setProperties(QList properties); QList properties() const; @@ -154,7 +154,7 @@ signals: void result(const QVariantMap &values); private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; private: QList _properties; @@ -167,13 +167,13 @@ class OWNCLOUDSYNC_EXPORT MkColJob : public AbstractNetworkJob { Q_OBJECT public: explicit MkColJob(Account *account, const QString &path, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void finished(QNetworkReply::NetworkError); private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; /** @@ -183,7 +183,7 @@ class OWNCLOUDSYNC_EXPORT CheckServerJob : public AbstractNetworkJob { Q_OBJECT public: explicit CheckServerJob(Account *account, bool followRedirect = false, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; static QString version(const QVariantMap &info); static QString versionString(const QVariantMap &info); @@ -195,8 +195,8 @@ signals: void timeout(const QUrl&url); private slots: - virtual bool finished(); - virtual void slotTimeout(); + virtual bool finished() Q_DECL_OVERRIDE; + virtual void slotTimeout() Q_DECL_OVERRIDE; private: bool _followRedirects; @@ -208,17 +208,17 @@ private: /** * @brief The RequestEtagJob class */ -class RequestEtagJob : public AbstractNetworkJob { +class OWNCLOUDSYNC_EXPORT RequestEtagJob : public AbstractNetworkJob { Q_OBJECT public: explicit RequestEtagJob(Account *account, const QString &path, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void etagRetreived(const QString &etag); private slots: - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; /** @@ -228,14 +228,14 @@ class CheckQuotaJob : public AbstractNetworkJob { Q_OBJECT public: explicit CheckQuotaJob(Account *account, const QString &path, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void quotaRetrieved(qint64 totalBytes, qint64 availableBytes); private slots: /** Return true if you want the job to be deleted after this slot has finished running. */ - virtual bool finished(); + virtual bool finished() Q_DECL_OVERRIDE; }; } // namespace Mirall diff --git a/src/mirall/openfilemanager.cpp b/src/mirall/openfilemanager.cpp new file mode 100644 index 000000000..397c5c56a --- /dev/null +++ b/src/mirall/openfilemanager.cpp @@ -0,0 +1,185 @@ +/* + * Copyright (C) by Klaas Freitag + * Copyright (C) by Daniel Molkentin + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#include "openfilemanager.h" +#include "utility.h" +#include +#include +#include +#include +#include +#include +#include + +namespace Mirall { + +// according to the QStandardDir impl from Qt5 +static QStringList xdgDataDirs() +{ + QStringList dirs; + // http://standards.freedesktop.org/basedir-spec/latest/ + QString xdgDataDirsEnv = QFile::decodeName(qgetenv("XDG_DATA_DIRS")); + if (xdgDataDirsEnv.isEmpty()) { + dirs.append(QString::fromLatin1("/usr/local/share")); + dirs.append(QString::fromLatin1("/usr/share")); + } else { + dirs = xdgDataDirsEnv.split(QLatin1Char(':')); + } + // local location + QString xdgDataHome = QFile::decodeName(qgetenv("XDG_DATA_HOME")); + if (xdgDataHome.isEmpty()) { + xdgDataHome = QDir::homePath()+"/.local/share"; + } + dirs.prepend(xdgDataHome); + return dirs; +} + +// Linux impl only, make sure to process %u and %U which might be returned +static QString findDefaultFileManager() +{ + QProcess p; + p.start("xdg-mime", QStringList() << "query" << "default" << "inode/directory", QFile::ReadOnly); + p.waitForFinished(); + QString fileName = QString::fromUtf8(p.readAll().trimmed()); + if (fileName.isEmpty()) + return QString(); + + QFileInfo fi; + QStringList dirs = xdgDataDirs(); + QStringList subdirs; + subdirs << "/applications/" << "/applications/kde4/"; + foreach(QString dir, dirs) { + foreach(QString subdir, subdirs) { + fi.setFile(dir + subdir + fileName); + if (fi.exists()) { + return fi.absoluteFilePath(); + } + } + } + return QString(); +} + +// early dolphin versions did not have --select +static bool checkDolphinCanSelect() +{ + QProcess p; + p.start("dolphin", QStringList() << "--help", QFile::ReadOnly); + p.waitForFinished(); + return p.readAll().contains("--select"); +} + + +// inspired by Qt Creator's showInGraphicalShell(); +void showInFileManager(const QString &localPath) +{ + if (Utility::isWindows()) { +#ifdef Q_OS_WIN + if (QSysInfo::windowsVersion() <= QSysInfo::WV_2003) { + return; + } +#endif + QString explorer = "explorer.exe "; // FIXME: we trust it's in PATH + + if (!QFileInfo(localPath).isDir()) { + explorer += QLatin1String("/select,"); + } + explorer += QLatin1Char('"'); + explorer += QDir::toNativeSeparators(localPath); + explorer += QLatin1Char('"'); + + qDebug() << "OO Open explorer commandline:" << explorer; + QProcess p; + p.start(explorer); + p.waitForFinished(5000); + } else if (Utility::isMac()) { + QStringList scriptArgs; + scriptArgs << QLatin1String("-e") + << QString::fromLatin1("tell application \"Finder\" to reveal POSIX file \"%1\"") + .arg(localPath); + QProcess::execute(QLatin1String("/usr/bin/osascript"), scriptArgs); + scriptArgs.clear(); + scriptArgs << QLatin1String("-e") + << QLatin1String("tell application \"Finder\" to activate"); + QProcess::execute(QLatin1String("/usr/bin/osascript"), scriptArgs); + } else { + QString app; + QStringList args; + + static QString defaultManager = findDefaultFileManager(); + QSettings desktopFile(defaultManager, QSettings::IniFormat); + QString exec = desktopFile.value("Desktop Entry/Exec").toString(); + + QString fileToOpen = QFileInfo(localPath).absoluteFilePath(); + QString pathToOpen = QFileInfo(localPath).absolutePath(); + bool canHandleFile = false; // assume dumb fm + + args = exec.split(' '); + if (args.count() > 0) app = args.takeFirst(); + + QString kdeSelectParam("--select"); + + if (app.contains("konqueror") && !args.contains(kdeSelectParam)) { + // konq needs '--select' in order not to launch the file + args.prepend(kdeSelectParam); + canHandleFile = true; + } + + if (app.contains("dolphin")) + { + static bool dolphinCanSelect = checkDolphinCanSelect(); + if (dolphinCanSelect && !args.contains(kdeSelectParam)) { + args.prepend(kdeSelectParam); + canHandleFile = true; + } + } + + // whitelist + if (app.contains("nautilus") || app.contains("nemo")) { + canHandleFile = true; + } + + static QString name; + if (name.isEmpty()) { + name = desktopFile.value(QString::fromLatin1("Desktop Entry/Name[%1]").arg(qApp->property("ui_lang").toString())).toString(); + if (name.isEmpty()) { + name = desktopFile.value(QString::fromLatin1("Desktop Entry/Name")).toString(); + } + } + + std::replace(args.begin(), args.end(), QString::fromLatin1("%c"), name); + std::replace(args.begin(), args.end(), QString::fromLatin1("%u"), fileToOpen); + std::replace(args.begin(), args.end(), QString::fromLatin1("%U"), fileToOpen); + std::replace(args.begin(), args.end(), QString::fromLatin1("%f"), fileToOpen); + std::replace(args.begin(), args.end(), QString::fromLatin1("%F"), fileToOpen); + + // fixme: needs to append --icon, according to http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#exec-variables + QStringList::iterator it = std::find(args.begin(), args.end(), QString::fromLatin1("%i")); + if (it != args.end()) { + (*it) = desktopFile.value("Desktop Entry/Icon").toString(); + args.insert(it, QString::fromLatin1("--icon")); // before + } + + + if (args.count() == 0) args << fileToOpen; + + if (app.isEmpty() || args.isEmpty() || !canHandleFile) { + // fall back: open the default file manager, without ever selecting the file + QDesktopServices::openUrl(QUrl::fromLocalFile(pathToOpen)); + } else { + QProcess::startDetached(app, args); + } + } +} + +} \ No newline at end of file diff --git a/src/mirall/openfilemanager.h b/src/mirall/openfilemanager.h new file mode 100644 index 000000000..c395f15fe --- /dev/null +++ b/src/mirall/openfilemanager.h @@ -0,0 +1,20 @@ +/* + * Copyright (C) by Olivier Goffart + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ +#pragma once + +#include + +namespace Mirall { +/** Open the file manager with the specified file pre-selected */ +void showInFileManager(const QString &localPath); +} diff --git a/src/mirall/owncloudgui.cpp b/src/mirall/owncloudgui.cpp index 68f04e6db..7de5c5cb0 100644 --- a/src/mirall/owncloudgui.cpp +++ b/src/mirall/owncloudgui.cpp @@ -27,6 +27,7 @@ #include "mirall/logger.h" #include "mirall/logbrowser.h" #include "mirall/account.h" +#include "openfilemanager.h" #include "creds/abstractcredentials.h" #include @@ -140,7 +141,7 @@ void ownCloudGui::slotFoldersChanged() void ownCloudGui::slotOpenPath(const QString &path) { - Utility::showInFileManager(path); + showInFileManager(path); } void ownCloudGui::slotAccountStateChanged() @@ -326,10 +327,9 @@ void ownCloudGui::slotShowOptionalTrayMessage(const QString &title, const QStrin void ownCloudGui::slotFolderOpenAction( const QString& alias ) { Folder *f = FolderMan::instance()->folder(alias); - qDebug() << "opening local url " << f->path(); if( f ) { - QUrl url(f->path(), QUrl::TolerantMode); - url.setScheme( QLatin1String("file") ); + qDebug() << "opening local url " << f->path(); + QUrl url = QUrl::fromLocalFile(f->path()); #ifdef Q_OS_WIN // work around a bug in QDesktopServices on Win32, see i-net @@ -483,7 +483,7 @@ void ownCloudGui::slotShowSettings() _settingsDialog->show(); } _settingsDialog->setGeneralErrors( _startupFails ); - Utility::raiseDialog(_settingsDialog.data()); + raiseDialog(_settingsDialog.data()); } void ownCloudGui::slotShowSyncProtocol() @@ -511,7 +511,7 @@ void ownCloudGui::slotToggleLogBrowser() if (_logBrowser->isVisible() ) { _logBrowser->hide(); } else { - Utility::raiseDialog(_logBrowser); + raiseDialog(_logBrowser); } } @@ -527,5 +527,15 @@ void ownCloudGui::slotHelp() QDesktopServices::openUrl(QUrl(Theme::instance()->helpUrl())); } +void ownCloudGui::raiseDialog( QWidget *raiseWidget ) +{ + if( raiseWidget && raiseWidget->parentWidget() == 0) { + // Qt has a bug which causes parent-less dialogs to pop-under. + raiseWidget->showNormal(); + raiseWidget->raise(); + raiseWidget->activateWindow(); + } +} + } // end namespace diff --git a/src/mirall/owncloudgui.h b/src/mirall/owncloudgui.h index 2b238e906..c67e43c21 100644 --- a/src/mirall/owncloudgui.h +++ b/src/mirall/owncloudgui.h @@ -43,6 +43,8 @@ public: bool checkAccountExists(bool openSettings); + static void raiseDialog(QWidget *raiseWidget); + signals: void setupProxy(); diff --git a/src/mirall/owncloudpropagator.cpp b/src/mirall/owncloudpropagator.cpp index 0003b0ed8..876e97d94 100644 --- a/src/mirall/owncloudpropagator.cpp +++ b/src/mirall/owncloudpropagator.cpp @@ -29,6 +29,7 @@ #include #include +#include namespace Mirall { @@ -43,7 +44,15 @@ static int maximumActiveJob() { void PropagateItemJob::done(SyncFileItem::Status status, const QString &errorString) { - _item._errorString = errorString; + if (_item._isRestoration) { + if( status == SyncFileItem::Success || status == SyncFileItem::Conflict) { + status = SyncFileItem::Restoration; + } else { + _item._errorString += tr("; Restoration Failed: ") + errorString; + } + } else { + _item._errorString = errorString; + } _item._status = status; // Blacklisting @@ -77,6 +86,7 @@ void PropagateItemJob::done(SyncFileItem::Status status, const QString &errorStr _propagator->_journal->updateBlacklistEntry( record ); break; case SyncFileItem::Success: + case SyncFileItem::Restoration: if( _item._blacklistedInDb ) { // wipe blacklist entry. _propagator->_journal->wipeBlacklistEntry(_item._file); @@ -153,7 +163,8 @@ void PropagateItemJob::slotRestoreJobCompleted(const SyncFileItem& item ) _restoreJob->setRestoreJobMsg(); } - if( item._status == SyncFileItem::Success || item._status == SyncFileItem::Conflict) { + if( item._status == SyncFileItem::Success || item._status == SyncFileItem::Conflict + || item._status == SyncFileItem::Restoration) { done( SyncFileItem::SoftError, msg); } else { done( item._status, tr("A file or directory was removed from a read only share, but restoring failed: %1").arg(item._errorString) ); @@ -206,14 +217,13 @@ PropagateItemJob* OwncloudPropagator::createJob(const SyncFileItem& item) { return 0; } -void OwncloudPropagator::start(const SyncFileItemVector& _syncedItems) +void OwncloudPropagator::start(const SyncFileItemVector& items) { /* This builds all the job needed for the propagation. * Each directories is a PropagateDirectory job, which contains the files in it. - * In order to do that we sort the items by destination. and loop over it. When we enter a - * directory, we can create the directory job and push it on the stack. */ - SyncFileItemVector items = _syncedItems; - std::sort(items.begin(), items.end()); + * In order to do that we loop over the items. (which are sorted by destination) + * When we enter adirectory, we can create the directory job and push it on the stack. */ + _rootJob.reset(new PropagateDirectory(this)); QStack > directories; directories.push(qMakePair(QString(), _rootJob.data())); @@ -360,6 +370,15 @@ bool OwncloudPropagator::localFileNameClash( const QString& relFile ) re = true; } } +#else + // On Linux, the file system is case sensitive, but this code is usefull for testing. + // Just check that there is no other file with the same name and different casing. + QFileInfo fileInfo(file); + const QString fn = fileInfo.fileName(); + QStringList list = fileInfo.dir().entryList(QStringList() << fn); + if (list.count() > 1 || (list.count() == 1 && list[0] != fn)) { + re = true; + } #endif } return re; @@ -380,7 +399,8 @@ void PropagateDirectory::start() void PropagateDirectory::slotSubJobFinished(SyncFileItem::Status status) { - if (status == SyncFileItem::FatalError || (_current == -1 && status != SyncFileItem::Success)) { + if (status == SyncFileItem::FatalError || + (_current == -1 && status != SyncFileItem::Success && status != SyncFileItem::Restoration)) { abort(); emit finished(status); return; @@ -416,6 +436,12 @@ void PropagateDirectory::slotSubJobReady() } if (_item._should_update_etag && _item._instruction != CSYNC_INSTRUCTION_REMOVE) { + if (PropagateRemoteMkdir* mkdir = qobject_cast(_firstJob.data())) { + // special case from MKDIR, get the fileId from the job there + if (_item._fileId.isEmpty() && !mkdir->_item._fileId.isEmpty()) { + _item._fileId = mkdir->_item._fileId; + } + } SyncJournalFileRecord record(_item, _propagator->_localDir + _item._file); _propagator->_journal->setFileRecord(record); } diff --git a/src/mirall/owncloudpropagator.h b/src/mirall/owncloudpropagator.h index 33146aa50..cfec6653b 100644 --- a/src/mirall/owncloudpropagator.h +++ b/src/mirall/owncloudpropagator.h @@ -25,6 +25,7 @@ struct hbf_transfer_s; struct ne_session_s; struct ne_decompress_s; +typedef struct ne_prop_result_set_s ne_prop_result_set; namespace Mirall { @@ -101,8 +102,8 @@ public: _subJobs.append(subJob); } - virtual void start(); - virtual void abort() { + virtual void start() Q_DECL_OVERRIDE; + virtual void abort() Q_DECL_OVERRIDE { if (_firstJob) _firstJob->abort(); foreach (PropagatorJob *j, _subJobs) @@ -139,11 +140,15 @@ protected: * set a custom restore job message that is used if the restore job succeeded. * It is displayed in the activity view. */ - QString restoreJobMsg() const { return _restoreJobMsg; } - void setRestoreJobMsg( const QString& msg = QString() ) { _restoreJobMsg = msg; } + QString restoreJobMsg() const { + return _item._isRestoration ? _item._errorString : QString(); + } + void setRestoreJobMsg( const QString& msg = QString() ) { + _item._isRestoration = true; + _item._errorString = msg; + } SyncFileItem _item; - QString _restoreJobMsg; protected slots: void slotRestoreJobCompleted(const SyncFileItem& ); @@ -163,7 +168,7 @@ class PropagateIgnoreJob : public PropagateItemJob { public: PropagateIgnoreJob(OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item) {} - void start() { + void start() Q_DECL_OVERRIDE { SyncFileItem::Status status = _item._status; done(status == SyncFileItem::NoStatus ? SyncFileItem::FileIgnored : status, _item._errorString); } diff --git a/src/mirall/owncloudsetupwizard.cpp b/src/mirall/owncloudsetupwizard.cpp index a7d866b51..c4b7388f7 100644 --- a/src/mirall/owncloudsetupwizard.cpp +++ b/src/mirall/owncloudsetupwizard.cpp @@ -111,6 +111,15 @@ void OwncloudSetupWizard::startWizard() } _ocWizard->setProperty("localFolder", localFolder); + + // remember the local folder to compare later if it changed, but clean first + QString lf = QDir::fromNativeSeparators(localFolder); + if( !lf.endsWith(QLatin1Char('/'))) { + lf.append(QLatin1Char('/')); + } + + _initLocalFolder = lf; + _ocWizard->setRemoteFolder(_remoteFolder); _ocWizard->setStartId(WizardCommon::Page_ServerSetup); @@ -392,10 +401,17 @@ void OwncloudSetupWizard::slotAssistantFinished( int result ) Account *newAccount = _ocWizard->account(); Account *origAccount = AccountManager::instance()->account(); - const QString localFolder = _ocWizard->localFolder(); + + QString localFolder = QDir::fromNativeSeparators(_ocWizard->localFolder()); + if( !localFolder.endsWith(QLatin1Char('/'))) { + localFolder.append(QLatin1Char('/')); + } bool isInitialSetup = (origAccount == 0); - bool reinitRequired = newAccount->changed(origAccount, true /* ignoreProtocol, allows http->https */); + + // check if either the account or the local folder changed, than reinit + bool reinitRequired = _initLocalFolder != localFolder || + newAccount->changed(origAccount, true /* ignoreProtocol, allows http->https */); bool startFromScratch = _ocWizard->field("OCSyncFromScratch").toBool(); // This distinguishes three possibilities: diff --git a/src/mirall/owncloudsetupwizard.h b/src/mirall/owncloudsetupwizard.h index 681b776be..4394257c0 100644 --- a/src/mirall/owncloudsetupwizard.h +++ b/src/mirall/owncloudsetupwizard.h @@ -35,22 +35,22 @@ class ValidateDavAuthJob : public AbstractNetworkJob { Q_OBJECT public: ValidateDavAuthJob(Account* account, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void authResult(QNetworkReply*); private slots: - bool finished(); + bool finished() Q_DECL_OVERRIDE; }; class DetermineAuthTypeJob : public AbstractNetworkJob { Q_OBJECT public: explicit DetermineAuthTypeJob(Account *account, QObject *parent = 0); - void start(); + void start() Q_DECL_OVERRIDE; signals: void authType(WizardCommon::AuthType); private slots: - bool finished(); + bool finished() Q_DECL_OVERRIDE; private: int _redirects; }; @@ -94,6 +94,7 @@ private: Account* _account; OwncloudWizard* _ocWizard; + QString _initLocalFolder; QString _remoteFolder; }; diff --git a/src/mirall/owncloudtheme.cpp b/src/mirall/owncloudtheme.cpp index a58b630fc..f73aa7c55 100644 --- a/src/mirall/owncloudtheme.cpp +++ b/src/mirall/owncloudtheme.cpp @@ -31,7 +31,8 @@ namespace Mirall { -ownCloudTheme::ownCloudTheme() +ownCloudTheme::ownCloudTheme() : + Theme() { // qDebug() << " ** running ownCloud theme!"; } diff --git a/src/mirall/owncloudtheme.h b/src/mirall/owncloudtheme.h index df6736166..33b33e2a9 100644 --- a/src/mirall/owncloudtheme.h +++ b/src/mirall/owncloudtheme.h @@ -25,21 +25,21 @@ class ownCloudTheme : public Theme public: ownCloudTheme(); - QString configFileName() const; - QString about() const; + QString configFileName() const Q_DECL_OVERRIDE; + QString about() const Q_DECL_OVERRIDE; QPixmap splashScreen() const; QIcon folderIcon( const QString& ) const; - QIcon trayFolderIcon( const QString& ) const; - QIcon folderDisabledIcon() const; - QIcon applicationIcon() const; + QIcon trayFolderIcon( const QString& ) const Q_DECL_OVERRIDE; + QIcon folderDisabledIcon() const Q_DECL_OVERRIDE; + QIcon applicationIcon() const Q_DECL_OVERRIDE; - QVariant customMedia(CustomMediaType type); - QString helpUrl() const; + QVariant customMedia(CustomMediaType type) Q_DECL_OVERRIDE; + QString helpUrl() const Q_DECL_OVERRIDE; - QColor wizardHeaderBackgroundColor() const; - QColor wizardHeaderTitleColor() const; - QPixmap wizardHeaderLogo() const; + QColor wizardHeaderBackgroundColor() const Q_DECL_OVERRIDE; + QColor wizardHeaderTitleColor() const Q_DECL_OVERRIDE; + QPixmap wizardHeaderLogo() const Q_DECL_OVERRIDE; private: diff --git a/src/mirall/progressdispatcher.cpp b/src/mirall/progressdispatcher.cpp index d14c4c47b..384b78d03 100644 --- a/src/mirall/progressdispatcher.cpp +++ b/src/mirall/progressdispatcher.cpp @@ -84,7 +84,7 @@ bool Progress::isWarningKind( SyncFileItem::Status kind) { return kind == SyncFileItem::SoftError || kind == SyncFileItem::NormalError || kind == SyncFileItem::FatalError || kind == SyncFileItem::FileIgnored - || kind == SyncFileItem::Conflict; + || kind == SyncFileItem::Conflict || kind == SyncFileItem::Restoration; } diff --git a/src/mirall/propagator_legacy.cpp b/src/mirall/propagator_legacy.cpp index b0c2b0d06..64ebab5b2 100644 --- a/src/mirall/propagator_legacy.cpp +++ b/src/mirall/propagator_legacy.cpp @@ -305,6 +305,11 @@ bool PropagateNeonJob::updateMTimeAndETag(const char* uri, time_t mtime) void PropagateNeonJob::limitBandwidth(qint64 progress, qint64 bandwidth_limit) { + if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) { + // Do not limit bandwidth when aborting to speed up the current transfer + return; + } + if (bandwidth_limit > 0) { int64_t diff = _lastTime.nsecsElapsed() / 1000; int64_t len = progress - _lastProgress; @@ -323,8 +328,7 @@ void PropagateNeonJob::limitBandwidth(qint64 progress, qint64 bandwidth_limit) // -bandwidth_limit is the % of bandwidth int64_t wait_time = -diff * (1 + 100.0 / bandwidth_limit); if (wait_time > 0) { - Mirall::Utility::usleep(wait_time); - + Mirall::Utility::usleep(qMin(wait_time, int64_t(1000000*10))); } } _lastTime.start(); @@ -392,24 +396,39 @@ void PropagateDownloadFileLegacy::install_content_reader( ne_request *req, void if (etag.isEmpty()) { qDebug() << Q_FUNC_INFO << "No E-Tag reply by server, considering it invalid" << ne_get_response_header(req, "etag"); - that->errorString = tr("No E-Tag received from server, check Proxy/Gateway"); - ne_set_error(that->_propagator->_session, "%s", that->errorString.toUtf8().data()); - ne_add_response_body_reader( req, do_not_accept, - do_not_download_content_reader, - (void*) that ); + that->abortTransfer(req, tr("No E-Tag received from server, check Proxy/Gateway")); return; } else if (!that->_expectedEtagForResume.isEmpty() && that->_expectedEtagForResume != etag) { qDebug() << Q_FUNC_INFO << "We received a different E-Tag for resuming!" << QString::fromLatin1(that->_expectedEtagForResume.data()) << "vs" << QString::fromLatin1(etag.data()); - that->errorString = tr("We received a different E-Tag for resuming. Retrying next time."); - ne_set_error(that->_propagator->_session, "%s", that->errorString.toUtf8().data()); - ne_add_response_body_reader( req, do_not_accept, - do_not_download_content_reader, - (void*) that ); + that->abortTransfer(req, tr("We received a different E-Tag for resuming. Retrying next time.")); return; } + quint64 start = 0; + QByteArray ranges = ne_get_response_header(req, "content-range"); + if (!ranges.isEmpty()) { + QRegExp rx("bytes (\\d+)-"); + if (rx.indexIn(ranges) >= 0) { + start = rx.cap(1).toULongLong(); + } + } + if (start != that->_resumeStart) { + qDebug() << Q_FUNC_INFO << "Wrong content-range: "<< ranges << " while expecting start was" << that->_resumeStart; + if (start == 0) { + // device don't support range, just stry again from scratch + that->_file->close(); + if (!that->_file->open(QIODevice::WriteOnly)) { + that->abortTransfer(req, that->_file->errorString()); + return; + } + } else { + that->abortTransfer(req, tr("Server returned wrong content-range")); + return; + } + } + const char *enc = ne_get_response_header( req, "Content-Encoding" ); qDebug("Content encoding ist <%s> with status %d", enc ? enc : "empty", @@ -426,6 +445,16 @@ void PropagateDownloadFileLegacy::install_content_reader( ne_request *req, void } } +void PropagateDownloadFileLegacy::abortTransfer(ne_request* req, const QString& error) +{ + errorString = error; + ne_set_error(_propagator->_session, "%s", errorString.toUtf8().data()); + ne_add_response_body_reader( req, do_not_accept, + do_not_download_content_reader, + this); +} + + void PropagateDownloadFileLegacy::notify_status_cb(void* userdata, ne_session_status status, const ne_session_status_info* info) { @@ -520,6 +549,7 @@ void PropagateDownloadFileLegacy::start() ne_add_request_header(req.data(), "Range", rangeRequest.constData()); ne_add_request_header(req.data(), "Accept-Ranges", "bytes"); qDebug() << "Retry with range " << rangeRequest; + _resumeStart = done; } /* hook called before the content is parsed to set the correct reader, diff --git a/src/mirall/propagator_legacy.h b/src/mirall/propagator_legacy.h index 813b8c56d..80b7bb1d8 100644 --- a/src/mirall/propagator_legacy.h +++ b/src/mirall/propagator_legacy.h @@ -23,8 +23,9 @@ class PropagateUploadFileLegacy: public PropagateNeonJob { Q_OBJECT public: explicit PropagateUploadFileLegacy(OwncloudPropagator* propagator,const SyncFileItem& item) - : PropagateNeonJob(propagator, item), _previousFileSize(0) {} - void start(); + : PropagateNeonJob(propagator, item) + , _chunked_done(0), _chunked_total_size(0), _previousFileSize(0) {} + void start() Q_DECL_OVERRIDE; private: // Log callback for httpbf static void _log_callback(const char *func, const char *text, void*) @@ -52,13 +53,14 @@ class PropagateDownloadFileLegacy: public PropagateNeonJob { Q_OBJECT public: explicit PropagateDownloadFileLegacy(OwncloudPropagator* propagator,const SyncFileItem& item) - : PropagateNeonJob(propagator, item), _file(0) {} - void start(); + : PropagateNeonJob(propagator, item), _file(0), _resumeStart(0) {} + void start() Q_DECL_OVERRIDE; private: QFile *_file; QScopedPointer _decompress; QString errorString; QByteArray _expectedEtagForResume; + quint64 _resumeStart; static int do_not_accept (void *userdata, ne_request *req, const ne_status *st) { @@ -77,6 +79,9 @@ private: static void install_content_reader( ne_request *req, void *userdata, const ne_status *status ); static void notify_status_cb(void* userdata, ne_session_status status, const ne_session_status_info* info); + + /** To be called from install_content_reader if we want to abort the transfer */ + void abortTransfer(ne_request *req, const QString &error); }; } diff --git a/src/mirall/propagator_qnam.cpp b/src/mirall/propagator_qnam.cpp index d9ea8ed13..3d04014a9 100644 --- a/src/mirall/propagator_qnam.cpp +++ b/src/mirall/propagator_qnam.cpp @@ -119,53 +119,68 @@ void PropagateUploadFileQNAM::start() struct ChunkDevice : QIODevice { public: - QIODevice *_file; + QPointer _file; qint64 _read; qint64 _size; qint64 _start; ChunkDevice(QIODevice *file, qint64 start, qint64 size) : QIODevice(file), _file(file), _read(0), _size(size), _start(start) { - _file->seek(start); + _file = QPointer(file); + _file.data()->seek(start); } - virtual qint64 writeData(const char* , qint64 ) { + virtual qint64 writeData(const char* , qint64 ) Q_DECL_OVERRIDE { Q_ASSERT(!"write to read only device"); return 0; } - virtual qint64 readData(char* data, qint64 maxlen) { + virtual qint64 readData(char* data, qint64 maxlen) Q_DECL_OVERRIDE { + if (_file.isNull()) { + qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + close(); + return -1; + } maxlen = qMin(maxlen, chunkSize() - _read); if (maxlen == 0) return 0; - qint64 ret = _file->read(data, maxlen); + qint64 ret = _file.data()->read(data, maxlen); if (ret < 0) return -1; _read += ret; return ret; } - virtual bool atEnd() const { - return _read >= chunkSize() || _file->atEnd(); + virtual bool atEnd() const Q_DECL_OVERRIDE { + if (_file.isNull()) { + qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + return true; + } + return _read >= chunkSize() || _file.data()->atEnd(); } - virtual qint64 size() const{ + virtual qint64 size() const Q_DECL_OVERRIDE{ return _size; } - qint64 bytesAvailable() const + qint64 bytesAvailable() const Q_DECL_OVERRIDE { return _size - _read + QIODevice::bytesAvailable(); } // random access, we can seek - virtual bool isSequential() const{ + virtual bool isSequential() const Q_DECL_OVERRIDE{ return false; } - virtual bool seek ( qint64 pos ) { + virtual bool seek ( qint64 pos ) Q_DECL_OVERRIDE { + if (_file.isNull()) { + qDebug() << Q_FUNC_INFO << "Upload file object deleted during upload"; + close(); + return false; + } _read = pos; - return _file->seek(pos + _start); + return _file.data()->seek(pos + _start); } }; @@ -193,7 +208,9 @@ void PropagateUploadFileQNAM::startNextChunk() headers["OC-Total-Length"] = QByteArray::number(fileSize); headers["Content-Type"] = "application/octet-stream"; headers["X-OC-Mtime"] = QByteArray::number(qint64(_item._modtime)); - if (!_item._etag.isEmpty() && _item._etag != "empty_etag") { + if (!_item._etag.isEmpty() && _item._etag != "empty_etag" && + _item._instruction != CSYNC_INSTRUCTION_NEW // On new files never send a If-Match + ) { // We add quotes because the owncloud server always add quotes around the etag, and // csync_owncloud.c's owncloud_file_id always strip the quotes. headers["If-Match"] = '"' + _item._etag + '"'; @@ -231,10 +248,9 @@ void PropagateUploadFileQNAM::startNextChunk() connect(_job, SIGNAL(uploadProgress(qint64,qint64)), this, SLOT(slotUploadProgress(qint64,qint64))); _job->start(); } else { - delete device; - qDebug() << "ERR: Could not open upload file: " << device->errorString(); done( SyncFileItem::NormalError, device->errorString() ); + delete device; return; } } @@ -381,20 +397,20 @@ void PropagateUploadFileQNAM::abort() /////////////////////////////////////////////////////////////////////////////////////////////////// // DOES NOT take owncership of the device. -GETFileJob::GETFileJob(Account* account, const QString& path, QIODevice *device, +GETFileJob::GETFileJob(Account* account, const QString& path, QFile *device, const QMap &headers, QByteArray expectedEtagForResume, - QObject* parent) + quint64 _resumeStart, QObject* parent) : AbstractNetworkJob(account, path, parent), _device(device), _headers(headers), _expectedEtagForResume(expectedEtagForResume), - _errorStatus(SyncFileItem::NoStatus) + _resumeStart(_resumeStart) , _errorStatus(SyncFileItem::NoStatus) { } -GETFileJob::GETFileJob(Account* account, const QUrl& url, QIODevice *device, +GETFileJob::GETFileJob(Account* account, const QUrl& url, QFile *device, const QMap &headers, QObject* parent) : AbstractNetworkJob(account, url.toEncoded(), parent), - _device(device), _headers(headers), + _device(device), _headers(headers), _resumeStart(0), _errorStatus(SyncFileItem::NoStatus), _directDownloadUrl(url) { } @@ -453,11 +469,39 @@ void GETFileJob::slotMetaDataChanged() reply()->abort(); return; } + + quint64 start = 0; + QByteArray ranges = parseEtag(reply()->rawHeader("Content-Range")); + if (!ranges.isEmpty()) { + QRegExp rx("bytes (\\d+)-"); + if (rx.indexIn(ranges) >= 0) { + start = rx.cap(1).toULongLong(); + } + } + if (start != _resumeStart) { + qDebug() << Q_FUNC_INFO << "Wrong content-range: "<< ranges << " while expecting start was" << _resumeStart; + if (start == 0) { + // device don't support range, just stry again from scratch + _device->close(); + if (!_device->open(QIODevice::WriteOnly)) { + _errorString = _device->errorString(); + _errorStatus = SyncFileItem::NormalError; + reply()->abort(); + return; + } + } else { + _errorString = tr("Server returned wrong content-range"); + _errorStatus = SyncFileItem::NormalError; + reply()->abort(); + return; + } + } + } void GETFileJob::slotReadyRead() { - int bufferSize = qMax(1024*8ll , reply()->bytesAvailable()); + int bufferSize = qMin(1024*8ll , reply()->bytesAvailable()); QByteArray buffer(bufferSize, Qt::Uninitialized); while(reply()->bytesAvailable() > 0) { @@ -565,8 +609,8 @@ void PropagateDownloadFileQNAM::start() if (_item._directDownloadUrl.isEmpty()) { // Normal job, download from oC instance _job = new GETFileJob(AccountManager::instance()->account(), - _propagator->_remoteFolder + _item._file, - &_tmpFile, headers, expectedEtagForResume); + _propagator->_remoteFolder + _item._file, + &_tmpFile, headers, expectedEtagForResume, _startSize); } else { // We were provided a direct URL, use that one if (!_item._directDownloadCookies.isEmpty()) { diff --git a/src/mirall/propagator_qnam.h b/src/mirall/propagator_qnam.h index f8c727b31..7b4c657c1 100644 --- a/src/mirall/propagator_qnam.h +++ b/src/mirall/propagator_qnam.h @@ -61,9 +61,9 @@ public: const QMap &headers, QObject* parent = 0) : AbstractNetworkJob(account, path, parent), _device(device), _headers(headers) {} - virtual void start(); + virtual void start() Q_DECL_OVERRIDE; - virtual bool finished() { + virtual bool finished() Q_DECL_OVERRIDE { emit finishedSignal(); return true; } @@ -72,7 +72,7 @@ public: return _errorString.isEmpty() ? reply()->errorString() : _errorString; }; - virtual void slotTimeout(); + virtual void slotTimeout() Q_DECL_OVERRIDE; signals: @@ -93,49 +93,50 @@ class PropagateUploadFileQNAM : public PropagateItemJob { public: PropagateUploadFileQNAM(OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item), _startChunk(0), _currentChunk(0), _chunkCount(0), _transferId(0) {} - void start(); + void start() Q_DECL_OVERRIDE; private slots: void slotPutFinished(); void slotUploadProgress(qint64,qint64); - void abort(); + void abort() Q_DECL_OVERRIDE; void startNextChunk(); - void finalize(const Mirall::SyncFileItem&); + void finalize(const SyncFileItem&); }; class GETFileJob : public AbstractNetworkJob { Q_OBJECT - QIODevice* _device; + QFile* _device; QMap _headers; QString _errorString; QByteArray _expectedEtagForResume; + quint64 _resumeStart; SyncFileItem::Status _errorStatus; QUrl _directDownloadUrl; QByteArray _etag; public: // DOES NOT take owncership of the device. - explicit GETFileJob(Account* account, const QString& path, QIODevice *device, + explicit GETFileJob(Account* account, const QString& path, QFile *device, const QMap &headers, QByteArray expectedEtagForResume, - QObject* parent = 0); + quint64 resumeStart, QObject* parent = 0); // For directDownloadUrl: - explicit GETFileJob(Account* account, const QUrl& url, QIODevice *device, + explicit GETFileJob(Account* account, const QUrl& url, QFile *device, const QMap &headers, QObject* parent = 0); - virtual void start(); - virtual bool finished() { + virtual void start() Q_DECL_OVERRIDE; + virtual bool finished() Q_DECL_OVERRIDE { emit finishedSignal(); return true; } QString errorString() { return _errorString.isEmpty() ? reply()->errorString() : _errorString; - }; + } SyncFileItem::Status errorStatus() { return _errorStatus; } - virtual void slotTimeout(); + virtual void slotTimeout() Q_DECL_OVERRIDE; QByteArray &etag() { return _etag; } @@ -159,10 +160,10 @@ class PropagateDownloadFileQNAM : public PropagateItemJob { public: PropagateDownloadFileQNAM(OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item), _startSize(0) {} - void start(); + void start() Q_DECL_OVERRIDE; private slots: void slotGetFinished(); - void abort(); + void abort() Q_DECL_OVERRIDE; void downloadFinished(); void slotDownloadProgress(qint64,qint64); diff --git a/src/mirall/propagatorjobs.cpp b/src/mirall/propagatorjobs.cpp index 087d24d54..a94c04a75 100644 --- a/src/mirall/propagatorjobs.cpp +++ b/src/mirall/propagatorjobs.cpp @@ -108,8 +108,7 @@ void PropagateLocalMkdir::start() QDir newDir(_propagator->_localDir + _item._file); QString newDirStr = QDir::toNativeSeparators(newDir.path()); - if( Utility::fsCasePreserving() && newDir.exists() && - _propagator->localFileNameClash(_item._file ) ) { + if( Utility::fsCasePreserving() && _propagator->localFileNameClash(_item._file ) ) { qDebug() << "WARN: new directory to create locally already exists!"; done( SyncFileItem::NormalError, tr("Attention, possible case sensitivity clash with %1").arg(newDirStr) ); return; @@ -154,6 +153,35 @@ void PropagateRemoteRemove::start() done(SyncFileItem::Success); } +/* The list of properties that is fetched in PropFind after a MKCOL */ +static const ne_propname ls_props[] = { + { "DAV:", "getetag"}, + { "http://owncloud.org/ns", "id"}, + { NULL, NULL } +}; + +/* + * Parse the PROPFIND result after a MKCOL + */ +void PropagateRemoteMkdir::propfind_results(void *userdata, + const ne_uri *uri, + const ne_prop_result_set *set) +{ + PropagateRemoteMkdir *job = static_cast(userdata); + + job->_item._etag = parseEtag(ne_propset_value( set, &ls_props[0] )); + + const char* fileId = ne_propset_value( set, &ls_props[1] ); + if (fileId) { + job->_item._fileId = fileId; + qDebug() << "MKCOL: " << uri << " FileID set it to " << fileId; + + // save the file id already so we can detect rename + SyncJournalFileRecord record(job->_item, job->_propagator->_localDir + job->_item._renameTarget); + job->_propagator->_journal->setFileRecord(record); + } +} + void PropagateRemoteMkdir::start() { if (_propagator->_abortRequested.fetchAndAddRelaxed(0)) @@ -174,6 +202,16 @@ void PropagateRemoteMkdir::start() return; } + // Get the fileid + // This is required so that wa can detect moves even if the folder is renamed on the server + // while files are still uploading + // TODO: Now we have to do a propfind because the server does not give the file id in the request + // https://github.com/owncloud/core/issues/9000 + + ne_propfind_handler *hdl = ne_propfind_create(_propagator->_session, uri.data(), 0); + ne_propfind_named(hdl, ls_props, propfind_results, this); + ne_propfind_destroy(hdl); + done(SyncFileItem::Success); } diff --git a/src/mirall/propagatorjobs.h b/src/mirall/propagatorjobs.h index 8a47f2a52..df7a5e472 100644 --- a/src/mirall/propagatorjobs.h +++ b/src/mirall/propagatorjobs.h @@ -74,38 +74,41 @@ class PropagateLocalRemove : public PropagateItemJob { Q_OBJECT public: PropagateLocalRemove (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; class PropagateLocalMkdir : public PropagateItemJob { Q_OBJECT public: PropagateLocalMkdir (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; class PropagateRemoteRemove : public PropagateNeonJob { Q_OBJECT public: PropagateRemoteRemove (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; class PropagateRemoteMkdir : public PropagateNeonJob { Q_OBJECT public: PropagateRemoteMkdir (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; +private: + static void propfind_results(void *userdata, const ne_uri *uri, const ne_prop_result_set *set); + friend class PropagateDirectory; // So it can access the _item; }; class PropagateLocalRename : public PropagateItemJob { Q_OBJECT public: PropagateLocalRename (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateItemJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; class PropagateRemoteRename : public PropagateNeonJob { Q_OBJECT public: PropagateRemoteRename (OwncloudPropagator* propagator,const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; @@ -114,7 +117,7 @@ class UpdateMTimeAndETagJob : public PropagateNeonJob{ Q_OBJECT public: UpdateMTimeAndETagJob (OwncloudPropagator* propagator, const SyncFileItem& item) : PropagateNeonJob(propagator, item) {} - void start(); + void start() Q_DECL_OVERRIDE; }; diff --git a/src/mirall/protocolwidget.cpp b/src/mirall/protocolwidget.cpp index 965d77830..20926d169 100644 --- a/src/mirall/protocolwidget.cpp +++ b/src/mirall/protocolwidget.cpp @@ -25,6 +25,7 @@ #include "mirall/folderman.h" #include "mirall/syncfileitem.h" #include "mirall/folder.h" +#include "openfilemanager.h" #include "ui_protocolwidget.h" @@ -131,6 +132,13 @@ void ProtocolWidget::slotClearBlacklist() void ProtocolWidget::cleanIgnoreItems(const QString& folder) { int itemCnt = _ui->_treeWidget->topLevelItemCount(); + + // Limit the number of items + while(itemCnt > 2000) { + delete _ui->_treeWidget->takeTopLevelItem(itemCnt - 1); + itemCnt--; + } + for( int cnt = itemCnt-1; cnt >=0 ; cnt-- ) { QTreeWidgetItem *item = _ui->_treeWidget->topLevelItem(cnt); bool isErrorItem = item->data(0, IgnoredIndicatorRole).toBool(); @@ -169,7 +177,7 @@ void ProtocolWidget::slotOpenFile( QTreeWidgetItem *item, int ) // folder->path() always comes back with trailing path QString fullPath = folder->path() + fileName; if (QFile(fullPath).exists()) { - Utility::showInFileManager(fullPath); + showInFileManager(fullPath); } } } diff --git a/src/mirall/settingsdialog.h b/src/mirall/settingsdialog.h index 373f5efc6..fe82e77e5 100644 --- a/src/mirall/settingsdialog.h +++ b/src/mirall/settingsdialog.h @@ -49,8 +49,8 @@ public slots: void showActivityPage(); protected: - void reject(); - void accept(); + void reject() Q_DECL_OVERRIDE; + void accept() Q_DECL_OVERRIDE; private: Ui::SettingsDialog *_ui; diff --git a/src/mirall/settingsdialogmac.cpp b/src/mirall/settingsdialogmac.cpp index 87ba4b1c3..23466c6b9 100644 --- a/src/mirall/settingsdialogmac.cpp +++ b/src/mirall/settingsdialogmac.cpp @@ -23,6 +23,18 @@ namespace Mirall { SettingsDialogMac::SettingsDialogMac(ownCloudGui *gui, QWidget *parent) : MacPreferencesWindow(parent) { + // do not show minimize button. There is no use, and retoring the + // dialog from minimize is broken in MacPreferencesWindow + setWindowFlags(Qt::Window | Qt::WindowTitleHint | Qt::CustomizeWindowHint | + Qt::WindowCloseButtonHint | Qt::WindowMaximizeButtonHint); + + + // Emulate dialog behavior: Escape means close + QAction *closeWindowAction = new QAction(this); + closeWindowAction->setShortcut(QKeySequence(Qt::Key_Escape)); + connect(closeWindowAction, SIGNAL(triggered()), SLOT(close())); + addAction(closeWindowAction); + setObjectName("SettingsMac"); // required as group for saveGeometry call setWindowTitle(tr("%1").arg(Theme::instance()->appNameGUI())); diff --git a/src/mirall/socketapi.cpp b/src/mirall/socketapi.cpp index 8150962b4..e34f86d66 100644 --- a/src/mirall/socketapi.cpp +++ b/src/mirall/socketapi.cpp @@ -12,19 +12,18 @@ * for more details. */ -#include "socketapi.h" +#include "mirall/socketapi.h" #include "mirall/mirallconfigfile.h" #include "mirall/folderman.h" #include "mirall/folder.h" #include "mirall/utility.h" #include "mirall/theme.h" -#include "syncjournalfilerecord.h" +#include "mirall/syncjournalfilerecord.h" +#include "mirall/syncfileitem.h" #include #include -#include -#include #include #include #include @@ -47,6 +46,10 @@ CSYNC_EXCLUDE_TYPE csync_excluded(CSYNC *ctx, const char *path, int filetype); } +namespace { + const int PORT = 33001; +} + namespace Mirall { #define DEBUG qDebug() << "SocketApi: " @@ -72,6 +75,8 @@ SyncFileStatus recursiveFolderStatus(Folder *folder, const QString& fileName ) const QStringList dirEntries = dir.entryList( QDir::AllEntries | QDir::NoDotAndDotDot ); + SyncFileStatus result(SyncFileStatus::STATUS_SYNC); + foreach( const QString entry, dirEntries ) { QFileInfo fi(entry); SyncFileStatus sfs; @@ -86,14 +91,13 @@ SyncFileStatus recursiveFolderStatus(Folder *folder, const QString& fileName ) sfs = fileStatus(folder, fs ); } - if( sfs == FILE_STATUS_STAT_ERROR || sfs == FILE_STATUS_ERROR ) { - return FILE_STATUS_ERROR; - } - if( sfs != FILE_STATUS_SYNC) { - return FILE_STATUS_EVAL; + if( sfs.tag() == SyncFileStatus::STATUS_STAT_ERROR || sfs.tag() == SyncFileStatus::STATUS_ERROR ) { + return SyncFileStatus::STATUS_ERROR; + } else if( sfs.tag() == SyncFileStatus::STATUS_EVAL || sfs.tag() == SyncFileStatus::STATUS_NEW) { + result.set(SyncFileStatus::STATUS_EVAL); } } - return FILE_STATUS_SYNC; + return result; } /** @@ -101,103 +105,86 @@ SyncFileStatus recursiveFolderStatus(Folder *folder, const QString& fileName ) */ SyncFileStatus fileStatus(Folder *folder, const QString& fileName ) { - /* - STATUS_NONE, - + STATUS_EVAL, - STATUS_REMOVE, (invalid for this case because it asks for local files) - STATUS_RENAME, - + STATUS_NEW, - STATUS_CONFLICT,(probably also invalid as we know the conflict only with server involvement) - + STATUS_IGNORE, - + STATUS_SYNC, - + STATUS_STAT_ERROR, - STATUS_ERROR, - STATUS_UPDATED - */ - // FIXME: Find a way for STATUS_ERROR - SyncFileStatus stat = FILE_STATUS_NONE; - QString file = fileName; - if( folder->path() != QLatin1String("/") ) { + QString file = folder->path(); + + bool isSyncRootFolder = true; + if( fileName != QLatin1String("/") && !fileName.isEmpty() ) { file = folder->path() + fileName; + isSyncRootFolder = false; } QFileInfo fi(file); if( !fi.exists() ) { - stat = FILE_STATUS_STAT_ERROR; // not really possible. + qDebug() << "OO File " << file << " is not existing"; + return SyncFileStatus(SyncFileStatus::STATUS_STAT_ERROR); } // file is ignored? if( fi.isSymLink() ) { - stat = FILE_STATUS_IGNORE; + return SyncFileStatus(SyncFileStatus::STATUS_IGNORE); } int type = CSYNC_FTW_TYPE_FILE; if( fi.isDir() ) { type = CSYNC_FTW_TYPE_DIR; } - if( stat == FILE_STATUS_NONE ) { - CSYNC_EXCLUDE_TYPE excl = csync_excluded(folder->csyncContext(), file.toUtf8(), type); - - if( excl != CSYNC_NOT_EXCLUDED ) { - stat = FILE_STATUS_IGNORE; - } + // on windows, there might be a colon in the file name. + QRegExp rx( "^[a-zA-Z]\\:[\\\\/]+"); + if( file.contains(rx) ) { + file.remove(0, 2); + } + CSYNC_EXCLUDE_TYPE excl = csync_excluded(folder->csyncContext(), file.toUtf8(), type); + if( excl != CSYNC_NOT_EXCLUDED ) { + return SyncFileStatus(SyncFileStatus::STATUS_IGNORE); } + // Problem: for the sync dir itself we do not have a record in the sync journal + // so the next check must not be used for the sync root folder. + SyncJournalFileRecord rec = folder->journalDb()->getFileRecord(fileName); + if( !isSyncRootFolder && !rec.isValid() ) { + return SyncFileStatus(SyncFileStatus::STATUS_NEW); + } + + SyncFileStatus status(SyncFileStatus::STATUS_NONE); if( type == CSYNC_FTW_TYPE_DIR ) { // compute recursive status of the directory - stat = recursiveFolderStatus( folder, fileName ); + status = recursiveFolderStatus( folder, fileName ); + } else if(fi.lastModified() != rec._modtime ) { + // file was locally modified. + status.set(SyncFileStatus::STATUS_EVAL); } else { - if( stat == FILE_STATUS_NONE ) { - SyncJournalFileRecord rec = folder->journalDb()->getFileRecord(fileName); - if( !rec.isValid() ) { - stat = FILE_STATUS_NEW; - } - - // file was locally modified. - if( stat == FILE_STATUS_NONE && fi.lastModified() != rec._modtime ) { - stat = FILE_STATUS_EVAL; - } - } - if( stat == FILE_STATUS_NONE ) { - stat = FILE_STATUS_SYNC; - } + status.set(SyncFileStatus::STATUS_SYNC); } - return stat; + + if (rec._remotePerm.contains("S")) { + // FIXME! that should be an additional flag + status.setSharedWithMe(true); + } + + return status; } } - -SocketApi::SocketApi(QObject* parent, const QUrl& localFile) +SocketApi::SocketApi(QObject* parent) : QObject(parent) - , _localServer(0) + , _localServer(new QTcpServer(this)) { - QString socketPath; - if (Utility::isWindows()) { - socketPath = QLatin1String("\\\\.\\pipe\\") - + Theme::instance()->appName(); - } else { - socketPath = localFile.toLocalFile(); - - } - // setup socket - _localServer = new QLocalServer(this); - QLocalServer::removeServer(socketPath); - if(!_localServer->listen(socketPath)) { - DEBUG << "can't start server" << socketPath; - } else { - DEBUG << "server started, listening at " << socketPath; + DEBUG << "Establishing SocketAPI server at" << PORT; + if (!_localServer->listen(QHostAddress::LocalHost, PORT)) { + DEBUG << "Failed to bind to port" << PORT; } connect(_localServer, SIGNAL(newConnection()), this, SLOT(slotNewConnection())); // folder watcher - connect(FolderMan::instance(), SIGNAL(folderSyncStateChange(QString)), SLOT(slotSyncStateChanged(QString))); - connect(ProgressDispatcher::instance(), SIGNAL(jobCompleted(QString,SyncFileItem)), SLOT(slotJobCompleted(QString,SyncFileItem))); + connect(FolderMan::instance(), SIGNAL(folderSyncStateChange(QString)), this, SLOT(slotUpdateFolderView(QString))); + connect(ProgressDispatcher::instance(), SIGNAL(jobCompleted(QString,SyncFileItem)), + SLOT(slotJobCompleted(QString,SyncFileItem))); } SocketApi::~SocketApi() @@ -208,30 +195,35 @@ SocketApi::~SocketApi() void SocketApi::slotNewConnection() { - QLocalSocket* socket = _localServer->nextPendingConnection(); + QTcpSocket* socket = _localServer->nextPendingConnection(); + if( ! socket ) { return; } - DEBUG << "New connection " << socket; + DEBUG << "New connection" << socket; connect(socket, SIGNAL(readyRead()), this, SLOT(slotReadSocket())); connect(socket, SIGNAL(disconnected()), this, SLOT(onLostConnection())); Q_ASSERT(socket->readAll().isEmpty()); _listeners.append(socket); + + foreach( QString alias, FolderMan::instance()->map().keys() ) { + slotUpdateFolderView(alias); + } } void SocketApi::onLostConnection() { DEBUG << "Lost connection " << sender(); - QLocalSocket* socket = qobject_cast< QLocalSocket* >(sender()); + QTcpSocket* socket = qobject_cast(sender()); _listeners.removeAll(socket); } void SocketApi::slotReadSocket() { - QLocalSocket* socket = qobject_cast(sender()); + QTcpSocket* socket = qobject_cast(sender()); Q_ASSERT(socket); while(socket->canReadLine()) { @@ -239,21 +231,29 @@ void SocketApi::slotReadSocket() QString command = line.split(":").first(); QString function = QString(QLatin1String("command_")).append(command); - QString functionWithArguments = function + QLatin1String("(QString,QLocalSocket*)"); + QString functionWithArguments = function + QLatin1String("(QString,QTcpSocket*)"); int indexOfMethod = this->metaObject()->indexOfMethod(functionWithArguments.toAscii()); QString argument = line.remove(0, command.length()+1).trimmed(); if(indexOfMethod != -1) { - QMetaObject::invokeMethod(this, function.toAscii(), Q_ARG(QString, argument), Q_ARG(QLocalSocket*, socket)); + QMetaObject::invokeMethod(this, function.toAscii(), Q_ARG(QString, argument), Q_ARG(QTcpSocket*, socket)); } else { DEBUG << "The command is not supported by this version of the client:" << command << "with argument:" << argument; } } } -void SocketApi::slotSyncStateChanged(const QString&) +void SocketApi::slotUpdateFolderView(const QString& alias) { - broadcastMessage("UPDATE_VIEW"); + QString msg = QLatin1String("UPDATE_VIEW"); + + Folder *f = FolderMan::instance()->folder(alias); + if (f) { + msg.append(QLatin1String(":")); + msg.append(QDir::toNativeSeparators(QDir::cleanPath(f->path()))); + } + + broadcastMessage(msg); } void SocketApi::slotJobCompleted(const QString &folder, const SyncFileItem &item) @@ -269,12 +269,13 @@ void SocketApi::slotJobCompleted(const QString &folder, const SyncFileItem &item command = QLatin1String("ERROR"); } - broadcastMessage(QLatin1String("BROADCAST:") + command + QLatin1Char(':') + path); + broadcastMessage(QLatin1String("BROADCAST:") + command + QLatin1Char(':') + + QDir::toNativeSeparators(path)); } -void SocketApi::sendMessage(QLocalSocket* socket, const QString& message) +void SocketApi::sendMessage(QTcpSocket *socket, const QString& message) { DEBUG << "Sending message: " << message; QString localMessage = message; @@ -284,69 +285,20 @@ void SocketApi::sendMessage(QLocalSocket* socket, const QString& message) void SocketApi::broadcastMessage(const QString& message) { DEBUG << "Broadcasting to" << _listeners.count() << "listeners: " << message; - foreach(QLocalSocket* current, _listeners) - { + foreach(QTcpSocket* current, _listeners) { sendMessage(current, message); } } -void SocketApi::command_RETRIEVE_FOLDER_STATUS(const QString& argument, QLocalSocket* socket) +void SocketApi::command_RETRIEVE_FOLDER_STATUS(const QString& argument, QTcpSocket* socket) { + // This command is the same as RETRIEVE_FILE_STATUS + qDebug() << Q_FUNC_INFO << argument; - QString statusString; - - if( !socket ) { - qDebug() << "No valid socket object."; - return; - } - - Folder* folder = FolderMan::instance()->folderForPath( QUrl::fromLocalFile(argument) ); - // this can happen in offline mode e.g.: nothing to worry about - if (!folder) { - DEBUG << "folder offline or not watched:" << argument; - statusString = QLatin1String("NOP"); - } - - QDir dir(argument); - if( statusString.isEmpty() ) { - const QStringList fileEntries = dir.entryList( QDir::Files ); - foreach(const QString file, fileEntries) { - const QString absoluteFilePath = dir.absoluteFilePath(file); - SyncFileStatus fileStatus = SocketApiHelper::fileStatus(folder, absoluteFilePath.mid(folder->path().length()) ); - if( fileStatus == FILE_STATUS_STAT_ERROR ) { - qDebug() << "XXXXXXXXXXXX FileStatus is STAT ERROR for " << absoluteFilePath; - } - if( fileStatus != FILE_STATUS_SYNC ) { - qDebug() << "SyncFileStatus for " << absoluteFilePath << " is " << fileStatus; - // we found something that is not in sync - statusString = QLatin1String("NEED_SYNC"); - break; - } - } - } - - if( statusString.isEmpty() ) { // if it is still empty, we check the dirs recursively. - const QStringList dirEntries = dir.entryList( QDir::AllDirs | QDir::NoDotAndDotDot ); - - foreach(const QString entry, dirEntries) { - QString absoluteFilePath = dir.absoluteFilePath(entry); - SyncFileStatus sfs = SocketApiHelper::recursiveFolderStatus(folder, absoluteFilePath.mid(folder->path().length()) ); - if( sfs != FILE_STATUS_SYNC ) { - statusString = QLatin1String("NEED_SYNC"); - break; - } - } - } - - if( statusString.isEmpty() ) { - statusString = QLatin1String("OK"); - } - - QString message = QLatin1String("STATUS:")+statusString+QLatin1Char(':')+argument; - sendMessage(socket, message); + command_RETRIEVE_FILE_STATUS(argument, socket); } -void SocketApi::command_RETRIEVE_FILE_STATUS(const QString& argument, QLocalSocket* socket) +void SocketApi::command_RETRIEVE_FILE_STATUS(const QString& argument, QTcpSocket* socket) { if( !socket ) { qDebug() << "No valid socket object."; @@ -357,30 +309,20 @@ void SocketApi::command_RETRIEVE_FILE_STATUS(const QString& argument, QLocalSock QString statusString; - Folder* folder = FolderMan::instance()->folderForPath( QUrl::fromLocalFile(argument) ); - // this can happen in offline mode e.g.: nothing to worry about - if (!folder) { + Folder* syncFolder = FolderMan::instance()->folderForPath( argument ); + if (!syncFolder) { + // this can happen in offline mode e.g.: nothing to worry about DEBUG << "folder offline or not watched:" << argument; statusString = QLatin1String("NOP"); + } else { + const QString file = argument.mid(syncFolder->path().length()); + SyncFileStatus fileStatus = SocketApiHelper::fileStatus(syncFolder, file); + + statusString = fileStatus.toSocketAPIString(); } - if( statusString.isEmpty() ) { - SyncFileStatus fileStatus = SocketApiHelper::fileStatus(folder, argument.mid(folder->path().length()) ); - if( fileStatus == FILE_STATUS_STAT_ERROR ) { - qDebug() << "XXXXXXXXXXXX FileStatus is STAT ERROR for " << argument; - } - if( fileStatus != FILE_STATUS_SYNC ) { - qDebug() << "SyncFileStatus for " << argument << " is " << fileStatus; - // we found something that is not in sync - statusString = QLatin1String("NEED_SYNC"); - } - } - - if( statusString.isEmpty() ) { - statusString = QLatin1String("OK"); - } - - QString message = QLatin1String("STATUS:")+statusString+QLatin1Char(':')+argument; + QString message = QLatin1String("STATUS:")+statusString+QLatin1Char(':') + +QDir::toNativeSeparators(argument); sendMessage(socket, message); } diff --git a/src/mirall/socketapi.h b/src/mirall/socketapi.h index 3e3f90f7e..52a07c445 100644 --- a/src/mirall/socketapi.h +++ b/src/mirall/socketapi.h @@ -17,41 +17,44 @@ #define SOCKETAPI_H #include +#include +#include + +#include "mirall/syncfileitem.h" class QUrl; class QLocalSocket; -class QLocalServer; class QStringList; namespace Mirall { -class SyncFileItem; - class SocketApi : public QObject { Q_OBJECT public: - SocketApi(QObject* parent, const QUrl& localFile); + SocketApi(QObject* parent); virtual ~SocketApi(); +public slots: + void slotUpdateFolderView(const QString&); + private slots: void slotNewConnection(); void onLostConnection(); void slotReadSocket(); - void slotSyncStateChanged(const QString&); void slotJobCompleted(const QString &, const SyncFileItem &); private: - void sendMessage(QLocalSocket* socket, const QString& message); + void sendMessage(QTcpSocket* socket, const QString& message); void broadcastMessage(const QString& message); - Q_INVOKABLE void command_RETRIEVE_FOLDER_STATUS(const QString& argument, QLocalSocket* socket); - Q_INVOKABLE void command_RETRIEVE_FILE_STATUS(const QString& argument, QLocalSocket* socket); + Q_INVOKABLE void command_RETRIEVE_FOLDER_STATUS(const QString& argument, QTcpSocket* socket); + Q_INVOKABLE void command_RETRIEVE_FILE_STATUS(const QString& argument, QTcpSocket* socket); private: - QLocalServer* _localServer; - QList< QLocalSocket* > _listeners; + QTcpServer *_localServer; + QList _listeners; }; } diff --git a/src/mirall/sslerrordialog.h b/src/mirall/sslerrordialog.h index ad53e4a9f..b8639844a 100644 --- a/src/mirall/sslerrordialog.h +++ b/src/mirall/sslerrordialog.h @@ -33,7 +33,7 @@ class SslErrorDialog; class SslDialogErrorHandler : public AbstractSslErrorHandler { public: - bool handleErrors(QList errors, QList *certs, Account*); + bool handleErrors(QList errors, QList *certs, Account*) Q_DECL_OVERRIDE; }; class SslErrorDialog : public QDialog diff --git a/src/mirall/syncengine.cpp b/src/mirall/syncengine.cpp index 65267d186..cad4ce7c3 100644 --- a/src/mirall/syncengine.cpp +++ b/src/mirall/syncengine.cpp @@ -16,7 +16,6 @@ #include "mirall/syncengine.h" #include "mirall/account.h" #include "mirall/theme.h" -#include "mirall/logger.h" #include "owncloudpropagator.h" #include "syncjournaldb.h" #include "syncjournalfilerecord.h" @@ -40,27 +39,24 @@ #include #include #include +#include namespace Mirall { -void csyncLogCatcher(int /*verbosity*/, - const char */*function*/, - const char *buffer, - void */*userdata*/) -{ - Logger::instance()->csyncLog( QString::fromUtf8(buffer) ); -} - bool SyncEngine::_syncRunning = false; SyncEngine::SyncEngine(CSYNC *ctx, const QString& localPath, const QString& remoteURL, const QString& remotePath, Mirall::SyncJournalDb* journal) - : _uploadLimit(0), _downloadLimit(0) + : _csync_ctx(ctx) + , _needsUpdate(false) + , _localPath(localPath) + , _remoteUrl(remoteURL) + , _remotePath(remotePath) + , _journal(journal) + , _hasNoneFiles(false) + , _hasRemoveFile(false) + , _uploadLimit(0) + , _downloadLimit(0) { - _localPath = localPath; - _remotePath = remotePath; - _remoteUrl = remoteURL; - _csync_ctx = ctx; - _journal = journal; qRegisterMetaType("SyncFileItem"); qRegisterMetaType("SyncFileItem::Status"); qRegisterMetaType("Progress::Info"); @@ -151,7 +147,7 @@ QString SyncEngine::csyncErrorToString(CSYNC_STATUS err) errStr = tr("CSync failed to connect to the network."); break; case CSYNC_STATUS_TIMEOUT: - errStr = tr("A network connection timeout happend."); + errStr = tr("A network connection timeout happened."); break; case CSYNC_STATUS_HTTP_ERROR: errStr = tr("A HTTP transmission error happened."); @@ -270,12 +266,16 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) if (file->directDownloadCookies) { item._directDownloadCookies = QString::fromUtf8( file->directDownloadCookies ); } - if (file->remotePerm) { + if (file->remotePerm && file->remotePerm[0]) { item._remotePerm = QByteArray(file->remotePerm); } // record the seen files to be able to clean the journal later - _seenFiles[item._file] = QString(); + _seenFiles.insert(item._file); + + if (remote && file->remotePerm && file->remotePerm[0]) { + _remotePerms[item._file] = file->remotePerm; + } switch(file->error_status) { case CSYNC_STATUS_OK: @@ -329,12 +329,12 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) _journal->setFileRecord(SyncJournalFileRecord(item, _localPath + item._file)); item._should_update_etag = false; } - if (item._isDirectory && remote) { + if (item._isDirectory && (remote || file->should_update_etag)) { // Because we want still to update etags of directories dir = SyncFileItem::None; } else { // No need to do anything. - _hasFiles = true; + _hasNoneFiles = true; emit syncItemDiscovered(item); return re; @@ -347,8 +347,9 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) _renamedFolders.insert(item._file, item._renameTarget); break; case CSYNC_INSTRUCTION_REMOVE: + _hasRemoveFile = true; dir = !remote ? SyncFileItem::Down : SyncFileItem::Up; - break; + break; case CSYNC_INSTRUCTION_CONFLICT: case CSYNC_INSTRUCTION_IGNORE: case CSYNC_INSTRUCTION_ERROR: @@ -360,6 +361,11 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) case CSYNC_INSTRUCTION_STAT_ERROR: default: dir = remote ? SyncFileItem::Down : SyncFileItem::Up; + if (!remote && file->instruction == CSYNC_INSTRUCTION_SYNC) { + // An upload of an existing file means that the file was left unchanged on the server + // This count as a NONE for detecting if all the file on the server were changed + _hasNoneFiles = true; + } break; } @@ -368,12 +374,6 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) // if the item is on blacklist, the instruction was set to IGNORE checkBlacklisting( &item ); - if (file->instruction != CSYNC_INSTRUCTION_IGNORE - && file->instruction != CSYNC_INSTRUCTION_REMOVE - && file->instruction != CSYNC_INSTRUCTION_ERROR) { - _hasFiles = true; - } - if (!item._isDirectory) { _progressInfo._totalFileCount++; if (Progress::isSizeDependent(file->instruction)) { @@ -395,6 +395,7 @@ int SyncEngine::treewalkFile( TREE_WALK_FILE *file, bool remote ) item.log._other_size = file->other.size; _syncedItems.append(item); + emit syncItemDiscovered(item); return re; } @@ -432,9 +433,7 @@ void SyncEngine::startSync() Q_ASSERT(!_syncRunning); _syncRunning = true; - if( ! _csync_ctx ) { - qDebug() << "XXXXXXXXXXXXXXXX FAIL: do not have csync_ctx!"; - } + Q_ASSERT(_csync_ctx); _syncedItems.clear(); _needsUpdate = false; @@ -498,7 +497,6 @@ void SyncEngine::startSync() // } // csync_set_auth_callback( _csync_ctx, getauth ); - csync_set_log_callback( csyncLogCatcher ); //csync_set_log_level( 11 ); don't set the loglevel here, it shall be done by folder.cpp or owncloudcmd.cpp int timeout = OwncloudPropagator::httpTimeout(); csync_set_module_property(_csync_ctx, "timeout", &timeout); @@ -526,11 +524,13 @@ void SyncEngine::slotUpdateFinished(int updateResult) handleSyncError(_csync_ctx, "csync_reconcile"); return; } + _stopWatch.addLapTime(QLatin1String("Reconcile Finished")); _progressInfo = Progress::Info(); - _hasFiles = false; + _hasNoneFiles = false; + _hasRemoveFile = false; bool walkOk = true; _seenFiles.clear(); @@ -548,6 +548,12 @@ void SyncEngine::slotUpdateFinished(int updateResult) it->_file = adjustRenamedPath(it->_file); } + // Sort items per destination + std::sort(_syncedItems.begin(), _syncedItems.end()); + + // make sure everything is allowed + checkForPermission(); + // Sanity check if (!_journal->isConnected()) { qDebug() << "Bailing out, DB failure"; @@ -560,8 +566,8 @@ void SyncEngine::slotUpdateFinished(int updateResult) emit aboutToPropagate(_syncedItems); emit transmissionProgress(_progressInfo); - if (!_hasFiles && !_syncedItems.isEmpty()) { - qDebug() << Q_FUNC_INFO << "All the files are going to be removed, asking the user"; + if (!_hasNoneFiles && _hasRemoveFile) { + qDebug() << Q_FUNC_INFO << "All the files are going to be changed, asking the user"; bool cancel = false; emit aboutToRemoveAllFiles(_syncedItems.first()._direction, &cancel); if (cancel) { @@ -579,6 +585,15 @@ void SyncEngine::slotUpdateFinished(int updateResult) csync_set_module_property(_csync_ctx, "get_dav_session", &session); Q_ASSERT(session); + // post update phase script: allow to tweak stuff by a custom script in debug mode. +#ifndef NDEBUG + if( !qgetenv("OWNCLOUD_POST_UPDATE_SCRIPT").isEmpty() ) { + QString script = qgetenv("OWNCLOUD_POST_UPDATE_SCRIPT"); + + qDebug() << "OOO => Post Update Script: " << script; + QProcess::execute(script.toUtf8()); + } +#endif _propagator.reset(new OwncloudPropagator (session, _localPath, _remoteUrl, _remotePath, _journal, &_thread)); connect(_propagator.data(), SIGNAL(completed(SyncFileItem)), @@ -654,6 +669,7 @@ void SyncEngine::slotFinished() if( ! _journal->postSyncCleanup( _seenFiles ) ) { qDebug() << "Cleaning of synced "; } + _journal->commit("All Finished.", false); emit treeWalkResult(_syncedItems); finalize(); @@ -661,14 +677,14 @@ void SyncEngine::slotFinished() void SyncEngine::finalize() { + _thread.quit(); + _thread.wait(); csync_commit(_csync_ctx); qDebug() << "CSync run took " << _stopWatch.addLapTime(QLatin1String("Sync Finished")); _stopWatch.stop(); _propagator.reset(0); - _thread.quit(); - _thread.wait(); _syncRunning = false; emit finished(); } @@ -698,6 +714,199 @@ QString SyncEngine::adjustRenamedPath(const QString& original) return original; } +void SyncEngine::checkForPermission() +{ + for (SyncFileItemVector::iterator it = _syncedItems.begin(); it != _syncedItems.end(); ++it) { + + if (it->_direction != SyncFileItem::Up) { + // Currently we only check server-side permissions + continue; + } + + switch(it->_instruction) { + case CSYNC_INSTRUCTION_NEW: { + int slashPos = it->_file.lastIndexOf('/'); + QString parentDir = slashPos <= 0 ? "" : it->_file.mid(0, slashPos); + const QByteArray perms = getPermissions(parentDir); + if (perms.isNull()) { + // No permissions set + break; + } else if (it->_isDirectory && !perms.contains("K")) { + qDebug() << "checkForPermission: ERROR" << it->_file; + it->_instruction = CSYNC_INSTRUCTION_ERROR; + it->_status = SyncFileItem::NormalError; + it->_errorString = tr("Not allowed because you don't have permission to add sub-directories in that directory"); + + const QString path = it->_file + QLatin1Char('/'); + for (SyncFileItemVector::iterator it_next = it + 1; it_next != _syncedItems.end() && it_next->_file.startsWith(path); ++it_next) { + it = it_next; + it->_instruction = CSYNC_INSTRUCTION_ERROR; + it->_status = SyncFileItem::NormalError; + it->_errorString = tr("Not allowed because you don't have permission to add parent directory"); + } + + } else if (!it->_isDirectory && !perms.contains("C")) { + qDebug() << "checkForPermission: ERROR" << it->_file; + it->_instruction = CSYNC_INSTRUCTION_ERROR; + it->_status = SyncFileItem::NormalError; + it->_errorString = tr("Not allowed because you don't have permission to add files in that directory"); + } + break; + } + case CSYNC_INSTRUCTION_SYNC: { + const QByteArray perms = getPermissions(it->_file); + if (perms.isNull()) { + // No permissions set + break; + } if (!it->_isDirectory && !perms.contains("W")) { + qDebug() << "checkForPermission: RESTORING" << it->_file; + it->_instruction = CSYNC_INSTRUCTION_CONFLICT; + it->_direction = SyncFileItem::Down; + it->_isRestoration = true; + // take the things to write to the db from the "other" node (i.e: info from server) + it->_modtime = it->log._other_modtime; + it->_fileId = it->log._other_fileId; + it->_etag = it->log._other_etag; + it->_errorString = tr("Not allowed to upload this file because it is read-only on the server, restoring"); + continue; + } + break; + } + case CSYNC_INSTRUCTION_REMOVE: { + const QByteArray perms = getPermissions(it->_file); + if (perms.isNull()) { + // No permissions set + break; + } if (!perms.contains("D")) { + qDebug() << "checkForPermission: RESTORING" << it->_file; + it->_instruction = CSYNC_INSTRUCTION_NEW; + it->_direction = SyncFileItem::Down; + it->_isRestoration = true; + it->_errorString = tr("Not allowed to remove, restoring"); + + if (it->_isDirectory) { + // restore all sub items + const QString path = it->_file + QLatin1Char('/'); + for (SyncFileItemVector::iterator it_next = it + 1; + it_next != _syncedItems.end() && it_next->_file.startsWith(path); ++it_next) { + it = it_next; + + if (it->_instruction != CSYNC_INSTRUCTION_REMOVE) { + qWarning() << "non-removed job within a removed directory" + << it->_file << it->_instruction; + continue; + } + + qDebug() << "checkForPermission: RESTORING" << it->_file; + + it->_instruction = CSYNC_INSTRUCTION_NEW; + it->_direction = SyncFileItem::Down; + it->_isRestoration = true; + it->_errorString = tr("Not allowed to remove, restoring"); + } + } + } + break; + } + + case CSYNC_INSTRUCTION_RENAME: { + + int slashPos = it->_renameTarget.lastIndexOf('/'); + const QString parentDir = slashPos <= 0 ? "" : it->_renameTarget.mid(0, slashPos-1); + const QByteArray destPerms = getPermissions(parentDir); + const QByteArray filePerms = getPermissions(it->_file); + + //true when it is just a rename in the same directory. (not a move) + bool isRename = it->_file.startsWith(parentDir) && it->_file.lastIndexOf('/') == slashPos; + + + // Check if we are allowed to move to the destination. + bool destinationOK = true; + if (isRename || destPerms.isNull()) { + // no need to check for the destination dir permission + destinationOK = true; + } else if (it->_isDirectory && !destPerms.contains("K")) { + destinationOK = false; + } else if (!it->_isDirectory && !destPerms.contains("C")) { + destinationOK = false; + } + + // check if we are allowed to move from the source + bool sourceOK = true; + if (!filePerms.isNull() + && ((isRename && !filePerms.contains("N")) + || (!isRename && !filePerms.contains("M")))) { + + // We are not allowed to move or rename this file + sourceOK = false; + + if (filePerms.contains("D") && destinationOK) { + // but we are allowed to delete it + // TODO! simulate delete & upload + } + } + +#if 0 /* We don't like the idea of renaming behind user's back, as the user may be working with the files */ + + if (!sourceOK && !destinationOK) { + // Both the source and the destination won't allow move. Move back to the original + std::swap(it->_file, it->_renameTarget); + it->_direction = SyncFileItem::Down; + it->_errorString = tr("Move not allowed, item restored"); + it->_isRestoration = true; + qDebug() << "checkForPermission: MOVING BACK" << it->_file; + } else +#endif + if (!sourceOK || !destinationOK) { + // One of them is not possible, just throw an error + it->_instruction = CSYNC_INSTRUCTION_ERROR; + it->_status = SyncFileItem::NormalError; + const QString errorString = tr("Move not allowed because %1 is read-only").arg( + sourceOK ? tr("the destination") : tr("the source")); + it->_errorString = errorString; + + qDebug() << "checkForPermission: ERROR MOVING" << it->_file << errorString; + + // Avoid a rename on next sync: + // TODO: do the resolution now already so we don't need two sync + // At this point we would need to go back to the propagate phase on both remote to take + // the decision. + _journal->avoidRenamesOnNextSync(it->_file); + + + if (it->_isDirectory) { + const QString path = it->_renameTarget + QLatin1Char('/'); + for (SyncFileItemVector::iterator it_next = it + 1; + it_next != _syncedItems.end() && it_next->destination().startsWith(path); ++it_next) { + it = it_next; + it->_instruction = CSYNC_INSTRUCTION_ERROR; + it->_status = SyncFileItem::NormalError; + it->_errorString = errorString; + qDebug() << "checkForPermission: ERROR MOVING" << it->_file; + } + } + } + break; + } + default: + break; + } + } +} + +QByteArray SyncEngine::getPermissions(const QString& file) const +{ + static bool isTest = qgetenv("OWNCLOUD_TEST_PERMISSIONS").toInt(); + if (isTest) { + QRegExp rx("_PERM_([^_]*)_[^/]*$"); + if (rx.indexIn(file) != -1) { + return rx.cap(1).toLatin1(); + } + } + return _remotePerms.value(file); +} + + void SyncEngine::abort() { csync_request_abort(_csync_ctx); diff --git a/src/mirall/syncengine.h b/src/mirall/syncengine.h index 6aeb384ec..5dd5d595a 100644 --- a/src/mirall/syncengine.h +++ b/src/mirall/syncengine.h @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -39,11 +40,6 @@ class SyncJournalDb; class OwncloudPropagator; -void OWNCLOUDSYNC_EXPORT csyncLogCatcher(int /*verbosity*/, - const char */*function*/, - const char *buffer, - void */*userdata*/); - class OWNCLOUDSYNC_EXPORT SyncEngine : public QObject { Q_OBJECT @@ -115,7 +111,7 @@ private: SyncJournalDb *_journal; QScopedPointer _propagator; QString _lastDeleted; // if the last item was a path and it has been deleted - QHash _seenFiles; + QSet _seenFiles; QThread _thread; Progress::Info _progressInfo; @@ -126,10 +122,21 @@ private: QHash _renamedFolders; QString adjustRenamedPath(const QString &original); - bool _hasFiles; // true if there is at least one file that is not ignored or removed + /** + * check if we are allowed to propagate everything, and if we are not, adjust the instructions + * to recover + */ + void checkForPermission(); + QByteArray getPermissions(const QString& file) const; + + bool _hasNoneFiles; // true if there is at least one file with instruction NONE + bool _hasRemoveFile; // true if there is at leasr one file with instruction REMOVE int _uploadLimit; int _downloadLimit; + + // hash containing the permissions on the remote directory + QHash _remotePerms; }; diff --git a/src/mirall/syncfileitem.h b/src/mirall/syncfileitem.h index b869a3dd3..4ce515f4a 100644 --- a/src/mirall/syncfileitem.h +++ b/src/mirall/syncfileitem.h @@ -46,12 +46,14 @@ public: Success, ///< The file was properly synced Conflict, ///< The file was properly synced, but a conflict was created - FileIgnored ///< The file is in the ignored list + FileIgnored, ///< The file is in the ignored list + Restoration ///< The file was restored because what should have been done was not allowed }; - SyncFileItem() : _type(UnknownType), _direction(None), _instruction(CSYNC_INSTRUCTION_NONE), - _size(0), _should_update_etag(false), _blacklistedInDb(false), - _status(NoStatus), _httpErrorCode(0), _requestDuration(0) {} + SyncFileItem() : _type(UnknownType), _direction(None), _isDirectory(false), + _instruction(CSYNC_INSTRUCTION_NONE), _modtime(0), + _size(0), _inode(0), _should_update_etag(false), _blacklistedInDb(false), + _status(NoStatus), _httpErrorCode(0), _requestDuration(0), _isRestoration(false) {} friend bool operator==(const SyncFileItem& item1, const SyncFileItem& item2) { return item1._file == item2._file; @@ -97,6 +99,7 @@ public: int _httpErrorCode; QString _responseTimeStamp; quint64 _requestDuration; + bool _isRestoration; // The original operation was forbidden, and this is a restoration struct { quint64 _size; diff --git a/src/mirall/syncfilestatus.cpp b/src/mirall/syncfilestatus.cpp new file mode 100644 index 000000000..8c8770ae3 --- /dev/null +++ b/src/mirall/syncfilestatus.cpp @@ -0,0 +1,87 @@ +/* + * Copyright (C) by Klaas Freitag + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#include "mirall/syncfilestatus.h" + +#include + +namespace Mirall { +SyncFileStatus::SyncFileStatus() + :_tag(STATUS_NONE), _sharedWithMe(false) +{ +} + +SyncFileStatus::SyncFileStatus(SyncFileStatusTag tag) + :_tag(tag), _sharedWithMe(false) +{ + +} + +void SyncFileStatus::set(SyncFileStatusTag tag) +{ + _tag = tag; +} + +SyncFileStatus::SyncFileStatusTag SyncFileStatus::tag() +{ + return _tag; +} + +void SyncFileStatus::setSharedWithMe(bool isShared) +{ + _sharedWithMe = isShared; +} + +bool SyncFileStatus::sharedWithMe() +{ + return _sharedWithMe; +} + +QString SyncFileStatus::toSocketAPIString() const +{ + QString statusString; + + switch(_tag) + { + case STATUS_NONE: + statusString = QLatin1String("NONE"); + break; + case STATUS_EVAL: + statusString = QLatin1String("SYNC"); + break; + case STATUS_NEW: + statusString = QLatin1String("NEW"); + break; + case STATUS_IGNORE: + statusString = QLatin1String("IGNORE"); + break; + case STATUS_SYNC: + case STATUS_UPDATED: + statusString = QLatin1String("OK"); + break; + case STATUS_STAT_ERROR: + case STATUS_ERROR: + statusString = QLatin1String("ERROR"); + break; + default: + qWarning() << "This status should not be here:" << _tag; + Q_ASSERT(false); + statusString = QLatin1String("NONE"); + } + if(_sharedWithMe) { + statusString += QLatin1String("+SWM"); + } + + return statusString; +} +} diff --git a/src/mirall/syncfilestatus.h b/src/mirall/syncfilestatus.h new file mode 100644 index 000000000..9e656f50b --- /dev/null +++ b/src/mirall/syncfilestatus.h @@ -0,0 +1,58 @@ +/* + * Copyright (C) by Klaas Freitag + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + */ + +#ifndef SYNCFILESTATUS_H +#define SYNCFILESTATUS_H + +#include + +#include "owncloudlib.h" + +namespace Mirall { + +class OWNCLOUDSYNC_EXPORT SyncFileStatus +{ +public: + enum SyncFileStatusTag { + STATUS_NONE, + STATUS_EVAL, + STATUS_REMOVE, + STATUS_RENAME, + STATUS_MOVE, + STATUS_NEW, + STATUS_CONFLICT, + STATUS_IGNORE, + STATUS_SYNC, + STATUS_STAT_ERROR, + STATUS_ERROR, + STATUS_UPDATED + }; + + SyncFileStatus(); + SyncFileStatus(SyncFileStatusTag); + + void set(SyncFileStatusTag tag); + SyncFileStatusTag tag(); + + void setSharedWithMe( bool isShared ); + bool sharedWithMe(); + + QString toSocketAPIString() const; +private: + SyncFileStatusTag _tag; + bool _sharedWithMe; + +}; +} + +#endif // SYNCFILESTATUS_H diff --git a/src/mirall/syncjournaldb.cpp b/src/mirall/syncjournaldb.cpp index edb88d572..6f7497a12 100644 --- a/src/mirall/syncjournaldb.cpp +++ b/src/mirall/syncjournaldb.cpp @@ -482,8 +482,8 @@ SyncJournalFileRecord SyncJournalDb::getFileRecord( const QString& filename ) rec._mode = _getFileRecordQuery->value(4).toInt(&ok); rec._modtime = Utility::qDateTimeFromTime_t(_getFileRecordQuery->value(5).toLongLong(&ok)); rec._type = _getFileRecordQuery->value(6).toInt(&ok); - rec._etag = _getFileRecordQuery->value(7).toString(); - rec._fileId = _getFileRecordQuery->value(8).toString(); + rec._etag = _getFileRecordQuery->value(7).toByteArray(); + rec._fileId = _getFileRecordQuery->value(8).toByteArray(); rec._remotePerm = _getFileRecordQuery->value(9).toByteArray(); _getFileRecordQuery->finish(); @@ -495,7 +495,7 @@ SyncJournalFileRecord SyncJournalDb::getFileRecord( const QString& filename ) return rec; } -bool SyncJournalDb::postSyncCleanup(const QHash &items ) +bool SyncJournalDb::postSyncCleanup(const QSet &items ) { QMutexLocker locker(&_mutex); diff --git a/src/mirall/syncjournaldb.h b/src/mirall/syncjournaldb.h index 097c29788..bf11f11c6 100644 --- a/src/mirall/syncjournaldb.h +++ b/src/mirall/syncjournaldb.h @@ -57,7 +57,7 @@ public: bool _valid; }; struct UploadInfo { - UploadInfo() : _chunk(0), _transferid(0), _errorCount(0), _valid(false) {} + UploadInfo() : _chunk(0), _transferid(0), _size(0), _errorCount(0), _valid(false) {} int _chunk; int _transferid; quint64 _size; //currently unused @@ -79,7 +79,7 @@ public: */ void avoidReadFromDbOnNextSync(const QString& fileName); - bool postSyncCleanup( const QHash& items ); + bool postSyncCleanup( const QSet& items ); /* Because sqlite transactions is really slow, we encapsulate everything in big transactions * Commit will actually commit the transaction and create a new one. diff --git a/src/mirall/syncjournalfilerecord.h b/src/mirall/syncjournalfilerecord.h index 8ac7513e9..7ba8c3b45 100644 --- a/src/mirall/syncjournalfilerecord.h +++ b/src/mirall/syncjournalfilerecord.h @@ -35,8 +35,8 @@ public: quint64 _inode; QDateTime _modtime; int _type; - QString _etag; // FIXME Why not QByteArray? - QString _fileId; // FIXME Why not QByteArray? + QByteArray _etag; + QByteArray _fileId; QByteArray _remotePerm; int _mode; }; diff --git a/src/mirall/syncrunfilelog.cpp b/src/mirall/syncrunfilelog.cpp index a30eae676..908406c4b 100644 --- a/src/mirall/syncrunfilelog.cpp +++ b/src/mirall/syncrunfilelog.cpp @@ -15,7 +15,6 @@ #include "mirall/syncrunfilelog.h" #include "mirall/utility.h" -#include "mirall/mirallconfigfile.h" #include "filesystem.h" #include diff --git a/src/mirall/theme.cpp b/src/mirall/theme.cpp index 8628508cb..cd804949d 100644 --- a/src/mirall/theme.cpp +++ b/src/mirall/theme.cpp @@ -36,6 +36,7 @@ Theme* Theme::_instance = 0; Theme* Theme::instance() { if (!_instance) { _instance = new THEME_CLASS; + // some themes may not call the base ctor _instance->_mono = false; } return _instance; @@ -151,8 +152,16 @@ QIcon Theme::themeIcon( const QString& name, bool sysTray ) const } return icon; } + #endif +Theme::Theme() : + QObject(0) + ,_mono(false) +{ + +} + // if this option return true, the client only supports one folder to sync. // The Add-Button is removed accoringly. bool Theme::singleSyncFolder() const { diff --git a/src/mirall/theme.h b/src/mirall/theme.h index 6e40b9f52..7f8166e6c 100644 --- a/src/mirall/theme.h +++ b/src/mirall/theme.h @@ -181,7 +181,7 @@ public: protected: QIcon themeIcon(const QString& name, bool sysTray = false) const; - Theme() {} + Theme(); signals: void systrayUseMonoIconsChanged(bool); diff --git a/src/mirall/utility.cpp b/src/mirall/utility.cpp index 32e32292e..1b4956fc9 100644 --- a/src/mirall/utility.cpp +++ b/src/mirall/utility.cpp @@ -22,10 +22,6 @@ #include #include #include -#ifndef TOKEN_AUTH_ONLY -#include -#include -#endif #include #include #include @@ -164,18 +160,6 @@ QByteArray Utility::userAgentString() .toLatin1(); } -void Utility::raiseDialog( QWidget *raiseWidget ) -{ -#ifndef TOKEN_AUTH_ONLY - if( raiseWidget && raiseWidget->parentWidget() == 0) { - // Qt has a bug which causes parent-less dialogs to pop-under. - raiseWidget->showNormal(); - raiseWidget->raise(); - raiseWidget->activateWindow(); - } -#endif -} - bool Utility::hasLaunchOnStartup(const QString &appName) { return hasLaunchOnStartup_private(appName); @@ -250,17 +234,6 @@ QString Utility::escape(const QString &in) #endif } -QString Utility::dataLocation() -{ - // Qt 5's QStandardPaths::writableLocation gives us wrong results (without /data/), - // so we'll have to use the deprecated version for now -#ifndef TOKEN_AUTH_ONLY - return QDesktopServices::storageLocation(QDesktopServices::DataLocation); -#else - return QString(); -#endif -} - #if QT_VERSION < QT_VERSION_CHECK(5, 0, 0) // In Qt 4, QThread::sleep functions are protected. // This is a hack to make them visible in this namespace. @@ -280,178 +253,18 @@ void Utility::usleep(int usec) QThread::usleep(usec); } -// ### helper functions for showInFileManager() ### - -// according to the QStandardDir impl from Qt5 -static QStringList xdgDataDirs() -{ - QStringList dirs; - // http://standards.freedesktop.org/basedir-spec/latest/ - QString xdgDataDirsEnv = QFile::decodeName(qgetenv("XDG_DATA_DIRS")); - if (xdgDataDirsEnv.isEmpty()) { - dirs.append(QString::fromLatin1("/usr/local/share")); - dirs.append(QString::fromLatin1("/usr/share")); - } else { - dirs = xdgDataDirsEnv.split(QLatin1Char(':')); - } - // local location - QString xdgDataHome = QFile::decodeName(qgetenv("XDG_DATA_HOME")); - if (xdgDataHome.isEmpty()) { - xdgDataHome = QDir::homePath()+"/.local/share"; - } - dirs.prepend(xdgDataHome); - return dirs; -} - -// Linux impl only, make sure to process %u and %U which might be returned -static QString findDefaultFileManager() -{ - QProcess p; - p.start("xdg-mime", QStringList() << "query" << "default" << "inode/directory", QFile::ReadOnly); - p.waitForFinished(); - QString fileName = QString::fromUtf8(p.readAll().trimmed()); - if (fileName.isEmpty()) - return QString(); - - QFileInfo fi; - QStringList dirs = xdgDataDirs(); - QStringList subdirs; - subdirs << "/applications/" << "/applications/kde4/"; - foreach(QString dir, dirs) { - foreach(QString subdir, subdirs) { - fi.setFile(dir + subdir + fileName); - if (fi.exists()) { - return fi.absoluteFilePath(); - } - } - } - return QString(); -} - -// early dolphin versions did not have --select -static bool checkDolphinCanSelect() -{ - QProcess p; - p.start("dolphin", QStringList() << "--help", QFile::ReadOnly); - p.waitForFinished(); - return p.readAll().contains("--select"); -} - bool Utility::fsCasePreserving() { bool re = false; if( isWindows() || isMac() ) { re = true; + } else { + static bool isTest = qgetenv("OWNCLOUD_TEST_CASE_PRESERVING").toInt(); + re = isTest; } return re; } -// inspired by Qt Creator's showInGraphicalShell(); -void Utility::showInFileManager(const QString &localPath) -{ - if (isWindows()) { -#ifdef Q_OS_WIN - if (QSysInfo::windowsVersion() <= QSysInfo::WV_2003) { - return; - } -#endif - QString explorer = "explorer.exe "; // FIXME: we trust it's in PATH - - if (!QFileInfo(localPath).isDir()) { - explorer += QLatin1String("/select,"); - } - explorer += QLatin1Char('"'); - explorer += QDir::toNativeSeparators(localPath); - explorer += QLatin1Char('"'); - - qDebug() << "OO Open explorer commandline:" << explorer; - QProcess p; - p.start(explorer); - p.waitForFinished(5000); - } else if (isMac()) { - QStringList scriptArgs; - scriptArgs << QLatin1String("-e") - << QString::fromLatin1("tell application \"Finder\" to reveal POSIX file \"%1\"") - .arg(localPath); - QProcess::execute(QLatin1String("/usr/bin/osascript"), scriptArgs); - scriptArgs.clear(); - scriptArgs << QLatin1String("-e") - << QLatin1String("tell application \"Finder\" to activate"); - QProcess::execute(QLatin1String("/usr/bin/osascript"), scriptArgs); - } else { - QString app; - QStringList args; - - static QString defaultManager = findDefaultFileManager(); - QSettings desktopFile(defaultManager, QSettings::IniFormat); - QString exec = desktopFile.value("Desktop Entry/Exec").toString(); - - QString fileToOpen = QFileInfo(localPath).absoluteFilePath(); - QString pathToOpen = QFileInfo(localPath).absolutePath(); - bool canHandleFile = false; // assume dumb fm - - args = exec.split(' '); - if (args.count() > 0) app = args.takeFirst(); - - QString kdeSelectParam("--select"); - - if (app.contains("konqueror") && !args.contains(kdeSelectParam)) { - // konq needs '--select' in order not to launch the file - args.prepend(kdeSelectParam); - canHandleFile = true; - } - - if (app.contains("dolphin")) - { - static bool dolphinCanSelect = checkDolphinCanSelect(); - if (dolphinCanSelect && !args.contains(kdeSelectParam)) { - args.prepend(kdeSelectParam); - canHandleFile = true; - } - } - - // whitelist - if (app.contains("nautilus") || app.contains("nemo")) { - canHandleFile = true; - } - - static QString name; - if (name.isEmpty()) { - name = desktopFile.value(QString::fromLatin1("Desktop Entry/Name[%1]").arg(qApp->property("ui_lang").toString())).toString(); - if (name.isEmpty()) { - name = desktopFile.value(QString::fromLatin1("Desktop Entry/Name")).toString(); - } - } - - std::replace(args.begin(), args.end(), QString::fromLatin1("%c"), name); - std::replace(args.begin(), args.end(), QString::fromLatin1("%u"), fileToOpen); - std::replace(args.begin(), args.end(), QString::fromLatin1("%U"), fileToOpen); - std::replace(args.begin(), args.end(), QString::fromLatin1("%f"), fileToOpen); - std::replace(args.begin(), args.end(), QString::fromLatin1("%F"), fileToOpen); - - // fixme: needs to append --icon, according to http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#exec-variables - QStringList::iterator it = std::find(args.begin(), args.end(), QString::fromLatin1("%i")); - if (it != args.end()) { - (*it) = desktopFile.value("Desktop Entry/Icon").toString(); - args.insert(it, QString::fromLatin1("--icon")); // before - } - - - if (args.count() == 0) args << fileToOpen; - - if (app.isEmpty() || args.isEmpty() || !canHandleFile) { - // fall back: open the default file manager, without ever selecting the file -#ifndef TOKEN_AUTH_ONLY - QDesktopServices::openUrl(QUrl::fromLocalFile(pathToOpen)); -#endif - } else { - QProcess::startDetached(app, args); - } - } -} - - - QDateTime Utility::qDateTimeFromTime_t(qint64 t) { return QDateTime::fromMSecsSinceEpoch(t * 1000); diff --git a/src/mirall/utility.h b/src/mirall/utility.h index cfe1fd06d..0d46146b9 100644 --- a/src/mirall/utility.h +++ b/src/mirall/utility.h @@ -36,12 +36,10 @@ namespace Utility OWNCLOUDSYNC_EXPORT QString octetsToString( qint64 octets ); OWNCLOUDSYNC_EXPORT QString platform(); OWNCLOUDSYNC_EXPORT QByteArray userAgentString(); - OWNCLOUDSYNC_EXPORT void raiseDialog(QWidget *); OWNCLOUDSYNC_EXPORT bool hasLaunchOnStartup(const QString &appName); OWNCLOUDSYNC_EXPORT void setLaunchOnStartup(const QString &appName, const QString& guiName, bool launch); OWNCLOUDSYNC_EXPORT qint64 freeDiskSpace(const QString &path, bool *ok = 0); OWNCLOUDSYNC_EXPORT QString toCSyncScheme(const QString &urlStr); - OWNCLOUDSYNC_EXPORT void showInFileManager(const QString &localPath); /** Like QLocale::toString(double, 'f', prec), but drops trailing zeros after the decimal point */ /** @@ -56,7 +54,6 @@ namespace Utility // porting methods OWNCLOUDSYNC_EXPORT QString escape(const QString&); - OWNCLOUDSYNC_EXPORT QString dataLocation(); // conversion function QDateTime <-> time_t (because the ones builtin work on only unsigned 32bit) OWNCLOUDSYNC_EXPORT QDateTime qDateTimeFromTime_t(qint64 t); @@ -70,8 +67,8 @@ namespace Utility * @param uint precision the amount of sub dviving scale to include in the result. * @return an HMS representation of the milliseconds value. */ - QString timeToDescriptiveString(QList > &timeMapping, quint64 msecs, quint8 precision, QString separator, bool specific); - QString timeToDescriptiveString(quint64 msecs, quint8 precision, QString separator, bool specific); + OWNCLOUDSYNC_EXPORT QString timeToDescriptiveString(QList > &timeMapping, quint64 msecs, quint8 precision, QString separator, bool specific); + OWNCLOUDSYNC_EXPORT QString timeToDescriptiveString(quint64 msecs, quint8 precision, QString separator, bool specific); // convinience OS detection methods OWNCLOUDSYNC_EXPORT bool isWindows(); @@ -85,7 +82,7 @@ namespace Utility // if false, the two cases are two different files. OWNCLOUDSYNC_EXPORT bool fsCasePreserving(); - class StopWatch { + class OWNCLOUDSYNC_EXPORT StopWatch { private: QHash _lapTimes; QDateTime _startTime; diff --git a/src/owncloudcmd/owncloudcmd.cpp b/src/owncloudcmd/owncloudcmd.cpp index a1746f9c3..23c660270 100644 --- a/src/owncloudcmd/owncloudcmd.cpp +++ b/src/owncloudcmd/owncloudcmd.cpp @@ -24,7 +24,6 @@ #include "mirall/syncengine.h" #include "mirall/syncjournaldb.h" -#include "mirall/logger.h" #include "csync.h" #include "mirall/clientproxy.h" #include "mirall/account.h" @@ -43,12 +42,13 @@ struct CmdOptions { bool trustSSL; }; +// we can't use csync_set_userdata because the SyncEngine sets it already. +// So we have to use a global variable +CmdOptions *opts = 0; + int getauth(const char* prompt, char* buf, size_t len, int a, int b, void *userdata) { - (void) a; - (void) b; - - struct CmdOptions *opts = (struct CmdOptions*) userdata; + Q_UNUSED(a) Q_UNUSED(b) Q_UNUSED(userdata) std::cout << "** Authentication required: \n" << prompt << std::endl; std::string s; @@ -169,15 +169,13 @@ int main(int argc, char **argv) { } csync_set_log_level(options.silent ? 1 : 11); - Logger::instance()->setLogFile("-"); - csync_set_userdata(_csync_ctx, &options); + opts = &options; csync_set_auth_callback( _csync_ctx, getauth ); if( csync_init( _csync_ctx ) < 0 ) { qFatal("Could not initialize csync!"); return EXIT_FAILURE; - _csync_ctx = 0; } csync_set_module_property(_csync_ctx, "csync_context", _csync_ctx); diff --git a/src/owncloudcmd/simplesslerrorhandler.h b/src/owncloudcmd/simplesslerrorhandler.h index 0a6bfd702..8e6876161 100644 --- a/src/owncloudcmd/simplesslerrorhandler.h +++ b/src/owncloudcmd/simplesslerrorhandler.h @@ -20,7 +20,7 @@ class QSslCertificate; class SimpleSslErrorHandler : public Mirall::AbstractSslErrorHandler { public: - bool handleErrors(QList errors, QList *certs, Mirall::Account*); + bool handleErrors(QList errors, QList *certs, Mirall::Account*) Q_DECL_OVERRIDE; }; #endif // SIMPLESSLERRORHANDLER_H diff --git a/src/updater/ocupdater.cpp b/src/updater/ocupdater.cpp index e0f7c2795..e4ed9073f 100644 --- a/src/updater/ocupdater.cpp +++ b/src/updater/ocupdater.cpp @@ -82,7 +82,7 @@ QString OCUpdater::statusString() const case DownloadTimedOut: return tr("Could not check for new updates."); case UpdateOnlyAvailableThroughSystem: - return tr("New version %1 available. Please use the systems update tool to install it.").arg(updateVersion); + return tr("New version %1 available. Please use the system's update tool to install it.").arg(updateVersion); case Unknown: return tr("Checking update server..."); case UpToDate: @@ -256,7 +256,7 @@ void NSISUpdater::showDialog(const UpdateInfo &info) ico->setPixmap(infoIcon.pixmap(iconSize)); QLabel *lbl = new QLabel; QString txt = tr("

A new version of the %1 Client is available.

" - "

%2 is available for download. The installed version is %3.

") + "

%2 is available for download. The installed version is %3.

") .arg(Theme::instance()->appNameGUI()).arg(info.versionString()).arg(clientVersion()); lbl->setText(txt); diff --git a/src/updater/ocupdater.h b/src/updater/ocupdater.h index 2b7c9765b..1041517bc 100644 --- a/src/updater/ocupdater.h +++ b/src/updater/ocupdater.h @@ -40,8 +40,8 @@ public: bool performUpdate(); - void checkForUpdate(); - void backgroundCheckForUpdate(); + void checkForUpdate() Q_DECL_OVERRIDE; + void backgroundCheckForUpdate() Q_DECL_OVERRIDE; QString statusString() const; int downloadState() const; @@ -77,7 +77,7 @@ class NSISUpdater : public OCUpdater { public: enum UpdateState { NoUpdate = 0, UpdateAvailable, UpdateFailed }; explicit NSISUpdater(const QUrl &url, QObject *parent = 0); - bool handleStartup(); + bool handleStartup() Q_DECL_OVERRIDE; private slots: void slotSetSeenVersion(); void slotDownloadFinished(); @@ -85,7 +85,7 @@ private slots: private: NSISUpdater::UpdateState updateStateOnStart(); void showDialog(const UpdateInfo &info); - void versionInfoArrived(const UpdateInfo &info); + void versionInfoArrived(const UpdateInfo &info) Q_DECL_OVERRIDE; QScopedPointer _file; QString _targetFile; bool _showFallbackMessage; @@ -98,10 +98,10 @@ class PassiveUpdateNotifier : public OCUpdater { Q_OBJECT public: explicit PassiveUpdateNotifier(const QUrl &url, QObject *parent = 0); - bool handleStartup() { return false; } + bool handleStartup() Q_DECL_OVERRIDE { return false; } private: - void versionInfoArrived(const UpdateInfo &info); + void versionInfoArrived(const UpdateInfo &info) Q_DECL_OVERRIDE; }; diff --git a/src/updater/sparkleupdater.h b/src/updater/sparkleupdater.h index 424f11fa5..373e8a25c 100644 --- a/src/updater/sparkleupdater.h +++ b/src/updater/sparkleupdater.h @@ -26,9 +26,9 @@ public: ~SparkleUpdater(); // unused in this updater - void checkForUpdate(); - void backgroundCheckForUpdate(); - bool handleStartup() { return false; } + void checkForUpdate() Q_DECL_OVERRIDE; + void backgroundCheckForUpdate() Q_DECL_OVERRIDE; + bool handleStartup() Q_DECL_OVERRIDE { return false; } private: class Private; Private *d; diff --git a/src/wizard/abstractcredswizardpage.h b/src/wizard/abstractcredswizardpage.h index f79fae414..a2ef1fe9a 100644 --- a/src/wizard/abstractcredswizardpage.h +++ b/src/wizard/abstractcredswizardpage.h @@ -24,7 +24,7 @@ class AbstractCredentials; class AbstractCredentialsWizardPage : public QWizardPage { public: - void cleanupPage(); + void cleanupPage() Q_DECL_OVERRIDE; virtual AbstractCredentials* getCredentials() const = 0; }; diff --git a/src/wizard/owncloudadvancedsetuppage.h b/src/wizard/owncloudadvancedsetuppage.h index 5d01e21d2..1d897fe77 100644 --- a/src/wizard/owncloudadvancedsetuppage.h +++ b/src/wizard/owncloudadvancedsetuppage.h @@ -31,10 +31,10 @@ class OwncloudAdvancedSetupPage: public QWizardPage public: OwncloudAdvancedSetupPage(); - virtual bool isComplete() const; - virtual void initializePage(); - virtual int nextId() const; - bool validatePage(); + virtual bool isComplete() const Q_DECL_OVERRIDE; + virtual void initializePage() Q_DECL_OVERRIDE; + virtual int nextId() const Q_DECL_OVERRIDE; + bool validatePage() Q_DECL_OVERRIDE; QString localFolder() const; void setRemoteFolder( const QString& remoteFolder); void setMultipleFoldersExist( bool exist ); diff --git a/src/wizard/owncloudhttpcredspage.h b/src/wizard/owncloudhttpcredspage.h index 86e4cf2c3..70356836c 100644 --- a/src/wizard/owncloudhttpcredspage.h +++ b/src/wizard/owncloudhttpcredspage.h @@ -30,12 +30,12 @@ class OwncloudHttpCredsPage : public AbstractCredentialsWizardPage public: OwncloudHttpCredsPage(); - AbstractCredentials* getCredentials() const; + AbstractCredentials* getCredentials() const Q_DECL_OVERRIDE; - void initializePage(); - void cleanupPage(); - bool validatePage(); - int nextId() const; + void initializePage() Q_DECL_OVERRIDE; + void cleanupPage() Q_DECL_OVERRIDE; + bool validatePage() Q_DECL_OVERRIDE; + int nextId() const Q_DECL_OVERRIDE; void setConnected(bool connected); void setErrorString( const QString& err ); void setConfigExists(bool config); diff --git a/src/wizard/owncloudsetuppage.cpp b/src/wizard/owncloudsetuppage.cpp index abe63bd6d..da1e54a83 100644 --- a/src/wizard/owncloudsetuppage.cpp +++ b/src/wizard/owncloudsetuppage.cpp @@ -255,8 +255,6 @@ void OwncloudSetupPage::stopSpinner() void OwncloudSetupPage::setConfigExists( bool config ) { - _configExists = config; - if (config == true) { setSubTitle(WizardCommon::subTitleTemplate().arg(tr("Update %1 server") .arg(Theme::instance()->appNameGUI()))); diff --git a/src/wizard/owncloudsetuppage.h b/src/wizard/owncloudsetuppage.h index 546e6a0ba..0d30e6a93 100644 --- a/src/wizard/owncloudsetuppage.h +++ b/src/wizard/owncloudsetuppage.h @@ -33,12 +33,12 @@ class OwncloudSetupPage: public QWizardPage public: OwncloudSetupPage(); - virtual bool isComplete() const; - virtual void initializePage(); - virtual int nextId() const; + virtual bool isComplete() const Q_DECL_OVERRIDE; + virtual void initializePage() Q_DECL_OVERRIDE; + virtual int nextId() const Q_DECL_OVERRIDE; void setServerUrl( const QString& ); void setAllowPasswordStorage( bool ); - bool validatePage(); + bool validatePage() Q_DECL_OVERRIDE; QString url() const; QString localFolder() const; void setRemoteFolder( const QString& remoteFolder); @@ -68,12 +68,9 @@ private: QString _ocUser; bool _authTypeKnown; bool _checking; - bool _configExists; - bool _multipleFoldersExist; WizardCommon::AuthType _authType; QProgressIndicator* _progressIndi; - QButtonGroup* _selectiveSyncButtons; QString _remoteFolder; }; diff --git a/src/wizard/owncloudshibbolethcredspage.cpp b/src/wizard/owncloudshibbolethcredspage.cpp index 40053d69b..653570778 100644 --- a/src/wizard/owncloudshibbolethcredspage.cpp +++ b/src/wizard/owncloudshibbolethcredspage.cpp @@ -48,7 +48,7 @@ void OwncloudShibbolethCredsPage::setupBrowser() _browser = new ShibbolethWebView(account); connect(_browser, SIGNAL(shibbolethCookieReceived(const QNetworkCookie&, Account*)), - this, SLOT(slotShibbolethCookieReceived()), Qt::QueuedConnection); + this, SLOT(slotShibbolethCookieReceived(const QNetworkCookie&, Account*)), Qt::QueuedConnection); connect(_browser, SIGNAL(rejected()), this, SLOT(slotBrowserRejected())); @@ -92,11 +92,15 @@ void OwncloudShibbolethCredsPage::setConnected() AbstractCredentials* OwncloudShibbolethCredsPage::getCredentials() const { - return new ShibbolethCredentials; + const OwncloudWizard *ocWizard = static_cast(wizard()); + Account *account = ocWizard->account(); + + return new ShibbolethCredentials(_cookie, account); } -void OwncloudShibbolethCredsPage::slotShibbolethCookieReceived() +void OwncloudShibbolethCredsPage::slotShibbolethCookieReceived(const QNetworkCookie &cookie, Account*) { + _cookie = cookie; emit connectToOCUrl(field("OCUrl").toString().simplified()); } diff --git a/src/wizard/owncloudshibbolethcredspage.h b/src/wizard/owncloudshibbolethcredspage.h index a9db292e5..14296431d 100644 --- a/src/wizard/owncloudshibbolethcredspage.h +++ b/src/wizard/owncloudshibbolethcredspage.h @@ -33,20 +33,20 @@ class OwncloudShibbolethCredsPage : public AbstractCredentialsWizardPage public: OwncloudShibbolethCredsPage(); - AbstractCredentials* getCredentials() const; + AbstractCredentials* getCredentials() const Q_DECL_OVERRIDE; - void initializePage(); - int nextId() const; + void initializePage() Q_DECL_OVERRIDE; + int nextId() const Q_DECL_OVERRIDE; void setConnected(); Q_SIGNALS: void connectToOCUrl(const QString&); public Q_SLOTS: - void setVisible(bool visible); + void setVisible(bool visible) Q_DECL_OVERRIDE; private Q_SLOTS: - void slotShibbolethCookieReceived(); + void slotShibbolethCookieReceived(const QNetworkCookie&, Account*); void slotBrowserRejected(); private: @@ -54,6 +54,7 @@ private: QPointer _browser; bool _afterInitialSetup; + QNetworkCookie _cookie; }; } // ns Mirall diff --git a/src/wizard/owncloudwizard.cpp b/src/wizard/owncloudwizard.cpp index 7635e2f08..94e3559ca 100644 --- a/src/wizard/owncloudwizard.cpp +++ b/src/wizard/owncloudwizard.cpp @@ -36,6 +36,7 @@ namespace Mirall OwncloudWizard::OwncloudWizard(QWidget *parent) : QWizard(parent), + _account(0), _setupPage(new OwncloudSetupPage), _httpCredsPage(new OwncloudHttpCredsPage), _shibbolethCredsPage(new OwncloudShibbolethCredsPage), diff --git a/src/wizard/owncloudwizardresultpage.h b/src/wizard/owncloudwizardresultpage.h index bd7061325..0390087be 100644 --- a/src/wizard/owncloudwizardresultpage.h +++ b/src/wizard/owncloudwizardresultpage.h @@ -29,8 +29,8 @@ public: OwncloudWizardResultPage(); ~OwncloudWizardResultPage(); - bool isComplete() const; - void initializePage(); + bool isComplete() const Q_DECL_OVERRIDE; + void initializePage() Q_DECL_OVERRIDE; void setRemoteFolder( const QString& remoteFolder); public slots: diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 3521be168..37ac1e83b 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -4,13 +4,27 @@ include_directories(${CMAKE_SOURCE_DIR}/csync/src/std) include(owncloud_add_test.cmake) -owncloud_add_test(OwncloudPropagator) -owncloud_add_test(Utility) -owncloud_add_test(Updater) -owncloud_add_test(FolderWatcher) -owncloud_add_test(CSyncSqlite) +owncloud_add_test(OwncloudPropagator "") +owncloud_add_test(Utility "") +owncloud_add_test(Updater "") +SET(FolderWatcher_SRC ../src/mirall/folderwatcher.cpp) + +IF( NOT WIN32 AND NOT APPLE ) +list(APPEND FolderWatcher_SRC ../src/mirall/folderwatcher_linux.cpp) +ENDIF() +IF( WIN32 ) +list(APPEND FolderWatcher_SRC ../src/mirall/folderwatcher_win.cpp) +ENDIF() +IF( APPLE ) +list(APPEND FolderWatcher_SRC ../src/mirall/folderwatcher_mac.cpp) +ENDIF() + +owncloud_add_test(FolderWatcher "${FolderWatcher_SRC}") if( UNIX AND NOT APPLE ) - owncloud_add_test(InotifyWatcher) + owncloud_add_test(InotifyWatcher "${FolderWatcher_SRC}") endif(UNIX AND NOT APPLE) +owncloud_add_test(CSyncSqlite "") + + diff --git a/test/owncloud_add_test.cmake b/test/owncloud_add_test.cmake index a7bf265a0..698e9dc8b 100644 --- a/test/owncloud_add_test.cmake +++ b/test/owncloud_add_test.cmake @@ -1,14 +1,15 @@ -macro(owncloud_add_test test_class) +macro(owncloud_add_test test_class additional_cpp) include_directories(${QT_INCLUDES} "${PROJECT_SOURCE_DIR}/src" ${CMAKE_CURRENT_BINARY_DIR}) set(OWNCLOUD_TEST_CLASS ${test_class}) + set(CMAKE_AUTOMOC TRUE) string(TOLOWER "${OWNCLOUD_TEST_CLASS}" OWNCLOUD_TEST_CLASS_LOWERCASE) configure_file(main.cpp.in test${OWNCLOUD_TEST_CLASS_LOWERCASE}.cpp) configure_file(test${OWNCLOUD_TEST_CLASS_LOWERCASE}.h test${OWNCLOUD_TEST_CLASS_LOWERCASE}.h) - qt_wrap_cpp(${OWNCLOUD_TEST_CLASS}_MOCS test${OWNCLOUD_TEST_CLASS_LOWERCASE}.h) + qt_wrap_cpp(test${OWNCLOUD_TEST_CLASS_LOWERCASE}.h) - add_executable(${OWNCLOUD_TEST_CLASS}Test test${OWNCLOUD_TEST_CLASS_LOWERCASE}.cpp ${${OWNCLOUD_TEST_CLASS}_MOCS}) - qt5_use_modules(${OWNCLOUD_TEST_CLASS}Test Test Sql Xml) + add_executable(${OWNCLOUD_TEST_CLASS}Test test${OWNCLOUD_TEST_CLASS_LOWERCASE}.cpp ${additional_cpp}) + qt5_use_modules(${OWNCLOUD_TEST_CLASS}Test Test Sql Xml Network) target_link_libraries(${OWNCLOUD_TEST_CLASS}Test updater diff --git a/translations/mirall_ca.ts b/translations/mirall_ca.ts index b43192d53..004441c05 100644 --- a/translations/mirall_ca.ts +++ b/translations/mirall_ca.ts @@ -144,28 +144,28 @@ <p>Voleu reiniciar la carpeta <i>%1</i> i reconstruir la base de dades del client?</p><p><b>Nota:</b> Aquesta funció existeix només per tasques de manteniment. Cap fitxer no s'eliminarà, però podria provocar-se un transit de dades significant i podria trigar diversos minuts o hores en completar-se, depenent de la mida de la carpeta. Utilitzeu aquesta opció només si us ho recomana l'administrador.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) de %2 l'espai del servidor en ús. - + No connection to %1 at <a href="%2">%3</a>. No hi ha connexió amb %1 a <a href="%2">%3</a>. - + No %1 connection configured. La connexió %1 no està configurada. - + Sync Running S'està sincronitzant @@ -175,35 +175,35 @@ No hi ha cap compte configurat - + The syncing operation is running.<br/>Do you want to terminate it? S'està sincronitzant.<br/>Voleu parar-la? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 de %4) %5 pendents a un ràtio de %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 de %2, fitxer %3 de %4 Temps restant total %5 - + Connected to <a href="%1">%2</a>. Connectat a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Connectat a <a href="%1">%2</a> com a <i>%3</i>. - + Currently there is no storage usage information available. Actualment no hi ha informació disponible de l'ús d'emmagatzemament. @@ -234,27 +234,27 @@ Temps restant total %5 Mirall::ConnectionValidator - + No ownCloud account configured No hi ha cap compte ownCloud configurat - + The configured server for this client is too old El servidor configurat per aquest client és massa antic - + Please update to the latest server and restart the client. Actualitzeu el servidor a l'última versió i reestabliu el client. - + Unable to connect to %1 No es pot connectar amb %1 - + The provided credentials are not correct Les credencials proporcionades no són correctes @@ -262,100 +262,93 @@ Temps restant total %5 Mirall::Folder - + Unable to create csync-context No s'ha pogut crear el context-csync - + Local folder %1 does not exist. El fitxer local %1 no existeix. - + %1 should be a directory but is not. %1 hauria de ser una carpeta, però no ho és. - + %1 is not readable. No es pot llegir %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 altres fitxers s'han esborrat - + %1 has been removed. %1 names a file. S'ha esborrat '%1' - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 altres fitxers s'han descarregat. - + %1 has been downloaded. %1 names a file. S'ha descarregat %1 - + %1 and %2 other files have been updated. %1 i %2 altres fitxer(s) s'han actualitzat. - + %1 has been updated. %1 names a file. S'ha actualitzat %1 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han reanomenat. - + %1 has been renamed to %2. %1 and %2 name files. %1 s'ha reanomenat a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 s'ha reanomenat a %2 i %3 altres fitxers s'han eliminat. - + %1 has been moved to %2. %1 s'ha mogut a %2. - + Sync Activity Activitat de sincronització - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Aquesta sincronització eliminarà tots els fitxers a la carpeta local de sincronització '%1'. -Si vós o l'administrador heu reinicialitzat el compte en el servidor, escolliu "Mantenir fitxers". Si voleueliminar les dades, escolliu "Esborra tots els fitxers". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Això podria ser perquè la carpeta ha estat reconfigurada silenciosament, o que Esteu segur que voleu executar aquesta operació? - + Remove All Files? Esborra tots els fitxers? - + Remove all files Esborra tots els fitxers - + Keep files Mantén els fitxers @@ -382,67 +375,67 @@ Esteu segur que voleu executar aquesta operació? Mirall::FolderMan - + Could not reset folder state No es pot restablir l'estat de la carpeta - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. S'ha trobat un diari de sincronització antic '%1', però no s'ha pogut eliminar. Assegureu-vos que no hi ha cap aplicació que actualment en faci ús. - + Undefined State. Estat indefinit. - + Waits to start syncing. Espera per començar la sincronització. - + Preparing for sync. Perparant per la sincronització. - + Sync is running. S'està sincronitzant. - + Server is currently not available. El servidor no està disponible actualment. - + Last Sync was successful. La darrera sincronització va ser correcta. - + Last Sync was successful, but with warnings on individual files. La última sincronització ha estat un èxit, però amb avisos en fitxers individuals. - + Setup Error. Error de configuració. - + User Abort. Cancel·la usuari. - + Sync is paused. La sincronització està en pausa. - + %1 (Sync is paused) %1 (Sync està pausat) @@ -469,8 +462,8 @@ Esteu segur que voleu executar aquesta operació? Mirall::FolderWizard - - + + Add Folder Afegeix una carpeta @@ -546,42 +539,42 @@ Esteu segur que voleu executar aquesta operació? Mirall::FolderWizardRemotePath - + Add Remote Folder Afegeix carpeta remota - + Enter the name of the new folder: Escriviu el nom de la carpeta nova: - + Folder was successfully created on %1. La carpeta s'ha creat correctament a %1. - + Failed to create the folder on %1. Please check manually. No s'ha pogut crear el directori en %1. Si us plau, comproveu-lo manualment. - + Choose this to sync the entire account Escolliu-ho per sincronitzar el compte sencer - + This folder is already being synced. Ja s'està sincronitzant aquest directori. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Ja esteu sincronitzant <i>%1</i>, que és una carpeta dins de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Ja esteu sincronitzant tots els vostres fitxers. Sincronitzar una altra carpeta <b>no</b> està permes. Si voleu sincronitzar múltiples carpetes, elimineu la configuració de sincronització de la carpeta arrel. @@ -598,17 +591,22 @@ Esteu segur que voleu executar aquesta operació? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway No s'ha rebut cap E-Tag del servidor, comproveu el Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. Hem rebut un E-Tag diferent en la represa. Es comprovarà la pròxima vegada. - + + Server returned wrong content-range + + + + Connection Timeout Temps de connexió excedit @@ -622,7 +620,7 @@ Esteu segur que voleu executar aquesta operació? - General Setttings + General Settings Arranjament general @@ -660,12 +658,12 @@ Esteu segur que voleu executar aquesta operació? Mirall::HttpCredentials - + Enter Password Escriviu contrasenya - + Please enter %1 password for user '%2': Escriviu %1 contrasenya per s'usuari '%2': @@ -807,8 +805,8 @@ Els elements marcats també s'eliminaran si prevenen l'eliminació d&a - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Hi ha una versió nova del client %1.</p><p><b>%2</b> disponible per baixar. La versió instal·lada és %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Hi ha una nova versió del client %1 disponible.</p><p><b>%2</b> està disponible per a la baixada. La versió instal·lada és la %3.</p> @@ -963,8 +961,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - La nova versió %1 està disponible. Si us plau, utilitzeu l'eina d'actualització dels sistemes per instal·lar. + New version %1 available. Please use the system's update tool to install it. + Nova versió %1 disponible. Utilitzeu l'eina d'actualització del sistema per instal·lar-la. @@ -1078,7 +1076,7 @@ No és aconsellada usar-la. La connexió ha fallat - + Update %1 server Actualitza el servidor %1 @@ -1086,126 +1084,126 @@ No és aconsellada usar-la. Mirall::OwncloudSetupWizard - + Folder rename failed Ha fallat en canviar el nom de la carpeta - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>la carpeta de sincronització %1 s'ha creat correctament!</b></font> - + Trying to connect to %1 at %2... Intentant connectar amb %1 a %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">S'ha connectat correctament amb %1: %2 versió %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Error: credencials incorrectes. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> La carpeta local %1 ja existeix, s'està configurant per sincronitzar.<br/><br/> - + Creating local sync folder %1... Creant carpeta local de sincronització %1... - + ok correcte - + failed. ha fallat. - + Could not create local folder %1 No s'ha pogut crear la carpeta local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Ha fallat la connexió amb %1 a %2:<br/>%3 - + No remote folder specified! No heu especificat cap carpeta remota! - + Error: %1 Error: %1 - + creating folder on ownCloud: %1 creant la carpeta a ownCloud: %1 - + Remote folder %1 created successfully. La carpeta remota %1 s'ha creat correctament. - + The remote folder %1 already exists. Connecting it for syncing. La carpeta remota %1 ja existeix. S'hi està connectant per sincronitzar-les. - - + + The folder creation resulted in HTTP error code %1 La creació de la carpeta ha resultat en el codi d'error HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Ha fallat la creació de la carpeta perquè les credencials proporcionades són incorrectes!<br/>Aneu enrera i comproveu les credencials.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">La creació de la carpeta remota ha fallat, probablement perquè les credencials facilitades són incorrectes.</font><br/>Comproveu les vostres credencials.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. La creació de la carpeta remota %1 ha fallat amb l'error <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. S'ha establert una connexió de sincronització des de %1 a la carpeta remota %2. - + Successfully connected to %1! Connectat amb èxit a %1! - + Connection to %1 could not be established. Please check again. No s'ha pogut establir la connexió amb %1. Comproveu-ho de nou. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. No es pot esborrar i restaurar la carpeta perquè una carpeta o un fitxer de dins està obert en un altre programa. Tanqueu la carpeta o el fitxer i intenteu-ho de nou o cancel·leu la configuració. @@ -1213,7 +1211,7 @@ No és aconsellada usar-la. Mirall::OwncloudWizard - + %1 Connection Wizard Assistent de connexió %1 @@ -1257,12 +1255,12 @@ No és aconsellada usar-la. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. L'usuari ha aturat la sincronització. - + No E-Tag received from server, check Proxy/Gateway No s'ha rebut cap E-Tag del servidor, comproveu el Proxy/Gateway @@ -1272,7 +1270,12 @@ No és aconsellada usar-la. hem rebut un E-Tag diferent en la represa. Es comprovarà la pròxima vegada. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! @@ -1280,7 +1283,7 @@ No és aconsellada usar-la. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! El fitxer %1 no es pot baixar perquè hi ha un xoc amb el nom d'un fitxer local! @@ -1288,7 +1291,12 @@ No és aconsellada usar-la. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; La restauració ha fallat: + + + A file or directory was removed from a read only share, but restoring failed: %1 S'ha eliminat un fitxer o carpeta de la compartició nómés de lectura, però la restauració ha fallat: %1 @@ -1296,12 +1304,12 @@ No és aconsellada usar-la. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Atenció, possible xoc entre majúscules i minúscules amb %1 - + could not create directory %1 No s'ha pogut crear el directori %1 @@ -1322,7 +1330,7 @@ No és aconsellada usar-la. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash El fitxer %1 no es pot reanomenar a %2 perquè hi ha un xoc amb el nom d'un fitxer local @@ -1330,7 +1338,7 @@ No és aconsellada usar-la. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. El fitxer s'ha eliminat d'una compartició només de lectura. S'ha restaurat. @@ -1338,17 +1346,17 @@ No és aconsellada usar-la. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. No s'ha de canviar el nom d'aquesta carpeta. Es reanomena de nou amb el seu nom original. - + This folder must not be renamed. Please name it back to Shared. Aquesta carpeta no es pot reanomenar. Reanomeneu-la de nou Shared. - + The file was renamed but is part of a read only share. The original file was restored. El fitxer s'ha reanomenat però és part d'una compartició només de lectura. El fixter original s'ha restaurat. @@ -1375,22 +1383,22 @@ No és aconsellada usar-la. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El fitxer s'ha editat localment però és part d'una compartició només de lectura. S'ha restaurat i la vostra edició és en el fitxer en conflicte. - + The local file was removed during sync. El fitxer local s'ha eliminat durant la sincronització. - + Local file changed during sync. El fitxer local ha canviat durant la sincronització. - + The server did not acknowledge the last chunk. (No e-tag were present) El servidor no ha reconegut l'últim fragment. (No hi havia e-Tag) @@ -1418,62 +1426,62 @@ No és aconsellada usar-la. 4 - + Time Hora - + File Fitxer - + Folder Carpeta - + Action Acció - + Size Mida - + Retry Sync Reintenta la sincronització - + Copy Copia - + Copy the activity list to the clipboard. Copia la llista d'activitats al porta-retalls. - + Copied to clipboard S'ha copiat al porta-retalls - + The sync status has been copied to the clipboard. L'estat de sincronització s'ha copiat al porta-retalls. - + Currently no files are ignored because of previous errors. Actualment no s'ha ignorat cap fitxer a causa d'errors anteriors. - + %1 files are ignored because of previous errors. Try to sync these again. %1 fixers són ignorats per errors previs. @@ -1516,27 +1524,27 @@ Proveu de sincronitzar-los de nou. Mirall::SettingsDialogMac - + %1 %1 - + Account Compte - + Activity Activitat - + General General - + Network Xarxa @@ -1544,12 +1552,12 @@ Proveu de sincronitzar-los de nou. Mirall::ShibbolethCredentials - + Login Error Error d'accés - + You must sign in as user %1 Cal identificar-se com a usuari %1 @@ -1557,22 +1565,22 @@ Proveu de sincronitzar-los de nou. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticat - + Reauthentication required Es requereix nova acreditació - + Your session has expired. You need to re-login to continue to use the client. La vostra sessió ha vençut. Heu d'acreditar-vos de nou per continuar usant el client. - + %1 - %2 %1 - %2 @@ -1776,158 +1784,158 @@ Proveu de sincronitzar-los de nou. Mirall::SyncEngine - + Success. Èxit. - + CSync failed to create a lock file. CSync ha fallat en crear un fitxer de bloqueig. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync ha fallat en carregar o crear el fitxer de revista. Assegureu-vos que yeniu permisos de lectura i escriptura en la carpeta local de sincronització. - + CSync failed to write the journal file. CSync ha fallat en escriure el fitxer de revista - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>No s'ha pogut carregar el connector %1 per csync.<br/>Comproveu la instal·lació!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. L'hora del sistema d'aquest client és diferent de l'hora del sistema del servidor. Useu un servei de sincronització de temps (NTP) en el servidor i al client perquè l'hora sigui la mateixa. - + CSync could not detect the filesystem type. CSync no ha pogut detectar el tipus de fitxers del sistema. - + CSync got an error while processing internal trees. CSync ha patit un error mentre processava els àrbres interns. - + CSync failed to reserve memory. CSync ha fallat en reservar memòria. - + CSync fatal parameter error. Error fatal de paràmetre en CSync. - + CSync processing step update failed. El pas d'actualització del processat de CSync ha fallat. - + CSync processing step reconcile failed. El pas de reconciliació del processat de CSync ha fallat. - + CSync processing step propagate failed. El pas de propagació del processat de CSync ha fallat. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>La carpeta destí no existeix.</p><p>Comproveu la configuració de sincronització</p> - + A remote file can not be written. Please check the remote access. No es pot escriure el fitxer remot. Reviseu l'acces remot. - + The local filesystem can not be written. Please check permissions. No es pot escriure al sistema de fitxers local. Reviseu els permisos. - + CSync failed to connect through a proxy. CSync ha fallat en connectar a través d'un proxy. - + CSync could not authenticate at the proxy. CSync no s'ha pogut acreditar amb el proxy. - + CSync failed to lookup proxy or server. CSync ha fallat en cercar el proxy o el servidor. - + CSync failed to authenticate at the %1 server. L'autenticació de CSync ha fallat al servidor %1. - + CSync failed to connect to the network. CSync ha fallat en connectar-se a la xarxa. - - A network connection timeout happend. - S'ha superat el temps d'espera de la connexió a la xarxa. + + A network connection timeout happened. + Temps excedit en la connexió. - + A HTTP transmission error happened. S'ha produït un error en la transmissió HTTP. - + CSync failed due to not handled permission deniend. CSync ha fallat en no implementar el permís denegat. - + CSync failed to access CSync ha fallat en accedir - + CSync tried to create a directory that already exists. CSync ha intentat crear una carpeta que ja existeix. - - + + CSync: No space on %1 server available. CSync: No hi ha espai disponible al servidor %1. - + CSync unspecified error. Error inespecífic de CSync. - + Aborted by the user Aturat per l'usuari - + An internal error number %1 happened. S'ha produït l'error intern número %1. - + The item is not synced because of previous errors: %1 L'element no s'ha sincronitzat degut a errors previs: %1 @@ -1947,15 +1955,61 @@ Proveu de sincronitzar-los de nou. El fitxer conté caràcters no vàlids que no es poden sincronitzar entre plataformes. - + Unable to initialize a sync journal. No es pot inicialitzar un periòdic de sincronització - + Cannot open the sync journal No es pot obrir el diari de sincronització + + + Not allowed because you don't have permission to add sub-directories in that directory + No es permet perquè no teniu permisos per afegir subcarpetes en aquesta carpeta + + + + Not allowed because you don't have permission to add parent directory + No es permet perquè no teniu permisos per afegir una carpeta inferior + + + + Not allowed because you don't have permission to add files in that directory + No es permet perquè no teniu permisos per afegir fitxers en aquesta carpeta + + + + Not allowed to upload this file because it is read-only on the server, restoring + No es permet pujar aquest fitxer perquè només és de lectura en el servidor, es restaura + + + + + Not allowed to remove, restoring + No es permet l'eliminació, es restaura + + + + Move not allowed, item restored + No es permet moure'l, l'element es restaura + + + + Move not allowed because %1 is read-only + No es permet moure perquè %1 només és de lectura + + + + the destination + el destí + + + + the source + l'origen + Mirall::Systray @@ -1968,7 +2022,7 @@ Proveu de sincronitzar-los de nou. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versió %1 Per més informació visiteu <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distribuït per %4 i amb Llicència Pública General GNU (GPL) Versió 2.0.<br>%5 i el %5 logo són marques registrades de %4 als<br>Estats Units, altres països, o ambdós.</p> @@ -1976,47 +2030,47 @@ Proveu de sincronitzar-los de nou. Mirall::ownCloudGui - + Please sign in Acrediteu-vos - + Disconnected from server Desconnectat del servidor - + Folder %1: %2 Carpeta %1: %2 - + No sync folders configured. No hi ha fitxers de sincronització configurats - + None. Cap. - + Recent Changes Canvis recents - + Open %1 folder Obre la carpeta %1 - + Managed Folders: Fitxers gestionats: - + Open folder '%1' Obre carpeta '%1' @@ -2300,27 +2354,27 @@ Proveu de sincronitzar-los de nou. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2395,7 @@ Proveu de sincronitzar-los de nou. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Si encara no teniu un servidor ownCloud, mireu <a href="https://owncloud.com">owncloud.com</a> per més informació. @@ -2350,12 +2404,12 @@ Proveu de sincronitzar-los de nou. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Construit de la revisió Git <a href="%1">%2</a> a %3, %4 usant Qt %5.</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versió %2. Per més informació visiteu <a href="%3">%4</a></p><p><small>Per Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Basat en Mirall per Duncan Mac-Vicar P.</small></p>%7 @@ -2444,57 +2498,57 @@ Proveu de sincronitzar-los de nou. theme - + Status undefined Estat indefinit - + Waiting to start sync Pendent d'iniciar la sincronització - + Sync is running La sincronització s'està executant - + Sync Success Sincronització amb èxit - + Sync Success, some files were ignored. Sincronització realitzada amb èxit, alguns fitxers s'han ignorat. - + Sync Error Error de sincronització - + Setup Error Error de configuració - + The server is currently unavailable El servidor actualment no esta disponible - + Preparing to sync Preparant per sincronitzar - + Aborting... Cancel·lant... - + Sync is paused La incronització està pausada. diff --git a/translations/mirall_cs.ts b/translations/mirall_cs.ts index 5f5c1b29d..0bd6e5e35 100644 --- a/translations/mirall_cs.ts +++ b/translations/mirall_cs.ts @@ -144,28 +144,28 @@ <p>Skutečně chcete resetovat složku <i>%1</i> a znovu sestavit klientskou databázi?</p><p><b>Poznámka:</b> Tato funkce je určena pouze pro účely údržby. Žádné soubory nebudou smazány, ale může to způsobit velké datové přenosy a dokončení může trvat mnoho minut či hodin v závislosti na množství dat ve složce. Použijte tuto volbu pouze na pokyn správce.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) z %2 místa na disku použito. - + No connection to %1 at <a href="%2">%3</a>. Žádné spojení s %1 na <a href="%2">%3</a>. - + No %1 connection configured. Žádné spojení s %1 nenastaveno. - + Sync Running Synchronizace probíhá @@ -175,35 +175,35 @@ Žádný účet nenastaven. - + The syncing operation is running.<br/>Do you want to terminate it? Operace synchronizace právě probíhá.<br/>Přejete si ji ukončit? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 z %4) zbývající čas %5 při rychlosti %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 z %2, soubor %3 ze %4 Celkový zbývající čas %5 - + Connected to <a href="%1">%2</a>. Připojeno k <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Připojeno k <a href="%1">%2</a> jako <i>%3</i>. - + Currently there is no storage usage information available. Momentálně nejsou k dispozici žádné informace o využití úložiště @@ -234,27 +234,27 @@ Celkový zbývající čas %5 Mirall::ConnectionValidator - + No ownCloud account configured Žádný účet ownCloud nenastaven - + The configured server for this client is too old Server nastavený pro tohoto klienta je příliš starý - + Please update to the latest server and restart the client. Prosím, aktualizujte na poslední verzi serveru a restartujte klienta. - + Unable to connect to %1 Nelze se připojit k %1 - + The provided credentials are not correct Poskytnuté přihlašovací údaje nejsou správné @@ -262,100 +262,93 @@ Celkový zbývající čas %5 Mirall::Folder - + Unable to create csync-context Nepodařilo se vytvořit csync-context - + Local folder %1 does not exist. Místní složka %1 neexistuje. - + %1 should be a directory but is not. %1 by měl být adresář, ale není. - + %1 is not readable. %1 není čitelný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 dalších souborů bylo odebráno. - + %1 has been removed. %1 names a file. %1 byl odebrán. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 dalších souborů bylo staženo. - + %1 has been downloaded. %1 names a file. %1 byl stažen. - + %1 and %2 other files have been updated. %1 a %2 dalších souborů bylo aktualizováno. - + %1 has been updated. %1 names a file. %1 byl aktualizován. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 byl přejmenován na %2 a %3 dalších souborů bylo přejmenováno. - + %1 has been renamed to %2. %1 and %2 name files. %1 byl přejmenován na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 byl přesunut do %2 a %3 dalších souborů bylo přesunuto. - + %1 has been moved to %2. %1 byl přemístěn do %2. - + Sync Activity Průběh synchronizace - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Tato synchronizace by smazala všechny soubory v místní složce '%1' -Pokud jste vy nebo váš správce zresetovali účet na serveru, zvolte "Ponechat soubory". Pokud chcete místní data odstranit, zvolte "Odstranit všechny soubory". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Toto může být způsobeno změnou v nastavení synchronizace složky nebo tím Opravdu chcete provést tuto akci? - + Remove All Files? Odstranit všechny soubory? - + Remove all files Odstranit všechny soubory - + Keep files Ponechat soubory @@ -382,67 +375,67 @@ Opravdu chcete provést tuto akci? Mirall::FolderMan - + Could not reset folder state Nelze obnovit stav složky - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Byl nalezen starý záznam synchronizace '%1', ale nebylo možné jej odebrat. Ujistěte se, že není aktuálně používán jinou aplikací. - + Undefined State. Nedefinovaný stav. - + Waits to start syncing. Vyčkává na spuštění synchronizace. - + Preparing for sync. Příprava na synchronizaci. - + Sync is running. Synchronizace probíhá. - + Server is currently not available. Server je nyní nedostupný. - + Last Sync was successful. Poslední synchronizace byla úspěšná. - + Last Sync was successful, but with warnings on individual files. Poslední synchronizace byla úspěšná, ale s varováním u některých souborů - + Setup Error. Chyba nastavení. - + User Abort. Zrušení uživatelem. - + Sync is paused. Synchronizace pozastavena. - + %1 (Sync is paused) %1 (Synchronizace je pozastavena) @@ -469,8 +462,8 @@ Opravdu chcete provést tuto akci? Mirall::FolderWizard - - + + Add Folder Přidat složku @@ -546,42 +539,42 @@ Opravdu chcete provést tuto akci? Mirall::FolderWizardRemotePath - + Add Remote Folder Přidat vzdálený adresář - + Enter the name of the new folder: Zadejte název nové složky: - + Folder was successfully created on %1. Složka byla úspěšně vytvořena na %1. - + Failed to create the folder on %1. Please check manually. Na %1 selhalo vytvoření složky. Zkontrolujte to, prosím, ručně. - + Choose this to sync the entire account Zvolte toto k provedení synchronizace celého účtu - + This folder is already being synced. Tato složka je již synchronizována. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Již synchronizujete složku <i>%1</i>, která je složce <i>%2</i> nadřazená. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Již synchronizujete všechny vaše soubory. Synchronizování další složky <b>není</b> podporováno. Pokud chcete synchronizovat více složek, odstraňte, prosím, synchronizaci aktuální kořenové složky. @@ -598,19 +591,24 @@ Opravdu chcete provést tuto akci? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ze serveru nebyl obdržen E-Tag, zkontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Obdrželi jsme jiný E-Tag pro pokračování. Zkusím znovu příště. - + + Server returned wrong content-range + Server odpověděl chybným rozsahem obsahu + + + Connection Timeout - Spojení Vypršelo + Spojení vypršelo @@ -622,8 +620,8 @@ Opravdu chcete provést tuto akci? - General Setttings - Základní nastavení + General Settings + Hlavní nastavení @@ -660,12 +658,12 @@ Opravdu chcete provést tuto akci? Mirall::HttpCredentials - + Enter Password Zadejte heslo - + Please enter %1 password for user '%2': Zadejte prosím %1 heslo pro uživatele '%2': @@ -807,8 +805,8 @@ Zvolené položky budou smazány také v případě, že brání smazání adres - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Je k dispozici nová verze klienta %1.</p><p><b>%2</b> je k dispozici ke stažení. Aktuálně nainstalovaná verze je %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Je k dispozici nová verze klienta %1.</p><p><b>%2</b> je k dispozici ke stažení. Momentálně je nainstalovaná verze %3.</p> @@ -963,8 +961,8 @@ si může v průběhu vyžádat dodatečná práva. - New version %1 available. Please use the systems update tool to install it. - Nová verze %1 je dostupná. Pro instalaci použijte, prosím, aktualizační nástroj systému. + New version %1 available. Please use the system's update tool to install it. + Je dostupná nová verze %1. Pro instalaci použijte aktualizační nástroj systému. @@ -1078,7 +1076,7 @@ Nedoporučuje se jí používat. Spojení selhalo - + Update %1 server Upravit server %1 @@ -1086,126 +1084,126 @@ Nedoporučuje se jí používat. Mirall::OwncloudSetupWizard - + Folder rename failed Přejmenování složky selhalo - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Místní synchronizovaná složka %1 byla vytvořena úspěšně!</b></font> - + Trying to connect to %1 at %2... Pokouším se připojit k %1 na %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Úspěšně připojeno k %1: %2 verze %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Chyba: nesprávné přihlašovací údaje. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Místní synchronizovaná složka %1 již existuje, nastavuji ji pro synchronizaci.<br/><br/> - + Creating local sync folder %1... Vytvářím místní synchronizovanou složku %1... - + ok OK - + failed. selhalo. - + Could not create local folder %1 Nelze vytvořit místní složku %1 - - + + Failed to connect to %1 at %2:<br/>%3 Selhalo spojení s %1 v %2:<br/>%3 - + No remote folder specified! Žádná vzdálená složka nenastavena! - + Error: %1 Chyba: %1 - + creating folder on ownCloud: %1 vytvářím složku na ownCloudu: %1 - + Remote folder %1 created successfully. Vzdálená složka %1 byla úspěšně vytvořena. - + The remote folder %1 already exists. Connecting it for syncing. Vzdálená složka %1 již existuje. Spojuji ji pro synchronizaci. - - + + The folder creation resulted in HTTP error code %1 Vytvoření složky selhalo HTTP chybou %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Vytvoření vzdálené složky selhalo, pravděpodobně z důvodu neplatných přihlašovacích údajů.<br/>Vraťte se, prosím, zpět a zkontrolujte je.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Vytvoření vzdálené složky selhalo, pravděpodobně z důvodu neplatných přihlašovacích údajů.</font><br/>Vraťte se, prosím, zpět a zkontrolujte je.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Vytváření vzdálené složky %1 selhalo s chybou <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Bylo nastaveno synchronizované spojení z %1 do vzdáleného adresáře %2. - + Successfully connected to %1! Úspěšně spojeno s %1. - + Connection to %1 could not be established. Please check again. Spojení s %1 nelze navázat. Prosím zkuste to znovu. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Nelze odstranit a zazálohovat adresář, protože adresář nebo soubor v něm je otevřen v jiném programu. Prosím zavřete adresář nebo soubor a zkuste znovu nebo zrušte akci. @@ -1213,7 +1211,7 @@ Nedoporučuje se jí používat. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Průvodce spojením @@ -1251,18 +1249,18 @@ Nedoporučuje se jí používat. Connection Timeout - Spojení Vypršelo + Spojení vypršelo Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizace zrušena uživatelem. - + No E-Tag received from server, check Proxy/Gateway Ze serveru nebyl obdržen E-Tag, zkontrolujte proxy/bránu @@ -1272,7 +1270,12 @@ Nedoporučuje se jí používat. Obdrželi jsme jiný E-Tag pro pokračování. Zkusím znovu příště. - + + Server returned wrong content-range + Server odpověděl chybným rozsahem obsahu + + + File %1 can not be downloaded because of a local file name clash! Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému. @@ -1280,7 +1283,7 @@ Nedoporučuje se jí používat. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Soubor %1 nemohl být stažen z důvodu kolize názvu se souborem v místním systému. @@ -1288,7 +1291,12 @@ Nedoporučuje se jí používat. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Obnovení selhalo: + + + A file or directory was removed from a read only share, but restoring failed: %1 Soubor nebo adresář by odebrán ze sdílení pouze pro čtení, ale jeho obnovení selhalo: %1 @@ -1296,12 +1304,12 @@ Nedoporučuje se jí používat. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Pozor, možná kolize z důvodu velikosti písmen s %1 - + could not create directory %1 nepodařilo se vytvořit adresář %1 @@ -1322,7 +1330,7 @@ Nedoporučuje se jí používat. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Soubor %1 nemohl být přejmenován na %2 z důvodu kolize názvu se souborem v místním systému. @@ -1330,7 +1338,7 @@ Nedoporučuje se jí používat. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Soubor byl odebrán ze sdílení pouze pro čtení. Soubor byl obnoven. @@ -1338,17 +1346,17 @@ Nedoporučuje se jí používat. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Tato složka nemůže být přejmenována. Byl jí vrácen původní název. - + This folder must not be renamed. Please name it back to Shared. Tato složka nemůže být přejmenována. Přejmenujte jí prosím zpět na Shared. - + The file was renamed but is part of a read only share. The original file was restored. Soubor byl přejmenován, ale je součástí sdílení pouze pro čtení. Původní soubor byl obnoven. @@ -1375,22 +1383,22 @@ Nedoporučuje se jí používat. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Soubor zde byl editován, ale je součástí sdílení pouze pro čtení. Původní soubor byl obnoven a editovaná verze je uložena v konfliktním souboru. - + The local file was removed during sync. Místní soubor byl odstraněn během synchronizace. - + Local file changed during sync. Místní soubor byl změněn během synchronizace. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1418,62 +1426,62 @@ Nedoporučuje se jí používat. 4 - + Time Čas - + File Soubor - + Folder Složka - + Action Akce - + Size Velikost - + Retry Sync Znovu synchronizovat - + Copy Kopie - + Copy the activity list to the clipboard. Kopírovat záznam aktivity do schránky. - + Copied to clipboard Zkopírováno do schránky - + The sync status has been copied to the clipboard. Stav synchronizace byl zkopírován do schránky. - + Currently no files are ignored because of previous errors. Nyní nejsou v seznamu ignorovaných žádné soubory kvůli předchozím chybám. - + %1 files are ignored because of previous errors. Try to sync these again. %1 souborů je na seznamu ignorovaných kvůli předchozím chybovým stavům. @@ -1517,27 +1525,27 @@ Zkuste provést novou synchronizaci. Mirall::SettingsDialogMac - + %1 %1 - + Account Účet - + Activity Aktivita - + General Hlavní - + Network Síť @@ -1545,12 +1553,12 @@ Zkuste provést novou synchronizaci. Mirall::ShibbolethCredentials - + Login Error Chyba přihlášení - + You must sign in as user %1 Musíte se přihlásit jako uživatel %1 @@ -1558,22 +1566,22 @@ Zkuste provést novou synchronizaci. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - ověření - + Reauthentication required Je vyžadováno opětovné ověření. - + Your session has expired. You need to re-login to continue to use the client. Vaše sezení vypršelo. Chcete-li pokračovat v práci musíte se znovu přihlásit. - + %1 - %2 %1 - %2 @@ -1777,158 +1785,158 @@ Zkuste provést novou synchronizaci. Mirall::SyncEngine - + Success. Úspěch. - + CSync failed to create a lock file. CSync nemůže vytvořit soubor zámku. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync se nepodařilo načíst či vytvořit soubor žurnálu. Ujistěte se, že máte oprávnění pro čtení a zápis v místní synchronizované složce. - + CSync failed to write the journal file. CSync se nepodařilo zapsat do souboru žurnálu. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Plugin %1 pro csync nelze načíst.<br/>Zkontrolujte prosím instalaci!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Systémový čas na klientovi je rozdílný od systémového času serveru. Použijte, prosím, službu synchronizace času (NTP) na serveru i klientovi, aby byl čas na obou strojích stejný. - + CSync could not detect the filesystem type. CSync nemohl detekovat typ souborového systému. - + CSync got an error while processing internal trees. CSync obdrželo chybu při zpracování vnitřních struktur. - + CSync failed to reserve memory. CSync se nezdařilo rezervovat paměť. - + CSync fatal parameter error. CSync: kritická chyba parametrů. - + CSync processing step update failed. CSync se nezdařilo zpracovat krok aktualizace. - + CSync processing step reconcile failed. CSync se nezdařilo zpracovat krok sladění. - + CSync processing step propagate failed. CSync se nezdařilo zpracovat krok propagace. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Cílový adresář neexistuje.</p><p>Zkontrolujte, prosím, nastavení synchronizace.</p> - + A remote file can not be written. Please check the remote access. Vzdálený soubor nelze zapsat. Ověřte prosím vzdálený přístup. - + The local filesystem can not be written. Please check permissions. Do místního souborového systému nelze zapisovat. Ověřte, prosím, přístupová práva. - + CSync failed to connect through a proxy. CSync se nezdařilo připojit skrze proxy. - + CSync could not authenticate at the proxy. CSync se nemohlo přihlásit k proxy. - + CSync failed to lookup proxy or server. CSync se nezdařilo najít proxy server nebo cílový server. - + CSync failed to authenticate at the %1 server. CSync se nezdařilo přihlásit k serveru %1. - + CSync failed to connect to the network. CSync se nezdařilo připojit k síti. - - A network connection timeout happend. + + A network connection timeout happened. Došlo k vypršení časového limitu síťového spojení. - + A HTTP transmission error happened. Nastala chyba HTTP přenosu. - + CSync failed due to not handled permission deniend. CSync selhalo z důvodu nezpracovaného odmítnutí práv. - + CSync failed to access CSync se nezdařil přístup - + CSync tried to create a directory that already exists. CSync se pokusilo vytvořit adresář, který již existuje. - - + + CSync: No space on %1 server available. CSync: Nedostatek volného místa na serveru %1. - + CSync unspecified error. Nespecifikovaná chyba CSync. - + Aborted by the user Zrušeno uživatelem - + An internal error number %1 happened. Nastala vnitřní chyba číslo %1. - + The item is not synced because of previous errors: %1 Položka nebyla synchronizována kvůli předchozí chybě: %1 @@ -1948,15 +1956,61 @@ Zkuste provést novou synchronizaci. Soubor obsahuje alespoň jeden neplatný znak, který narušuje synchronizaci v prostředí více platforem. - + Unable to initialize a sync journal. Nemohu inicializovat synchronizační žurnál. - + Cannot open the sync journal Nelze otevřít synchronizační žurnál + + + Not allowed because you don't have permission to add sub-directories in that directory + Není povoleno, protože nemáte oprávnění vytvářet podadresáře v tomto adresáři. + + + + Not allowed because you don't have permission to add parent directory + Není povoleno, protože nemáte oprávnění vytvořit rodičovský adresář. + + + + Not allowed because you don't have permission to add files in that directory + Není povoleno, protože nemáte oprávnění přidávat soubory do tohoto adresáře + + + + Not allowed to upload this file because it is read-only on the server, restoring + Není povoleno nahrát tento soubor, protože je na serveru uložen pouze pro čtení, obnovuji + + + + + Not allowed to remove, restoring + Odstranění není povoleno, obnovuji + + + + Move not allowed, item restored + Přesun není povolen, položka obnovena + + + + Move not allowed because %1 is read-only + Přesun není povolen, protože %1 je pouze pro čtení + + + + the destination + cílové umístění + + + + the source + zdroj + Mirall::Systray @@ -1969,7 +2023,7 @@ Zkuste provést novou synchronizaci. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Verze %1. Pro více informací navštivte <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distribuováno %4 a licencováno pod GNU General Public License (GPL) Version 2.0.<br>%5 a logo %5 jsou registrované obchodní známky %4 ve <br>Spojených státech, ostatních zemích nebo obojí.</p> @@ -1977,47 +2031,47 @@ Zkuste provést novou synchronizaci. Mirall::ownCloudGui - + Please sign in Přihlašte se prosím - + Disconnected from server Odpojen od serveru - + Folder %1: %2 Složka %1: %2 - + No sync folders configured. Nejsou nastaveny žádné synchronizované složky. - + None. Nic. - + Recent Changes Poslední změny - + Open %1 folder Otevřít složku %1 - + Managed Folders: Spravované složky: - + Open folder '%1' Otevřít složku '%1' @@ -2301,27 +2355,27 @@ Zkuste provést novou synchronizaci. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2342,7 +2396,7 @@ Zkuste provést novou synchronizaci. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Pokud zatím nemáte ownCloud server, získáte více informací na <a href="https://owncloud.com">owncloud.com</a> @@ -2351,12 +2405,12 @@ Zkuste provést novou synchronizaci. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Sestaveno z Git revize <a href="%1">%2</a> na %3, %4 pomocí Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Verze %2. Pro více informací navštivte <a href="%3">%4</a></p><p><small>Vytvořili Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Založeno na Mirall od Duncan Mac-Vicar P.</small></p>%7 @@ -2445,57 +2499,57 @@ Zkuste provést novou synchronizaci. theme - + Status undefined Nedefinovaný stav - + Waiting to start sync Čekám na zahájení synchronizace - + Sync is running Synchronizace běží - + Sync Success Synchronizace úspěšná - + Sync Success, some files were ignored. Synchronizace úspěšná, některé soubory byly ignorovány. - + Sync Error Chyba synchronizace - + Setup Error Chyba nastavení - + The server is currently unavailable Server je momentálně nedostupný - + Preparing to sync Připravuji na synchronizaci - + Aborting... Ruším... - + Sync is paused Synchronizace pozastavena diff --git a/translations/mirall_de.ts b/translations/mirall_de.ts index 24011040f..f681abc8c 100644 --- a/translations/mirall_de.ts +++ b/translations/mirall_de.ts @@ -145,28 +145,28 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entfernt, jedoch kann diese Aktion erheblichen Datenverkehr verursachen und je nach Umfang des Ordners mehrere Minuten oder Stunden in Anspruch nehmen. Verwenden Sie diese Funktion nur dann, wenn ihr Administrator dies ausdrücklich wünscht.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) von %2 Serverkapazität in Benutzung. - + No connection to %1 at <a href="%2">%3</a>. Keine Verbindung mit %1 zu <a href="%2">%3</a>. - + No %1 connection configured. Keine %1-Verbindung konfiguriert. - + Sync Running Synchronisation läuft @@ -176,35 +176,35 @@ Diese Funktion ist nur für Wartungszwecke gedacht. Es werden keine Dateien entf Kein Konto konfiguriert. - + The syncing operation is running.<br/>Do you want to terminate it? Die Synchronistation läuft gerade.<br/>Wollen Sie diese beenden? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 von %4) %5 übrig bei einer Rate von %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 von %2, Datei %3 von %4 Gesamtzeit übrig %5 - + Connected to <a href="%1">%2</a>. Verbunden mit <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Verbunden mit <a href="%1">%2</a> als <i>%3</i>. - + Currently there is no storage usage information available. Derzeit sind keine Speichernutzungsinformationen verfügbar. @@ -235,27 +235,27 @@ Gesamtzeit übrig %5 Mirall::ConnectionValidator - + No ownCloud account configured Kein ownCloud-Konto konfiguriert - + The configured server for this client is too old Der konfigurierte Server ist für diesen Client zu alt - + Please update to the latest server and restart the client. Aktualisieren Sie auf die letzte Server-Version und starten Sie den Client neu. - + Unable to connect to %1 Verbinden mit %1 nicht möglich - + The provided credentials are not correct Die zur Verfügung gestellten Anmeldeinformationen sind nicht korrekt @@ -263,100 +263,93 @@ Gesamtzeit übrig %5 Mirall::Folder - + Unable to create csync-context Kann keinen CSync-Kontext erstellen - + Local folder %1 does not exist. Lokales Verzeichnis %1 existiert nicht. - + %1 should be a directory but is not. %1 sollte ein Verzeichnis sein, ist es aber nicht. - + %1 is not readable. %1 ist nicht lesbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 und %2 andere Dateien wurden gelöscht. - + %1 has been removed. %1 names a file. %1 wurde gelöscht. - + %1 and %2 other files have been downloaded. %1 names a file. %1 und %2 andere Dateien wurden heruntergeladen. - + %1 has been downloaded. %1 names a file. %1 wurde heruntergeladen. - + %1 and %2 other files have been updated. %1 und %2 andere Dateien wurden aktualisiert. - + %1 has been updated. %1 names a file. %1 wurde aktualisiert. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 wurde in %2 umbenannt und %3 andere Dateien wurden umbenannt. - + %1 has been renamed to %2. %1 and %2 name files. %1 wurde in %2 umbenannt. - + %1 has been moved to %2 and %3 other files have been moved. %1 wurde in %2 verschoben und %3 andere Dateien wurden verschoben. - + %1 has been moved to %2. %1 wurde in %2 verschoben. - + Sync Activity Synchronisierungsaktivität - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Dieser Synchronisationsvorgang würde alle Dateien in dem lokalen Ordner '%1' entfernen. -Wenn Sie oder Ihr Administrator Ihr Konto auf dem Server zurückgesetzt haben, wählen Sie "Dateien behalten". Wenn Sie ihre Daten löschen wollen, wählen Sie "Alle Dateien entfernen". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -365,17 +358,17 @@ Vielleicht wurde der Ordner neu konfiguriert, oder alle Dateien wurden händisch Sind Sie sicher, dass sie diese Operation durchführen wollen? - + Remove All Files? Alle Dateien löschen? - + Remove all files Lösche alle Dateien - + Keep files Dateien behalten @@ -383,67 +376,67 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::FolderMan - + Could not reset folder state Konnte Ordner-Zustand nicht zurücksetzen - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Ein altes Synchronisations-Journal '%1' wurde gefunden, konnte jedoch nicht entfernt werden. Bitte stellen Sie sicher, dass keine Anwendung es verwendet. - + Undefined State. Undefinierter Zustand. - + Waits to start syncing. Wartet auf Beginn der Synchronistation - + Preparing for sync. Synchronisation wird vorbereitet. - + Sync is running. Synchronisation läuft. - + Server is currently not available. Der Server ist momentan nicht erreichbar. - + Last Sync was successful. Die letzte Synchronisation war erfolgreich. - + Last Sync was successful, but with warnings on individual files. Letzte Synchronisation war erfolgreich, aber mit Warnungen für einzelne Dateien. - + Setup Error. Setup-Fehler. - + User Abort. Benutzer-Abbruch - + Sync is paused. Synchronisation wurde angehalten. - + %1 (Sync is paused) %1 (Synchronisation ist pausiert) @@ -470,8 +463,8 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::FolderWizard - - + + Add Folder Ordner hinzufügen @@ -547,42 +540,42 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::FolderWizardRemotePath - + Add Remote Folder Entfernten Ordner hinzufügen - + Enter the name of the new folder: Geben Sie den Namen des neuen Ordners ein: - + Folder was successfully created on %1. Order erfolgreich auf %1 erstellt. - + Failed to create the folder on %1. Please check manually. Die Erstellung des Ordners auf %1 ist fehlgeschlagen. Bitte prüfen Sie dies manuell. - + Choose this to sync the entire account Wählen Sie dies, um das gesamte Konto zu synchronisieren - + This folder is already being synced. Dieser Ordner wird bereits synchronisiert. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Sie synchronisieren bereits <i>%1</i>, das ein übergeordneten Ordner von <i>%2</i> ist. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Sie synchronisieren bereits alle Ihre Dateien. Die Synchronisation anderer Verzeichnisse wird <b>nicht</b> unterstützt. Wenn Sie mehrere Ordner synchronisieren möchten, entfernen Sie bitte das aktuell konfigurierte Wurzelverzeichnis zur Synchronisation. @@ -599,17 +592,22 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Kein E-Tag vom Server empfangen, bitte Proxy / Gateway überprüfen - + We received a different E-Tag for resuming. Retrying next time. Es wurde ein unterschiedlicher E-Tag zum Fortfahren empfangen. Bitte beim nächsten mal nochmal versuchen. - + + Server returned wrong content-range + Server hat falschen Bereich für den Inhalt zurück gegeben + + + Connection Timeout Zeitüberschreitung der Verbindung @@ -623,7 +621,7 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? - General Setttings + General Settings Allgemeine Einstellungen @@ -661,12 +659,12 @@ Sind Sie sicher, dass sie diese Operation durchführen wollen? Mirall::HttpCredentials - + Enter Password Passwort eingeben - + Please enter %1 password for user '%2': Bitte %1 Passwort für den Nutzer '%2' eingeben: @@ -808,8 +806,8 @@ Aktivierte Elemente werden ebenfalls gelöscht, wenn diese das Löschen eines Ve - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Eine neue Version des %1-Clients ist verfügbar.</p><p>Version <b>%2</b> steht zum Download bereit. Die zur Zeit installierte Version: %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Eine neue Version des %1 - Klients ist verfügbar.</p><p><b>%2</b> steht zum Herunterladen bereit. Die installierte Version ist %3.</p> @@ -964,8 +962,8 @@ nach zusätzlichen Privilegien während des Prozesses. - New version %1 available. Please use the systems update tool to install it. - Neue Version %1 verfügbar. Bitte nutzen Sie zur Installation das Systemaktualisierungstool. + New version %1 available. Please use the system's update tool to install it. + Neue Version %1 verfügbar. Bitte nutzen Sie das System-Updatetool zur Installation. @@ -1079,7 +1077,7 @@ Es ist nicht ratsam, diese zu benutzen. Verbindung fehlgeschlagen - + Update %1 server %1 Server aktualisieren @@ -1087,126 +1085,126 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::OwncloudSetupWizard - + Folder rename failed Ordner umbenennen fehlgeschlagen. - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Lokaler Sync-Ordner %1 erfolgreich erstellt!</b></font> - + Trying to connect to %1 at %2... Versuche zu %1 an %2 zu verbinden... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Erfolgreich mit %1 verbunden: %2 Version %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Fehler: Falsche Anmeldeinformationen. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Lokaler Sync-Ordner %1 existiert bereits, aktiviere Synchronistation.<br/><br/> - + Creating local sync folder %1... Erstelle lokalen Sync-Ordner %1... - + ok ok - + failed. fehlgeschlagen. - + Could not create local folder %1 Der lokale Ordner %1 konnte nicht angelegt werden - - + + Failed to connect to %1 at %2:<br/>%3 Die Verbindung zu %1 auf %2:<br/>%3 konnte nicht hergestellt werden - + No remote folder specified! Keinen fernen Ordner spezifiziert! - + Error: %1 Fehler: %1 - + creating folder on ownCloud: %1 erstelle Ordner auf ownCloud: %1 - + Remote folder %1 created successfully. Remoteordner %1 erfolgreich erstellt. - + The remote folder %1 already exists. Connecting it for syncing. Der Ordner %1 ist auf dem Server bereits vorhanden. Verbinde zur Synchronisation. - - + + The folder creation resulted in HTTP error code %1 Das Erstellen des Verzeichnisses erzeugte den HTTP-Fehler-Code %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Die Remote-Ordner-Erstellung ist fehlgeschlagen, weil die angegebenen Zugangsdaten falsch sind. Bitte gehen Sie zurück und überprüfen Sie die Zugangsdaten. - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Die Remote-Ordner-Erstellung ist fehlgeschlagen, vermutlich sind die angegebenen Zugangsdaten falsch.</font><br/>Bitte gehen Sie zurück und überprüfen Sie Ihre Zugangsdaten.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Remote-Ordner %1 konnte mit folgendem Fehler nicht erstellt werden: <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Eine Synchronisationsverbindung für Ordner %1 zum entfernten Ordner %2 wurde eingerichtet. - + Successfully connected to %1! Erfolgreich verbunden mit %1! - + Connection to %1 could not be established. Please check again. Die Verbindung zu %1 konnte nicht hergestellt werden. Bitte prüfen Sie die Einstellungen erneut. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Kann den Ordner nicht entfernen und sichern, da der Ordner oder einer seiner Dateien in einem anderen Programm geöffnet ist. Bitte schließen Sie den Ordner ode die Datei oder beenden Sie das Setup. @@ -1214,7 +1212,7 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Verbindungsassistent @@ -1258,12 +1256,12 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronisation wurde durch den Nutzer abgebrochen. - + No E-Tag received from server, check Proxy/Gateway Kein E-Tag vom Server empfangen, bitte Proxy / Gateway überprüfen @@ -1273,7 +1271,12 @@ Es ist nicht ratsam, diese zu benutzen. Es wurde ein unterschiedlicher E-Tag zum Fortfahren empfangen. Bitte beim nächsten mal nochmal versuchen. - + + Server returned wrong content-range + Server hat falschen Bereich für den Inhalt zurück gegeben + + + File %1 can not be downloaded because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! @@ -1281,7 +1284,7 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Die Datei %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht herunter geladen werden! @@ -1289,7 +1292,12 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Wiederherstellung fehlgeschlagen: + + + A file or directory was removed from a read only share, but restoring failed: %1 Eine Datei oder Verzeichnis wurde von einer Nur-Lese-Freigabe wiederhergestellt, aber die Wiederherstellung ist mit folgendem Fehler fehlgeschlagen: %1 @@ -1297,12 +1305,12 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Achtung, es könnte ein Problem mit der Groß- und Kleinschreibung für %1 auftreten - + could not create directory %1 Verzeichnis %1 konnte nicht erstellt werden @@ -1323,7 +1331,7 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash %1 kann aufgrund eines Konfliktes mit dem lokalen Dateinamen nicht zu %2 umbenannt werden @@ -1331,7 +1339,7 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Die Datei wurde von einer Nur-Lese-Freigabe gelöscht. Die Datei wurde wiederhergestellt. @@ -1339,17 +1347,17 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Dieser Ordner muss nicht umbenannt werden. Er wurde zurück zum Originalnamen umbenannt. - + This folder must not be renamed. Please name it back to Shared. Dieser Ordner muss nicht umbenannt werden. Bitte benennen Sie es zurück wie in der Freigabe. - + The file was renamed but is part of a read only share. The original file was restored. Die Datei wurde auf einer Nur-Lese-Freigabe umbenannt. Die Original-Datei wurde wiederhergestellt. @@ -1376,22 +1384,22 @@ Es ist nicht ratsam, diese zu benutzen. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Die Datei wurde von einer Nur-Lese-Freigabe lokal bearbeitet. Die Datei wurde wiederhergestellt und Ihre Bearbeitung ist in der Konflikte-Datei. - + The local file was removed during sync. Die lokale Datei wurde während der Synchronisation gelöscht. - + Local file changed during sync. Eine lokale Datei wurde während der Synchronisation geändert. - + The server did not acknowledge the last chunk. (No e-tag were present) Der Server hat den letzten Block nicht bestätigt. (Der E-Tag war nicht vorhanden) @@ -1419,62 +1427,62 @@ Es ist nicht ratsam, diese zu benutzen. 4 - + Time Zeit - + File Datei - + Folder Ordner - + Action Aktion - + Size Größe - + Retry Sync Synchronisation wiederholen - + Copy Kopieren - + Copy the activity list to the clipboard. Aktivitätsliste in die Zwischenablage kopieren. - + Copied to clipboard In die Zwischenablage kopiert - + The sync status has been copied to the clipboard. Der Synchronisationsstatus wurde in die Zwischenablage kopiert. - + Currently no files are ignored because of previous errors. Aktuell werden keine Dateien, aufgrund vorheriger Fehler, ignoriert. - + %1 files are ignored because of previous errors. Try to sync these again. %1 Datei(en) werden aufgrund vorheriger Fehler ignoriert. @@ -1517,27 +1525,27 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::SettingsDialogMac - + %1 %1 - + Account Nutzerkonto - + Activity Aktivität - + General Allgemein - + Network Netzwerk @@ -1545,12 +1553,12 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::ShibbolethCredentials - + Login Error Log-In Fehler - + You must sign in as user %1 Sie müssen sich als %1 einloggen @@ -1558,22 +1566,22 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Authentifikation - + Reauthentication required Erneute Authentifizierung erforderlich - + Your session has expired. You need to re-login to continue to use the client. Ihre Sitzung ist abgelaufen. Sie müssen sich zur weiteren Nutzung des Clients neu Anmelden. - + %1 - %2 %1 - %2 @@ -1777,158 +1785,158 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::SyncEngine - + Success. Erfolgreich - + CSync failed to create a lock file. CSync konnte keine lock-Datei erstellen. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync konnte den Synchronisationsbericht nicht laden oder erstellen. Stellen Sie bitte sicher, dass Sie Lese- und Schreibrechte auf das lokale Synchronisationsverzeichnis haben. - + CSync failed to write the journal file. CSync konnte den Synchronisationsbericht nicht schreiben. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Das %1-Plugin für csync konnte nicht geladen werden.<br/>Bitte überprüfen Sie die Installation!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Die Uhrzeit auf diesem Computer und dem Server sind verschieden. Bitte verwenden Sie ein Zeitsynchronisationsprotokolls (NTP) auf Ihrem Server und Klienten, damit die gleiche Uhrzeit verwendet wird. - + CSync could not detect the filesystem type. CSync konnte den Typ des Dateisystem nicht feststellen. - + CSync got an error while processing internal trees. CSync hatte einen Fehler bei der Verarbeitung von internen Strukturen. - + CSync failed to reserve memory. CSync konnte keinen Speicher reservieren. - + CSync fatal parameter error. CSync hat einen schwerwiegender Parameterfehler festgestellt. - + CSync processing step update failed. CSync Verarbeitungsschritt "Aktualisierung" fehlgeschlagen. - + CSync processing step reconcile failed. CSync Verarbeitungsschritt "Abgleich" fehlgeschlagen. - + CSync processing step propagate failed. CSync Verarbeitungsschritt "Übertragung" fehlgeschlagen. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Das Zielverzeichnis existiert nicht.</p><p>Bitte prüfen Sie die Synchronisationseinstellungen.</p> - + A remote file can not be written. Please check the remote access. Eine Remote-Datei konnte nicht geschrieben werden. Bitte den Remote-Zugriff überprüfen. - + The local filesystem can not be written. Please check permissions. Kann auf dem lokalen Dateisystem nicht schreiben. Bitte Berechtigungen überprüfen. - + CSync failed to connect through a proxy. CSync konnte sich nicht über einen Proxy verbinden. - + CSync could not authenticate at the proxy. CSync konnte sich nicht am Proxy authentifizieren. - + CSync failed to lookup proxy or server. CSync konnte den Proxy oder Server nicht auflösen. - + CSync failed to authenticate at the %1 server. CSync konnte sich nicht am Server %1 authentifizieren. - + CSync failed to connect to the network. CSync konnte sich nicht mit dem Netzwerk verbinden. - - A network connection timeout happend. - Es ist zu einer Zeitüberschreitung der Netzwerkverbindung gekommen. + + A network connection timeout happened. + Eine Zeitüberschreitung der Netzwerkverbindung ist aufgetreten. - + A HTTP transmission error happened. Es hat sich ein HTTP-Übertragungsfehler ereignet. - + CSync failed due to not handled permission deniend. CSync wegen fehlender Berechtigung fehlgeschlagen. - + CSync failed to access CSync-Zugriff fehlgeschlagen - + CSync tried to create a directory that already exists. CSync versuchte, ein Verzeichnis zu erstellen, welches bereits existiert. - - + + CSync: No space on %1 server available. CSync: Kein Platz auf Server %1 frei. - + CSync unspecified error. CSync unbekannter Fehler. - + Aborted by the user Abbruch durch den Benutzer - + An internal error number %1 happened. Interne Fehlernummer %1 aufgetreten. - + The item is not synced because of previous errors: %1 Das Element ist aufgrund vorheriger Fehler nicht synchronisiert: %1 @@ -1948,15 +1956,61 @@ Versuchen Sie diese nochmals zu synchronisieren. Die Datei beinhaltet ungültige Zeichen und kann nicht plattformübergreifend synchronisiert werden. - + Unable to initialize a sync journal. Synchronisationsbericht konnte nicht initialisiert werden. - + Cannot open the sync journal Synchronisationsbericht kann nicht geöffnet werden + + + Not allowed because you don't have permission to add sub-directories in that directory + Nicht erlaubt, da Sie keine Rechte zur Erstellung von Unterordnern haben + + + + Not allowed because you don't have permission to add parent directory + Nicht erlaubt, da Sie keine Rechte zur Erstellung von Hauptordnern haben + + + + Not allowed because you don't have permission to add files in that directory + Nicht erlaubt, da Sie keine Rechte zum Hinzufügen von Dateien in diesen Ordner haben + + + + Not allowed to upload this file because it is read-only on the server, restoring + Das Hochladen dieser Datei ist nicht erlaubt, da die Datei auf dem Server schreibgeschützt ist, Wiederherstellung + + + + + Not allowed to remove, restoring + Löschen nicht erlaubt, Wiederherstellung + + + + Move not allowed, item restored + Verschieben nicht erlaubt, Element wiederhergestellt + + + + Move not allowed because %1 is read-only + Verschieben nicht erlaubt, da %1 schreibgeschützt ist + + + + the destination + Das Ziel + + + + the source + Die Quelle + Mirall::Systray @@ -1969,7 +2023,7 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Version %1 Für weitere Informationen besuchen Sie bitte <a href='%2'>%3</a>.</p><p>Urheberrecht von ownCloud, Inc.<p><p>Zur Verfügung gestellt durch %4 und lizensiert unter der GNU General Public License (GPL) Version 2.0.<br>%5 und das %5 Logo sind eingetragene Warenzeichen von %4 in den <br>Vereinigten Staaten, anderen Ländern oder beides.</p> @@ -1977,47 +2031,47 @@ Versuchen Sie diese nochmals zu synchronisieren. Mirall::ownCloudGui - + Please sign in Bitte melden Sie sich an - + Disconnected from server Vom Server getrennt - + Folder %1: %2 Ordner %1: %2 - + No sync folders configured. Keine Sync-Ordner konfiguriert. - + None. Keine. - + Recent Changes Letzte Änderungen - + Open %1 folder Ordner %1 öffnen - + Managed Folders: Verwaltete Ordner: - + Open folder '%1' Ordner '%1' öffnen @@ -2301,27 +2355,27 @@ Versuchen Sie diese nochmals zu synchronisieren. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2342,7 +2396,7 @@ Versuchen Sie diese nochmals zu synchronisieren. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Wenn Sie noch keinen ownCloud-Server haben, informieren Sie sich unter <a href="https://owncloud.com">owncloud.com</a>. @@ -2351,12 +2405,12 @@ Versuchen Sie diese nochmals zu synchronisieren. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Erstellt aus Git-Revision <a href="%1">%2</a> vom %3, %4 mit Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Version %2. Für mehr Informationen besuchen Sie <a href="%3">%4</a></p><p><small> Von Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc., <br> Basierend auf Mirall von Duncan Mac-Vicar P.</small></p>%7 @@ -2445,57 +2499,57 @@ Versuchen Sie diese nochmals zu synchronisieren. theme - + Status undefined Status undefiniert - + Waiting to start sync Warte, um mit der Synchronistation zu beginnen - + Sync is running Sync läuft - + Sync Success Sync erfolgreich - + Sync Success, some files were ignored. Synchronisation abgeschlossen, einige Dateien wurden ignoriert. - + Sync Error Synchronisationsfehler - + Setup Error Setup-Fehler - + The server is currently unavailable Der Server ist vorübergehend nicht erreichbar. - + Preparing to sync Synchronisation wird vorbereitet - + Aborting... Abbrechen... - + Sync is paused Synchronisation wurde angehalten diff --git a/translations/mirall_el.ts b/translations/mirall_el.ts index 1a170688b..85f63b26f 100644 --- a/translations/mirall_el.ts +++ b/translations/mirall_el.ts @@ -85,7 +85,7 @@ Connected with <server> as <user> - Συνδεδεμένοι με το <διακομιστή> ως <χρήστης> + Συνδεδεμένοι με το <server> ως <user> @@ -126,7 +126,7 @@ Confirm Folder Remove - Επιβεβαίωση αφαίρεσης φακέλου + Επιβεβαίωση Αφαίρεσης Φακέλου @@ -141,33 +141,33 @@ <p>Do you really want to reset folder <i>%1</i> and rebuild your client database?</p><p><b>Note:</b> This function is designed for maintenance purposes only. No files will be removed, but this can cause significant data traffic and take several minutes or hours to complete, depending on the size of the folder. Only use this option if advised by your administrator.</p> - <p>Θέλετε στ' αλήθεια να επαναφέρετε το φάκελο <i>%1</i> και να επαναδημιουργήσετε τη βάση δεδομένων του πελάτη;</p><p><b>Σημείωση:</b> Αυτή η λειτουργία έχει σχεδιαστεί αποκλειστικά για λόγους συντήρησης. Κανένα αρχείο δεν θα αφαιρεθεί, αλλά αυτό μπορεί να προκαλέσει σημαντική κίνηση δεδομένων και να πάρει αρκετά λεπτά ή ώρες μέχρι να ολοκληρωθεί, ανάλογα με το μέγεθος του φακέλου. Χρησιμοποιείστε αυτή την επιλογή μόνο εάν έχετε συμβουλευτεί αναλόγως από το διαχειριστή σας.</p> + <p>Θέλετε στ' αλήθεια να επαναφέρετε το φάκελο <i>%1</i> και να επαναδημιουργήσετε τη βάση δεδομένων του δέκτη;</p><p><b>Σημείωση:</b> Αυτή η λειτουργία έχει σχεδιαστεί αποκλειστικά για λόγους συντήρησης. Κανένα αρχείο δεν θα αφαιρεθεί, αλλά αυτό μπορεί να προκαλέσει σημαντική κίνηση δεδομένων και να πάρει αρκετά λεπτά ή ώρες μέχρι να ολοκληρωθεί, ανάλογα με το μέγεθος του φακέλου. Χρησιμοποιείστε αυτή την επιλογή μόνο εάν έχετε συμβουλευτεί αναλόγως από το διαχειριστή σας.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. - Χρησιμοποιούμενος χώρος στον διακομιστή: %1 (%3%) από %2 + %1 (%3%) από %2 αποθηκευτικός χώρος διακομιστή σε χρήση. - + No connection to %1 at <a href="%2">%3</a>. Δεν υπάρχει σύνδεση με %1 στο <a href="%2">%3</a>. - + No %1 connection configured. - Δεν υπάρχει σύνδεση με το %1. + Δεν έχει ρυθμιστεί σύνδεση με το %1. - + Sync Running - Ο Συγχρονισμός Εκτελείται + Εκτελείται Συγχρονισμός @@ -175,34 +175,36 @@ Δεν ρυθμίστηκε λογαριασμός. - + The syncing operation is running.<br/>Do you want to terminate it? - Η λειτουργία συγχρονισμού λειτουργεί.<br/> Θέλετε να την τερματίσετε; + Η λειτουργία συγχρονισμού εκτελείται.<br/> Θέλετε να την τερματίσετε; - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 από %4) %5 απομένουν με ταχύτητα %6/δευτ - + %1 of %2, file %3 of %4 Total time left %5 - + %1 από %2, αρχείο %3 από%4 + +Συνολικός χρόνος που απομένει %5 - + Connected to <a href="%1">%2</a>. Συνδεδεμένοι με <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Συνδεδεμένοι με <a href="%1">%2</a> ως <i>%3</i>. - + Currently there is no storage usage information available. Προς το παρόν δεν υπάρχουν πληροφορίες χρήσης χώρου αποθήκευσης διαθέσιμες. @@ -212,48 +214,48 @@ Total time left %5 Authentication Required - Απαιτείται πιστοποίηση + Απαιτείται Πιστοποίηση Enter username and password for '%1' at %2. - Εισάγετε όνομα χρήστη και συνθηματικό για τον '%1' στο %2. + Εισάγετε όνομα χρήστη και κωδικό πρόσβασης για το '%1' στο %2. &User: - @Χρήστης: + &Χρήστης: &Password: - &Συνθηματικό: + &Κωδικός Πρόσβασης: Mirall::ConnectionValidator - + No ownCloud account configured Δεν έχει ρυθμιστεί λογαριασμός ownCloud - + The configured server for this client is too old - Ο ρυθμισμένος διακομιστής για αυτόν το δέκτη είναι πολύ παλιός + Ο ρυθμισμένος διακομιστής για αυτό το δέκτη είναι πολύ παλιός - + Please update to the latest server and restart the client. - Παρακαλώ ενημερώστε στον τελευταίο διακομιστή και επανεκκινήστε το δέκτη. + Παρακαλώ ενημερώστε το διακομιστή στη νεώτερη έκδοση και επανεκκινήστε το δέκτη. - + Unable to connect to %1 Αδυναμία σύνδεσης με %1 - + The provided credentials are not correct Τα παρεχόμενα διαπιστευτήρια δεν είναι σωστά @@ -261,119 +263,112 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - Αδυναμία δημιουργίας πλαισίου csync + Αδυναμία δημιουργίας csync-context - + Local folder %1 does not exist. Δεν υπάρχει ο τοπικός φάκελος %1. - + %1 should be a directory but is not. - %1 επρεπε να ειναι χωρος αποθηκευσης αλλα δεν ειναι. + Ο %1 θα έπρεπε να είναι κατάλογος αρχείων αλλά δεν είναι. - + %1 is not readable. - %1 δεν είναι αναγνώσιμο. + Το %1 δεν είναι αναγνώσιμο. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - Το %1 και άλλα %2 αρχεία διαγράφηκαν. + Το %1 και άλλα %2 αρχεία αφαιρέθηκαν. - + %1 has been removed. %1 names a file. - Το %1 έχει διαγραφεί. + Το %1 αφαιρέθηκε. - + %1 and %2 other files have been downloaded. %1 names a file. - Το αρχείο %1 και άλλα %2 αρχεία έχουν μεταφορτωθεί. + Το αρχείο %1 και άλλα %2 αρχεία έχουν ληφθεί. - + %1 has been downloaded. %1 names a file. - Το αρχείο %1 έχει μεταφορτωθεί. + Το %1 έχει ληφθεί. - + %1 and %2 other files have been updated. Το αρχείο %1 και %2 άλλα αρχεία έχουν ενημερωθεί. - + %1 has been updated. %1 names a file. - Το αρχείο %1 έχει ενημερωθεί. + Το %1 έχει ενημερωθεί. - + %1 has been renamed to %2 and %3 other files have been renamed. Το αρχείο %1 έχει μετονομαστεί σε %2 και άλλα %3 αρχεία έχουν μετονομαστεί. - + %1 has been renamed to %2. %1 and %2 name files. - Το αρχείο %1 έχει μετονομαστεί σε %2 + Το %1 έχει μετονομαστεί σε %2. - + %1 has been moved to %2 and %3 other files have been moved. Το αρχείο %1 έχει μετακινηθεί στο %2 και %3 άλλα αρχεία έχουν μετακινηθεί. - + %1 has been moved to %2. - Το αρχείο %1 έχει μετακινηθεί στο %2. + Το %1 έχει μετακινηθεί στο %2. - + Sync Activity Δραστηριότητα Συγχρονισμού - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Αυτός ο συγχρονισμός θα αφαιρέσει όλα τα αρχεία στον τοπικό φάκελο συγχρονισμού '%1'. -Εάν εσείς ή ο διαχειριστής σας επαναφέρατε τον λογαριασμό σας στο διακομιστή, επιλέξτε "Διατήρηση αρχείων". Εάν θέλετε να αφαιρεθούν τα δεδομένα σας, επιλέξτε "Αφαίρεση όλων των αρχείων". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - Αυτός ο συγχρονισμός θα αφαιρέσει όλα τα αρχεία από τον φάκελο συγχρονισμού '%1'. + Αυτός ο συγχρονισμός θα αφαιρέσει όλα τα αρχεία από το φάκελο συγχρονισμού '%1'. Αυτό μπορεί να συμβεί επειδή ο φάκελος επαναρυθμίστηκε σιωπηλά, ή επειδή όλα τα αρχεία αφαιρέθηκαν χειροκίνητα. -Είστε σίγουροι ότι θέλετε να πραγματοποιήσετε αυτή εντολή; +Είστε σίγουροι ότι θέλετε να εκτελέσετε αυτή τη λειτουργία; - + Remove All Files? Αφαίρεση Όλων των Αρχείων; - + Remove all files Αφαίρεση όλων των αρχείων - + Keep files Διατήρηση αρχείων @@ -381,69 +376,69 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state Δεν ήταν δυνατό να επαναφερθεί η κατάσταση του φακέλου - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - Βρέθηκε ένα παλαιότερο αρχείο συγχρονισμού '%1', αλλά δεν μπόρεσε να αφαιρεθεί. Παρακαλώ βεβαιωθείτε ότι καμμια εφαρμογή δεν το χρησιμοποιεί αυτή τη στιγμή. + Βρέθηκε ένα παλαιότερο αρχείο συγχρονισμού '%1', αλλά δεν μπόρεσε να αφαιρεθεί. Παρακαλώ βεβαιωθείτε ότι καμμία εφαρμογή δεν το χρησιμοποιεί αυτή τη στιγμή. - + Undefined State. - Απροσδιόριστη κατάσταση. + Απροσδιόριστη Κατάσταση. - + Waits to start syncing. Αναμονή έναρξης συγχρονισμού. - + Preparing for sync. Προετοιμασία για συγχρονισμό. - + Sync is running. Ο συγχρονισμός εκτελείται. - + Server is currently not available. Ο διακομιστής δεν είναι διαθέσιμος προς το παρόν. - + Last Sync was successful. Ο τελευταίος συγχρονισμός ήταν επιτυχής. - + Last Sync was successful, but with warnings on individual files. Ο τελευταίος συγχρονισμός ήταν επιτυχής, αλλά υπήρχαν προειδοποιήσεις σε συγκεκριμένα αρχεία. - + Setup Error. Σφάλμα Ρύθμισης. - + User Abort. Ματαίωση από Χρήστη. - + Sync is paused. - Ο Συγχρονισμός Παύθηκε + Παύση συγχρονισμού. - + %1 (Sync is paused) - %1 (Παύση συγχρονισμούς) + %1 (Παύση συγχρονισμού) @@ -468,8 +463,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Προσθήκη Φακέλου @@ -504,7 +499,7 @@ Are you sure you want to perform this operation? The local path %1 is already an upload folder. Please pick another one! - Το τοπικό μονοπάτι %1 είναι ήδη φάκελος φόρτωσης. Παρακαλώ επιλέξτε κάποιον άλλο! + Η τοπική διαδρομή %1 είναι ήδη ένας φάκελος μεταφόρτωσης. Παρακαλώ επιλέξτε κάποιον άλλο! @@ -514,7 +509,7 @@ Are you sure you want to perform this operation? The selected folder is a symbolic link. An already configured folder is contained in the folder this link is pointing to. - Ο επιλεγμένος φάκελος είναι ένας συμβολικός σύνδεσμος. Ένας ήδη ρυθμισμένος φάκελος περιέχεται στον φάκελο στον οποίο καταλήγει αυτός ο σύνδεσμος. + Ο επιλεγμένος φάκελος είναι ένας συμβολικός σύνδεσμος. Ένας ήδη ρυθμισμένος φάκελος περιέχεται στο φάκελο στον οποίο καταλήγει αυτός ο σύνδεσμος. @@ -539,50 +534,50 @@ Are you sure you want to perform this operation? Select the source folder - Επέλεξε το φάκελο πηγής + Επιλογή του φακέλου προέλευσης Mirall::FolderWizardRemotePath - + Add Remote Folder Προσθήκη Απομακρυσμένου Φακέλου - + Enter the name of the new folder: Εισάγετε το όνομα του νέου φακέλου: - + Folder was successfully created on %1. - Επιτυχής δημιουργία καταλόγου στο %1. + Επιτυχής δημιουργία φακέλου στο %1. - + Failed to create the folder on %1. Please check manually. Αποτυχία δημιουργίας φακέλου στο %1. Παρακαλώ ελέγξτε χειροκίνητα. - + Choose this to sync the entire account Επιλέξτε να συγχρονίσετε ολόκληρο το λογαριασμό - + This folder is already being synced. Αυτός ο φάκελος συγχρονίζεται ήδη. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - Ο φάκελος <i>%1</i> συγχρονίζεται ήδη, ο οποίος είναι γονικός φάκελος του <i>%2</i>. + Ο φάκελος <i>%1</i>, ο οποίος είναι γονεϊκός φάκελος του <i>%2</i>, συγχρονίζεται ήδη. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. - Συγχρονίζετε ήδη όλα σας τα αρχεία. Ο συγχρονισμός ενός ακόμα φακέλου <b>δεν</b> υποστηρίζεται. Εάν θέλετε να συγχρονίσετε πολλαπλούς φακέλους, παρακαλώ αφαιρέστε την τρέχουσα ρύθμιση συχρονισμού του φακέλου ρίζας. + Συγχρονίζετε ήδη όλα σας τα αρχεία. Ο συγχρονισμός ενός ακόμα φακέλου <b>δεν</b> υποστηρίζεται. Εάν θέλετε να συγχρονίσετε πολλαπλούς φακέλους, παρακαλώ αφαιρέστε την τρέχουσα ρύθμιση συχρονισμού του βασικού φακέλου. @@ -597,19 +592,24 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - Δεν ελήφθη E-Tag από τον διακομιστή, ελέγξτε τον διακομιστή μεσολάβησης/πύλη + Δεν ελήφθη E-Tag από το διακομιστή, ελέγξτε το διακομιστή μεσολάβησης/πύλη - + We received a different E-Tag for resuming. Retrying next time. Ελήφθη διαφορετικό E-Tag για συνέχιση. Επανάληψη την επόμενη φορά. - + + Server returned wrong content-range + + + + Connection Timeout - Χρονικό όριο σύνδεσης + Λήξη Χρόνου Αναμονής Σύνδεσης @@ -621,18 +621,18 @@ Are you sure you want to perform this operation? - General Setttings - Γενικές Ρυθμίσεις + General Settings + Γενικές ρυθμίσεις Launch on System Startup - Εκκίνηση κατά την Έναρξη + Εκκίνηση κατά την Έναρξη του Συστήματος Show Desktop Notifications - Εμφάνιση Ειδοποιήσεων + Εμφάνιση Ειδοποιήσεων Επιφάνειας Εργασίας @@ -659,12 +659,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password Εισάγετε Κωδικό Πρόσβασης - + Please enter %1 password for user '%2': Παρακαλώ εισάγετε τον κωδικό %1 για το χρήστη '%2': @@ -693,7 +693,7 @@ Are you sure you want to perform this operation? Checked items will also be deleted if they prevent a directory from being removed. This is useful for meta data. Αρχεία ή κατάλογοι αρχείων που ακολουθούν αυτό το πρότυπο δεν θα συγχρονιστούν. -Τα επιλεγμένα στοιχεία θα διαγράφονται εάν εμποδίζουν τη διαγραφή ενός καταλόγου αρχείων. Αυτό είναι χρήσιμο για μετα-δεδομένα. +Τα επιλεγμένα στοιχεία επίσης θα διαγράφονται εάν εμποδίζουν την αφαίρεση ενός καταλόγου αρχείων. Αυτό είναι χρήσιμο για μετα-δεδομένα. @@ -703,7 +703,7 @@ Checked items will also be deleted if they prevent a directory from being remove Cannot write changes to '%1'. - Αδυναμία αποθήκευσης αλλαγών στο '%1'. + Αδυναμία εγγραφής αλλαγών στο '%1'. @@ -736,7 +736,7 @@ Checked items will also be deleted if they prevent a directory from being remove Log Output - Καταγραφή εξόδου + Καταγραφή Εξόδου @@ -746,7 +746,7 @@ Checked items will also be deleted if they prevent a directory from being remove &Find - &Εύρεση + &Αναζήτηση @@ -766,7 +766,7 @@ Checked items will also be deleted if they prevent a directory from being remove Save the log file to a file on disk for debugging. - Αποθήκευση του αρχείου καταγραφών στον δίσκο, για αποσφαλμάτωση. + Αποθήκευση του αρχείου καταγραφών στο δίσκο για αποσφαλμάτωση. @@ -794,7 +794,7 @@ Checked items will also be deleted if they prevent a directory from being remove <nobr>File '%1'<br/>cannot be opened for writing.<br/><br/>The log output can <b>not</b> be saved!</nobr> - <nobr>Το αρχειο '%1'<br/>δεν μπορει να ανοιχθει για το γραψιμο.<br/><br/>Το αρχείο καταγραφής δεν <b>μπορεί</b> να αποθηκευτεί!</nobr> + <nobr>Το αρχείο '%1'<br/>δεν μπορεί να ανοιχθεί για εγγραφή.<br/><br/>Το αρχείο καταγραφής <b>δεν</b> μπορεί να αποθηκευτεί!</nobr> @@ -802,12 +802,12 @@ Checked items will also be deleted if they prevent a directory from being remove New Version Available - Νέα Εκδοχή Διαθέσιμη + Νέα Έκδοση Διαθέσιμη - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - Μια νέα εκδοχή του Δέκτη %1 είναι διαθέσιμη. </p><p><b>%2</b>είναι διαθέσιμη για άνοιγμα. Η εγκατεστημένη εκδοχή είναι %3,<p>. + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -822,7 +822,7 @@ Checked items will also be deleted if they prevent a directory from being remove Get update - Λάβετε την ενημέρωση + Λήψη ενημέρωσης @@ -835,17 +835,17 @@ Checked items will also be deleted if they prevent a directory from being remove Proxy Settings - Ρυθμίσεις Διαμεσολαβητή + Ρυθμίσεις Ενδιάμεσου Διακομιστή No Proxy - Κανένας Διαμεσολαβητής + Χωρίς Ενδιάμεσο Διακομιστή Use system proxy - Χρήση διαμεσολαβητή συστήματος + Χρήση ενδιάμεσου διακομιστή συστήματος @@ -888,12 +888,12 @@ Checked items will also be deleted if they prevent a directory from being remove No limit - Χωρίς Όριο + Χωρίς όριο Upload Bandwidth - Ταχύτητα μεταφόρτωσης + Ταχύτητα Μεταφόρτωσης @@ -903,17 +903,17 @@ Checked items will also be deleted if they prevent a directory from being remove Hostname of proxy server - Όνομα συστήματος του διακομιστή διαμεσολάβησης + Όνομα συστήματος του ενδιάμεσου διακομιστή Username for proxy server - Όνομα χρήστη για τον διακομιστή διαμεσολάβησης + Όνομα χρήστη για τον ενδιάμεσο διακομιστή Password for proxy server - Συνθηματικό για τον διακομιστή διαμεσολάβησης + Κωδικός πρόσβασης για τον ενδιάμεσο διακομιστή @@ -931,7 +931,7 @@ Checked items will also be deleted if they prevent a directory from being remove New Update Ready - Νέα ενημέρωση διαθέσιμη + Νέα Ενημέρωση Διαθέσιμη @@ -962,8 +962,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - Νέα έκδοση %1 διαθέσιμη. Παρακαλώ χρησιμοποιήστε το εργαλείο ενημερώσεων του συστήματος για την εγκαταστήσετε. + New version %1 available. Please use the system's update tool to install it. + @@ -1001,12 +1001,12 @@ for additional privileges during the process. %1 folder '%2' is synced to local folder '%3' - Ο φάκελος %1 '%2' είναι συγχρονισμένος με τον τοπικό φάκελο '%3' + Ο %1 φάκελος '%2' είναι συγχρονισμένος με τον τοπικό φάκελο '%3' <p><small><strong>Warning:</strong> You currently have multiple folders configured. If you continue with the current settings, the folder configurations will be discarded and a single root folder sync will be created!</small></p> - <p><small><strong>Προειδοποίηση:</strong> Επί του παρόντος έχετε ρυθμισμένους πολλαπλούς φακέλους. Εάν συνεχίσετε με τις παρούσες ρυθμίσεις σας, οι ρυθμίσεις φακέλων θα απορριφθούν και ένας μοναδικός φάκελος συγχρονισμού θα δημιουργηθεί!</small></p> + <p><small><strong>Προειδοποίηση:</strong> Επί του παρόντος έχετε ρυθμισμένους πολλαπλούς φακέλους. Εάν συνεχίσετε με τις παρούσες ρυθμίσεις, οι ρυθμίσεις φακέλων θα απορριφθούν και ένας μοναδικός φάκελος ρίζας για συγχρονισμό θα δημιουργηθεί!</small></p> @@ -1064,7 +1064,7 @@ It is not advisable to use it. This url is secure. You can use it. - Αυτό το url είναι ασφαλές. Μπορείτε να το χρησιμοποιήσετε. + Αυτή η url είναι ασφαλές. Μπορείτε να τη χρησιμοποιήσετε. @@ -1077,7 +1077,7 @@ It is not advisable to use it. Σύνδεση απέτυχε - + Update %1 server Ενημέρωση %1 διακομιστή @@ -1085,134 +1085,134 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Αποτυχία μετονομασίας φακέλου - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> - <font color="green"><b>Επιτυχής δημιουργία τοπικού καταλόγου %1 για συγχρονισμό!</b></font> + <font color="green"><b>Επιτυχής δημιουργία τοπικού φακέλου %1 για συγχρονισμό!</b></font> - + Trying to connect to %1 at %2... - Προσπαθεια συνδεσης στο %1 για %2... + Προσπάθεια σύνδεσης στο %1 για %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Επιτυχής σύνδεση στο %1: %2 έκδοση %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Σφάλμα: Λάθος διαπιστευτήρια. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> - Υπάρχει ήδη ο τοπικός κατάλογος %1 για συγχρονισμό, ρυθμίστε τον για συγχρονισμό.<br/><br/> + Ο τοπικός φάκελος συγχρονισμού %1 υπάρχει ήδη, ρύθμιση για συγχρονισμό.<br/><br/> - + Creating local sync folder %1... - Δημιουργία τοπικού καταλόγου %1 για συγχρονισμό... + Δημιουργία τοπικού φακέλου %1 για συγχρονισμό... - + ok οκ - + failed. απέτυχε. - + Could not create local folder %1 - Δεν μπόρεσε να δημιουργήσει τοπικό φάκελλο %1 + Αδυναμία δημιουργίας τοπικού φακέλου %1 - - + + Failed to connect to %1 at %2:<br/>%3 Αποτυχία σύνδεσης με το %1 στο %2:<br/>%3 - + No remote folder specified! - Κανένας απομακρυσμένος φάκελος δεν προσδιορίστηκε! + Δεν προσδιορίστηκε κανένας απομακρυσμένος φάκελος! - + Error: %1 - Σφάλμα %1 + Σφάλμα: %1 - + creating folder on ownCloud: %1 - δημιουργία φακέλλου στο ownCloud % 1 + δημιουργία φακέλου στο ownCloud: %1 - + Remote folder %1 created successfully. Ο απομακρυσμένος φάκελος %1 δημιουργήθηκε με επιτυχία. - + The remote folder %1 already exists. Connecting it for syncing. - Ο απομακρυσμένος φάκελος %1 υπάρχει ήδη. Πραγματοποιείται σύνδεση για ενημέρωση. + Ο απομακρυσμένος φάκελος %1 υπάρχει ήδη. Θα συνδεθεί για συγχρονισμό. - - + + The folder creation resulted in HTTP error code %1 Η δημιουργία φακέλου είχε ως αποτέλεσμα τον κωδικό σφάλματος HTTP %1 - - The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - Η δημιουργία απομακρυσμένου φακέλλου απέτυχε επειδή τα διαπιστευτήρια είναι λάθος! <br/> Παρακαλώ επιστρέψετε και ελέγξετε τα διαπιστευτήρια. - - - - <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> - <p><font color="red">Η απομακρυσμένη δημιουργία φακέλου απέτυχε, επειδή πιθανώς τα διαπιστευτήρια που δόθηκαν είναι λάθος.</font><br/>Παρακαλώ επιστρέψτε πίσω και ελέγξτε τα διαπιστευτήρια σας.</p> - - - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> + Η δημιουργία απομακρυσμένου φακέλλου απέτυχε επειδή τα διαπιστευτήρια είναι λάθος!<br/>Παρακαλώ επιστρέψετε και ελέγξετε τα διαπιστευτήριά σας.</p> + + + + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> + <p><font color="red">Η δημιουργία απομακρυσμένου φακέλου απέτυχε, πιθανώς επειδή τα διαπιστευτήρια που δόθηκαν είναι λάθος.</font><br/>Παρακαλώ επιστρέψτε πίσω και ελέγξτε τα διαπιστευτήρια σας.</p> + + + + Remote folder %1 creation failed with error <tt>%2</tt>. - Η απομακρυσμένη δημιουργία φακέλου %1 απέτυχε με σφάλμα <tt>%2</tt>. + Η δημιουργία απομακρυσμένου φακέλου %1 απέτυχε με σφάλμα <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. - Μια σύνδεση συγχρονισμού από τον κατάλογο %1 σε %2 έχει συσταθεί. + Μια σύνδεση συγχρονισμού από τον απομακρυσμένο κατάλογο %1 σε %2 έχει ρυθμιστεί. - + Successfully connected to %1! - Η συνδεση πετυχε με %1! + Επιτυχής σύνδεση με %1! - + Connection to %1 could not be established. Please check again. Αδυναμία σύνδεσης στον %1. Παρακαλώ ελέξτε ξανά. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - Αδυναμία αφαίρεσης και δημιουργίας αντιγράφου ασφαλείας φακέλου διότι ο φάκελος ή ένα αρχείο του είναι ανοικτό από άλλο πρόγραμμα. Παρακαλώ κλείστε τον φάκελο ή το αρχείο και πατήστε επανάληψη ή ακυρώστε την ρύθμιση. + Αδυναμία αφαίρεσης και δημιουργίας αντιγράφου ασφαλείας του φακέλου διότι ο φάκελος ή ένα αρχείο του είναι ανοικτό από άλλο πρόγραμμα. Παρακαλώ κλείστε τον φάκελο ή το αρχείο και πατήστε επανάληψη ή ακυρώστε την ρύθμιση. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Οδηγός Σύνδεσης @@ -1222,12 +1222,12 @@ It is not advisable to use it. Open %1 - Ανοικτό %1 + Άνοιγμα %1 Open Local Folder - Ανοίξτε το Τοπικό Φάκελλο + Άνοιγμα τοπικού φακέλου @@ -1237,7 +1237,7 @@ It is not advisable to use it. Your entire account is synced to the local folder <i>%1</i> - Ολος ο λογαριασμός σας έει συγχρονιστεί με τον τοπικό φάκελλο. + Ολόκληρος ο λογαριασμός σας έχει συγχρονιστεί με τον τοπικό φάκελλο <i>%1</i> @@ -1250,18 +1250,18 @@ It is not advisable to use it. Connection Timeout - Χρονικό όριο σύνδεσης + Λήξη Χρόνου Αναμονής Σύνδεσης Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - Ο συγχρονισμός ματαιώθηκε από το χρήστη. + Ο συγχρονισμός ματαιώθηκε από τον χρήστη. - + No E-Tag received from server, check Proxy/Gateway Δεν ελήφθη E-Tag από τον διακομιστή, ελέγξτε τον διακομιστή μεσολάβησης/πύλη @@ -1271,23 +1271,33 @@ It is not advisable to use it. Ελήφθη διαφορετικό E-Tag για συνέχιση. Επανάληψη την επόμενη φορά. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! - Το αρχείο %1 δεν είναι δυνατό να μεταφορτωθεί λόγω διένεξης με το όνομα ενός τοπικού ονόματος αρχείου! + Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - Το αρχείο %1 δεν είναι δυνατό να μεταφορτωθεί λόγω διένεξης με το όνομα ενός τοπικού ονόματος αρχείου! + Το αρχείο %1 δεν είναι δυνατό να ληφθεί λόγω διένεξης με το όνομα ενός τοπικού αρχείου! Mirall::PropagateItemJob - + + ; Restoration Failed: + - Η αποκατάσταση Απέτυχε: + + + A file or directory was removed from a read only share, but restoring failed: %1 Ένα αρχείο ή ένας κατάλογος αφαιρέθηκε από ένα διαμοιρασμένο κατάλογο μόνο για ανάγνωση, αλλά η επαναφορά απέτυχε: %1 @@ -1295,12 +1305,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Προσοχή, πιθανή διένεξη κεφαλαίων-πεζών γραμάτων με το %1 - + could not create directory %1 αδυναμία δημιουργίας καταλόγου %1 @@ -1310,7 +1320,7 @@ It is not advisable to use it. Could not remove %1 because of a local file name clash - Δεν ήταν δυνατή η διαγραφή του %1 λόγω διένεξης με ένα τοπικό όνομα αρχείου + Δεν ήταν δυνατή η αφαίρεση του %1 λόγω διένεξης με το όνομα ενός τοπικού αρχείου @@ -1321,33 +1331,33 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash - Το αρχείο %1 δεν είναι δυνατό να μετονομαστεί σε %2 λόγω μιας διένεξης με τοπικό όνομα αρχείου + Το αρχείο %1 δεν είναι δυνατό να μετονομαστεί σε %2 λόγω μιας διένεξης με το όνομα ενός τοπικού αρχείου Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. - Το αρχείο διαγράφηκε από ένα διαμοιρασμένο κατάλογο μόνο για ανάγνωση. Το αρχείο επαναφέρθηκε. + Το αρχείο αφαιρέθηκε από ένα διαμοιρασμένο κατάλογο μόνο για ανάγνωση. Το αρχείο επαναφέρθηκε. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Αυτός ο φάκελος δεν πρέπει να μετονομαστεί. Μετονομάζεται πίσω στο αρχικό του όνομα. - + This folder must not be renamed. Please name it back to Shared. - Αυτός ο φάκελος δεν πρέπει να μετονομαστεί. Παρακαλώ ονομάστε το ξανά Κοινόχρηστος. + Αυτός ο φάκελος δεν πρέπει να μετονομαστεί. Παρακαλώ ονομάστε τον ξανά Κοινόχρηστος. - + The file was renamed but is part of a read only share. The original file was restored. Το αρχείο μετονομάστηκε αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Το αρχικό αρχείο επαναφέρθηκε. @@ -1363,35 +1373,35 @@ It is not advisable to use it. Sync was aborted by user. - Ο συγχρονισμός ματαιώθηκε από το χρήστη. + Ο συγχρονισμός ματαιώθηκε από τον χρήστη. The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και η επεξεργασία σας βρίσκεται στο αρχείο συγκρούσεων. + Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και το επεξεργασμένο βρίσκεται στο αρχείο συγκρούσεων. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και η επεξεργασία σας βρίσκεται στο αρχείο συγκρούσεων. + Το αρχείο υπέστη επεξεργασία τοπικά αλλά είναι τμήμα ενός διαμοιρασμένου καταλόγου μόνο για ανάγνωση. Επαναφέρθηκε και το επεξεργασμένο βρίσκεται στο αρχείο συγκρούσεων. - + The local file was removed during sync. - Το τοπικό αρχείο διαγράφηκε κατά τον συγχρονισμό. + Το τοπικό αρχείο αφαιρέθηκε κατά το συγχρονισμό. - + Local file changed during sync. Το τοπικό αρχείο τροποποιήθηκε κατά τον συγχρονισμό. - + The server did not acknowledge the last chunk. (No e-tag were present) - Ο διακομιστής δεν επιβεβαίωσε το τελευταίο τμήμα. (Δεν υπήρχε E-Tag) + Ο διακομιστής δεν αναγνώρισε το τελευταίο τμήμα. (Δεν υπήρχε e-tag) @@ -1417,62 +1427,62 @@ It is not advisable to use it. 4 - + Time Ώρα - + File Αρχείο - + Folder Φάκελος - + Action Ενέργεια - + Size Μέγεθος - + Retry Sync Επαναλήψη Συγχρονισμού - + Copy Αντιγραφή - + Copy the activity list to the clipboard. Αντιγραφή της λίστας δραστηριότητας στο πρόχειρο. - + Copied to clipboard - Αντιγραφθηκε στο clipboard + Αντιγράφηκε στο πρόχειρο - + The sync status has been copied to the clipboard. Η κατάσταση συγχρονισμού αντιγράφηκε στο πρόχειρο. - + Currently no files are ignored because of previous errors. Προς το παρόν κανένα αρχείο δεν θα αγνοηθεί λόγω προηγούμενων σφαλμάτων. - + %1 files are ignored because of previous errors. Try to sync these again. %1 αρχεία θα ανγοηθούν λόγω προηγούμενων σφαλμάτων. @@ -1515,27 +1525,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 %1 - + Account Λογαριασμός - + Activity Δραστηριότητα - + General Γενικά - + Network Δίκτυο @@ -1543,12 +1553,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - Σφάλμα σύνδεσης + Σφάλμα Σύνδεσης - + You must sign in as user %1 Πρέπει να εισέλθετε σαν χρήστης %1 @@ -1556,22 +1566,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Πιστοποίηση - + Reauthentication required Απαιτείται επανάληψη πιστοποίησης - + Your session has expired. You need to re-login to continue to use the client. Η συνεδρία σας έληξε. Πρέπει να εισέλθετε ξανά για να συνεχίσετε να χρησιμοποιείτε το πρόγραμμα. - + %1 - %2 %1 - %2 @@ -1586,7 +1596,7 @@ It is not advisable to use it. Common Name (CN): - Κοινό Όνομα (ΚΝ): + Κοινό Όνομα (ΚΟ): @@ -1606,7 +1616,7 @@ It is not advisable to use it. State/Province: - Νομός ή περιφέρεια: + Νομός/Περιφέρεια: @@ -1677,7 +1687,7 @@ It is not advisable to use it. This connection is encrypted using %1 bit %2. - Η σύνδεση είναι κρυπτογραφημένη με χρήση %1 bit %2 + Η σύνδεση είναι κρυπτογραφημένη με %1 bit %2 @@ -1703,7 +1713,7 @@ It is not advisable to use it. Trust this certificate anyway - Εμπιστευθειτε αυτο το πιστοποιητικο + Προσθήκη αυτού του πιστοποιητικού στα έμπιστα παρ'όλα αυτά @@ -1719,7 +1729,7 @@ It is not advisable to use it. with Certificate %1 - με πιστοποιητικό: %1 + με Πιστοποιητικό: %1 @@ -1775,158 +1785,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. Επιτυχία. - + CSync failed to create a lock file. Το CSync απέτυχε να δημιουργήσει ένα αρχείο κλειδώματος. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Το CSync απέτυχε να φορτώσει ή να δημιουργήσει το αρχείο καταλόγου. Βεβαιωθείτε ότι έχετε άδειες ανάγνωσης και εγγραφής στον τοπικό κατάλογο συγχρονισμού. - + CSync failed to write the journal file. Το CSync απέτυχε να εγγράψει στο αρχείο καταλόγου. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> - Το πρόσθετο του %1 για το csync δεν μπόρεσε να φορτωθεί.<br/>Παρακαλούμε επαληθεύσετε την εγκατάσταση!</p> + <p>Το πρόσθετο του %1 για το csync δεν μπόρεσε να φορτωθεί.<br/>Παρακαλούμε επαληθεύσετε την εγκατάσταση!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. - Η ώρα του συστήματος μεταξύ του τοπικού υπολογιστή και του διακομιστή διαφέρει πάρα πολύ. Παρακαλούμε χρησιμοποιήστε μια υπηρεσία συγχρονισμός του χρόνου (NTP) και στους δύο υπολογιστές. + Η ώρα του συστήματος στον τοπικό υπολογιστή διαφέρει από την ώρα του συστήματος στο διακομιστή. Παρακαλούμε χρησιμοποιήστε μια υπηρεσία χρονικού συγχρονισμού (NTP) στο διακομιστή και στον τοπικό υπολογιστή ώστε η ώρα να παραμένει η ίδια. - + CSync could not detect the filesystem type. - To CSync δεν μπορούσε να ανιχνεύσει τον τύπο του αρχείου συστήματος. + To CSync δεν μπορούσε να ανιχνεύσει τον τύπο του συστήματος αρχείων. - + CSync got an error while processing internal trees. Το CSync έλαβε κάποιο μήνυμα λάθους κατά την επεξεργασία της εσωτερικής διεργασίας. - + CSync failed to reserve memory. - Το CSync απέτυχε να διατηρήσει τη μνήμη. + Το CSync απέτυχε να δεσμεύσει μνήμη. - + CSync fatal parameter error. - CSync μοιραίο σφαλμα παράμετρου. + Μοιραίο σφάλμα παράμετρου CSync. - + CSync processing step update failed. - CSync ενημέρωση στάδιο επεξεργασίας απέτυχε. + Η ενημέρωση του βήματος επεξεργασίας του CSync απέτυχε. - + CSync processing step reconcile failed. CSync στάδιο επεξεργασίας συμφιλίωση απέτυχε. - + CSync processing step propagate failed. - Η προώθηση του CSync απέτυχε. + Η μετάδοση του βήματος επεξεργασίας του CSync απέτυχε. + + + + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> + <p>Ο κατάλογος προορισμού δεν υπάρχει.</p><p>Παρακαλώ ελέγξτε τις ρυθμίσεις συγχρονισμού.</p> - <p>The target directory does not exist.</p><p>Please check the sync setup.</p> - <p>Ο στοχευμένος κατάλογος δεν υπάρχει.</p><p>Παρακαλώ ελέγξτε τις ρυθμίσεις συγχρονισμού.</p> + A remote file can not be written. Please check the remote access. + Ένα απομακρυσμένο αρχείο δεν μπορεί να εγγραφεί. Παρακαλούμε ελέγξτε την απομακρυσμένη πρόσβαση. - A remote file can not be written. Please check the remote access. - Ένα απομακρυσμένο αρχείο δεν μπόρεσε να επεξεργαστεί. Παρακαλούμε ελέγξτε την απομακρυσμένη πρόσβαση. - - - The local filesystem can not be written. Please check permissions. - Το τοπικό σύστημα αρχείων δεν μπορεί να εγγράψει. Παρακαλούμε ελέγξτε τα δικαιώματα. + Το τοπικό σύστημα αρχείων δεν είναι εγγράψιμο. Παρακαλούμε ελέγξτε τα δικαιώματα. - + CSync failed to connect through a proxy. - Το CSync απέτυχε να συνδεθεί μέσω ενός proxy. + Το CSync απέτυχε να συνδεθεί μέσω ενός διαμεσολαβητή. - + CSync could not authenticate at the proxy. - CSync αδυναμία ελέγχου ταυτότητας στο διακομιστή μεσολάβησης. + Το CSync δεν μπόρεσε να πιστοποιηθεί στο διακομιστή μεσολάβησης. - + CSync failed to lookup proxy or server. - CSync απέτυχε να lookup μεσολάβησης ή διακομιστή. + Το CSync απέτυχε να διερευνήσει το διαμεσολαβητή ή το διακομιστή. - + CSync failed to authenticate at the %1 server. - CSync απέτυχε τον έλεγχο ταυτότητας στο 1% διακομιστή. + Το CSync απέτυχε να πιστοποιηθεί στο διακομιστή 1%. - + CSync failed to connect to the network. Το CSync απέτυχε να συνδεθεί με το δίκτυο. - - A network connection timeout happend. - Συνέβη ένα χρονικό όριο σύνδεσης δικτύου. + + A network connection timeout happened. + Διακοπή σύνδεσης δικτύου. - + A HTTP transmission error happened. Ένα σφάλμα μετάδοσης HTTP συνέβη. - + CSync failed due to not handled permission deniend. - CSync απέτυχε λόγω μη γίνεται deniend άδεια. + Το CSync απέτυχε λόγω απόρριψης μη-διαχειρίσιμων δικαιωμάτων. - + CSync failed to access Το CSync απέτυχε να αποκτήσει πρόσβαση - + CSync tried to create a directory that already exists. - Το CSync προσπαθησε να δημιουργησει εναν χωρο αποθηκευσης που υπηρχε ηδη. + Το CSync προσπάθησε να δημιουργήσει ένα κατάλογο που υπάρχει ήδη. - - + + CSync: No space on %1 server available. - CSync: Δεν υπαρχει διαθεσιμος χωρος στον %1 διακομιστη. + CSync: Δεν υπάρχει διαθέσιμος χώρος στο διακομιστή 1%. - + CSync unspecified error. - CSync αγνωστο σφαλμα. + Άγνωστο σφάλμα CSync. - + Aborted by the user Ματαιώθηκε από το χρήστη - + An internal error number %1 happened. Συνέβη εσωτερικό σφάλμα με αριθμό %1. - + The item is not synced because of previous errors: %1 Το αντικείμενο δεν είναι συγχρονισμένο λόγω προηγούμενων σφαλμάτων: %1 @@ -1946,14 +1956,60 @@ It is not advisable to use it. Το αρχείο περιέχει άκυρους χαρακτήρες που δεν μπορούν να συγχρονιστούν σε όλα τα συστήματα. - + Unable to initialize a sync journal. Αδυναμία προετοιμασίας αρχείου συγχρονισμού. - + Cannot open the sync journal - Αποτυχία ανοίγματος του ημερολογίου συγχρονισμού. + Αδυναμία ανοίγματος του αρχείου συγχρονισμού + + + + Not allowed because you don't have permission to add sub-directories in that directory + Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε υπο-καταλόγους σε αυτό τον κατάλογο + + + + Not allowed because you don't have permission to add parent directory + Δεν επιτρέπεται επειδή δεν έχετε δικαιώματα να προσθέσετε στο γονεϊκό κατάλογο + + + + Not allowed because you don't have permission to add files in that directory + Δεν επιτρέπεται επειδή δεν έχεται δικαιώματα να προσθέσετε αρχεία σε αυτόν τον κατάλογο + + + + Not allowed to upload this file because it is read-only on the server, restoring + Δεν επιτρέπεται να μεταφορτώσετε αυτό το αρχείο επειδή είναι μόνο για ανάγνωση στο διακομιστή, αποκατάσταση σε εξέλιξη + + + + + Not allowed to remove, restoring + Δεν επιτρέπεται η αφαίρεση, αποκατάσταση σε εξέλιξη + + + + Move not allowed, item restored + Η μετακίνηση δεν επιτρέπεται, το αντικείμενο αποκαταστάθηκε + + + + Move not allowed because %1 is read-only + Η μετακίνηση δεν επιτρέπεται επειδή το %1 είναι μόνο για ανάγνωση + + + + the destination + ο προορισμός + + + + the source + η προέλευση @@ -1967,57 +2023,57 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> - <p>Έκδοση %1 Για περισσότερες πληροφορίες, παρακαλώ επισκεφθείτε την ιστοσελίδα <a href='%2'>%3</a>.</p><p>Πνευματική ιδιοκτησία ownCloud, Inc.<p><p>Διανέμεται από %4 και αδειοδοτείται με την GNU General Public License (GPL) Έκδοση 2.0.<br>Το %5 και το λογότυπο %5 είναι σήμα κατατεθέν του %4 στις<br>Ηνωμένες Πολιτείες, άλλες χώρες ή όλες.</p> + <p>Έκδοση %1 Για περισσότερες πληροφορίες, παρακαλώ επισκεφθείτε την ιστοσελίδα <a href='%2'>%3</a>.</p><p>Πνευματική ιδιοκτησία ownCloud, Inc.<p><p>Διανέμεται από %4 και αδειοδοτείται με την GNU General Public License (GPL) Έκδοση 2.0.<br>Το %5 και το λογότυπο %5 είναι σήμα κατατεθέν του %4 στις<br>Ηνωμένες Πολιτείες, άλλες χώρες ή και τα δυο.</p> Mirall::ownCloudGui - + Please sign in Παρκαλώ συνδεθείτε - + Disconnected from server - Αποσύνδεση από τον διακομιστή + Αποσύνδεση από το διακομιστή - + Folder %1: %2 Φάκελος %1: %2 - + No sync folders configured. Δεν έχουν οριστεί φάκελοι συγχρονισμού. - + None. Κανένας. - + Recent Changes Πρόσφατες Αλλαγές - + Open %1 folder Άνοιγμα %1 φακέλου - + Managed Folders: - Διαχείριση αρχείων: + Φάκελοι υπό Διαχείριση: - + Open folder '%1' - Άνοιγμα καταλόγου '%1' + Άνοιγμα φακέλου '%1' @@ -2067,7 +2123,7 @@ It is not advisable to use it. Quota n/a - Μερίδιο χώρου αποθήκευσης δεν είναι διαθέσιμο + Μερίδιο χώρου αποθήκευσης μ/δ @@ -2082,12 +2138,12 @@ It is not advisable to use it. Syncing %1 of %2 (%3 left) - + Συγχρονισμός %1 από %2 (%3 απομένουν) Syncing %1 (%2 left) - + Συγχρονισμός %1 (%2 απομένουν) @@ -2147,7 +2203,7 @@ It is not advisable to use it. <small>Erases the contents of the local folder before syncing using the new settings.</small> - <small>Διαγράφει τα περιεχόμενα του τοπικού φακέλου πριν το συγχρονισμό με τις νέες ρυθμίσεις.</small> + <small>Διαγράφει τα περιεχόμενα του τοπικού φακέλου πριν το συγχρονισμό υπό τις νέες ρυθμίσεις.</small> @@ -2170,12 +2226,12 @@ It is not advisable to use it. &Password - &Συνθηματικό + &Κωδικός Πρόσβασης Error Label - Εσφαλμένη Ετικέτα + Ετικέτα Σφάλματος @@ -2195,7 +2251,7 @@ It is not advisable to use it. Server &address: - &Διεύθυνση εξυπηρετητή: + &Διεύθυνση διακομιστή: @@ -2219,7 +2275,7 @@ It is not advisable to use it. &Username: - Όνομα &Χρήστη + &Όνομα Χρήστη @@ -2229,22 +2285,22 @@ It is not advisable to use it. &Password: - &Συνθηματικό: + &Κωδικός Πρόσβασης: Enter the ownCloud password. - Εισάγετε το συνθηματικό του ownCloud. + Εισάγετε τον κωδικό πρόσβασης του ownCloud. Do not allow the local storage of the password. - Να μην επιτρέπεται η τοπική αποθήκευση του συνθηματικού. + Να μην επιτρέπεται η τοπική αποθήκευση του κωδικού πρόσβασης. &Do not store password on local machine - &Μην αποθηκεύετε το συνθηματικό στον τοπικό υπολογιστή + &Να μην γίνει αποθήκευση του κωδικού πρόσβασης στον τοπικό υπολογιστή @@ -2259,17 +2315,17 @@ It is not advisable to use it. Server &Address - Διακομιστής και Διεύθυνση + Διακομιστής και &Διεύθυνση https://... - https://.. + https://... Error Label - Εσφαλμένη Ετικέτα + Ετικέτα Σφάλματος @@ -2287,39 +2343,39 @@ It is not advisable to use it. Your entire account is synced to the local folder - Ολος ο λογαριασμός συγχρονίζεται στον τοπικό φάκελλο. + Ολόκληρος ο λογαριασμός σας έχει συγχρονιστεί με τον τοπικό φάκελο PushButton - Πάτημα Κουμπιού + PushButton Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2334,51 +2390,30 @@ It is not advisable to use it. %1 requires on a working system tray. If you are running XFCE, please follow <a href="http://docs.xfce.org/xfce/xfce4-panel/systray">these instructions</a>. Otherwise, please install a system tray application such as 'trayer' and try again. - Το %1 απαιτεί μια μπάρα συστήματος σε λειτουργία. Εάν χρησιμοποιείτε XFCE, παρακαλώ ακολουθείστε <a href="http://docs.xfce.org/xfce/xfce4-panel/systray">αυτές τις οδηγίες</a>. Διαφορετικά, παρακαλώ εγκαταστείστε μια εφαρμογή μπάρας συστήματος όπως η 'trayer' και δοκιμάστε ξανά. + Το %1 απαιτεί μια μπάρα συστήματος σε λειτουργία. Εάν χρησιμοποιείτε το XFCE, παρακαλώ ακολουθείστε <a href="http://docs.xfce.org/xfce/xfce4-panel/systray">αυτές τις οδηγίες</a>. Διαφορετικά, παρακαλώ εγκαταστείστε μια εφαρμογή μπάρας συστήματος όπως η 'trayer' και δοκιμάστε ξανά. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! - Εάν δεν έχετε ένα διακομιστή ownCloud, δείτε στην διεύθυνση <a href="https://owncloud.com">owncloud.com</a> για περισσότερες πληροφορίες. + Εάν δεν έχετε ένα διακομιστή ownCloud ακόμα, δείτε στην διεύθυνση <a href="https://owncloud.com">owncloud.com</a> για περισσότερες πληροφορίες. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Δημιουργήθηκε από την διασκευή Git <a href="%1">%2</a> στο %3, %4 χρησιμοποιώντας Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 - <p> - -Έκδοση %2. Για περισσότερες πληροφορίες επισκεφθείτε -<a href="%3"> - -%4 -</a> - -</p> - -<p> - -<small> - -Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc. -<br> - -Βασισμένη στο Mirall από τον Duncan Mac-Vicar P. -</small> - -</p> - -%7 + <p>Έκδοση %2. Για περισσότερες πληροφορίες επισκεφθείτε<a href="%3"> +%4</a></p><p><small>Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Βασισμένη στο Mirall από τον Duncan Mac-Vicar P.</small></p>%7 @@ -2386,17 +2421,17 @@ Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc. Downloaded - Λυφθηκε + Ελήφθη Uploaded - Καταχωρήθηκε + Μεταφορτώθηκε Deleted - Διαγραμμένα + Διεγράφη @@ -2465,57 +2500,57 @@ Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc. theme - + Status undefined Απροσδιόριστη κατάσταση - + Waiting to start sync Αναμονή έναρξης συγχρονισμού - + Sync is running - Ο Συγχρονισμός Εκτελείται + Ο συγχρονισμός εκτελείται - + Sync Success Επιτυχημένος Συγχρονισμός - + Sync Success, some files were ignored. Επιτυχία Συγχρονισμού, κάποια αρχεία αγνοήθηκαν. - + Sync Error Σφάλμα Συγχρονισμού - + Setup Error Σφάλμα Ρυθμίσεων - + The server is currently unavailable - Ο διακομιστής δεν είναι διαθέσιμος προς το παρόν. + Ο διακομιστής δεν είναι διαθέσιμος προς το παρόν - + Preparing to sync Προετοιμασία για συγχρονισμό - + Aborting... Ματαίωση σε εξέλιξη... - + Sync is paused Παύση συγχρονισμού diff --git a/translations/mirall_en.ts b/translations/mirall_en.ts index 195ffffd5..efcd5d9ae 100644 --- a/translations/mirall_en.ts +++ b/translations/mirall_en.ts @@ -146,28 +146,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. - + Sync Running @@ -177,34 +177,34 @@ - + The syncing operation is running.<br/>Do you want to terminate it? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -235,27 +235,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + The provided credentials are not correct @@ -263,116 +263,110 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. - + %1 should be a directory but is not. - + %1 is not readable. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -380,67 +374,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. - + Waits to start syncing. - + Preparing for sync. - + Sync is running. - + Server is currently not available. - + Last Sync was successful. - + Last Sync was successful, but with warnings on individual files. - + Setup Error. - + User Abort. - + Sync is paused. - + %1 (Sync is paused) @@ -467,8 +461,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder @@ -544,42 +538,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder - + Enter the name of the new folder: - + Folder was successfully created on %1. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -596,17 +590,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -620,7 +619,7 @@ Are you sure you want to perform this operation? - General Setttings + General Settings @@ -658,12 +657,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password - + Please enter %1 password for user '%2': @@ -803,7 +802,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> @@ -958,7 +957,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1072,7 +1071,7 @@ It is not advisable to use it. - + Update %1 server @@ -1080,126 +1079,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> - + Trying to connect to %1 at %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> - + Error: Wrong credentials. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> - + Creating local sync folder %1... - + ok - + failed. - + Could not create local folder %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 - + creating folder on ownCloud: %1 - + Remote folder %1 created successfully. - + The remote folder %1 already exists. Connecting it for syncing. - - + + The folder creation resulted in HTTP error code %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. - + Successfully connected to %1! - + Connection to %1 could not be established. Please check again. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1207,7 +1206,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard @@ -1251,12 +1250,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1266,7 +1265,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1274,7 +1278,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1282,7 +1286,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1290,12 +1299,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1316,7 +1325,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1324,7 +1333,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1332,17 +1341,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1369,22 +1378,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1412,62 +1421,62 @@ It is not advisable to use it. - + Time - + File - + Folder - + Action - + Size - + Retry Sync - + Copy - + Copy the activity list to the clipboard. - + Copied to clipboard - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1509,27 +1518,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 - + Account - + Activity - + General - + Network @@ -1537,12 +1546,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1550,22 +1559,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 @@ -1767,158 +1776,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. - + CSync failed to create a lock file. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. - + CSync could not detect the filesystem type. - + CSync got an error while processing internal trees. - + CSync failed to reserve memory. - + CSync fatal parameter error. - + CSync processing step update failed. - + CSync processing step reconcile failed. - + CSync processing step propagate failed. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> - + A remote file can not be written. Please check the remote access. - + The local filesystem can not be written. Please check permissions. - + CSync failed to connect through a proxy. - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. - + CSync failed to authenticate at the %1 server. - + CSync failed to connect to the network. - - A network connection timeout happend. + + A network connection timeout happened. - + A HTTP transmission error happened. - + CSync failed due to not handled permission deniend. - + CSync failed to access - + CSync tried to create a directory that already exists. - - + + CSync: No space on %1 server available. - + CSync unspecified error. - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1938,15 +1947,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1959,7 +2014,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1967,47 +2022,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in - + Disconnected from server - + Folder %1: %2 - + No sync folders configured. - + None. - + Recent Changes - + Open %1 folder - + Managed Folders: - + Open folder '%1' @@ -2291,27 +2346,27 @@ It is not advisable to use it. Utility - + %L1 TB - + %L1 GB - + %L1 MB - + %L1 kB - + %L1 B @@ -2332,7 +2387,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! @@ -2341,12 +2396,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2435,57 +2490,57 @@ It is not advisable to use it. theme - + Status undefined - + Waiting to start sync - + Sync is running - + Sync Success - + Sync Success, some files were ignored. - + Sync Error - + Setup Error - + The server is currently unavailable - + Preparing to sync - + Aborting... - + Sync is paused diff --git a/translations/mirall_es.ts b/translations/mirall_es.ts index 91ae39d66..3543fa406 100644 --- a/translations/mirall_es.ts +++ b/translations/mirall_es.ts @@ -144,28 +144,28 @@ <p>Realmente desea restablecer la carpeta <i>%1</i> y reconstruir la base de datos de cliente?</p><p><b>Nota:</b> Esta función es para mantenimiento únicamente. No se eliminarán archivos, pero se puede causar alto tráfico en la red y puede tomar varios minutos u horas para terminar, dependiendo del tamaño de la carpeta. Únicamente utilice esta opción si así lo indica su administrador.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) de %2 espacio usado en el servidor. - + No connection to %1 at <a href="%2">%3</a>. No hay conexión a %1 en <a href="%2">%3</a>. - + No %1 connection configured. No hay ninguna conexión de %1 configurada. - + Sync Running Sincronización en curso @@ -175,35 +175,35 @@ No se ha configurado la cuenta. - + The syncing operation is running.<br/>Do you want to terminate it? La sincronización está en curso.<br/>¿Desea interrumpirla? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 de %4) quedan %5 a una velocidad de %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 de %2, archivo %3 de %4 Tiempo restante %5 - + Connected to <a href="%1">%2</a>. Conectado a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Conectado a <a href="%1">%2</a> como <i>%3</i>. - + Currently there is no storage usage information available. Actualmente no hay información disponible sobre el uso de almacenamiento. @@ -234,27 +234,27 @@ Tiempo restante %5 Mirall::ConnectionValidator - + No ownCloud account configured Ninguna cuenta de ownCloud se ha configurado - + The configured server for this client is too old La configuración del servidor al cliente es obsoleta - + Please update to the latest server and restart the client. Por favor actualice a la ultima verisón del servidor y reinicie el cliente - + Unable to connect to %1 Imposible conectar a %1 - + The provided credentials are not correct Las credenciales proporcionadas no son correctas @@ -262,100 +262,93 @@ Tiempo restante %5 Mirall::Folder - + Unable to create csync-context Imposible crear csync-context - + Local folder %1 does not exist. Carpeta local %1 no existe. - + %1 should be a directory but is not. %1 debería ser un directorio, pero no lo es. - + %1 is not readable. %1 es ilegible. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 y %2 otros archivos han sido eliminados. - + %1 has been removed. %1 names a file. %1 ha sido eliminado. - + %1 and %2 other files have been downloaded. %1 names a file. %1 y %2 otros archivos han sido descargados. - + %1 has been downloaded. %1 names a file. %1 ha sido descargado. - + %1 and %2 other files have been updated. %1 y %2 otros archivos han sido actualizados. - + %1 has been updated. %1 names a file. %1 ha sido actualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 ha sido renombrado a %2 y %3 otros archivos han sido renombrados. - + %1 has been renamed to %2. %1 and %2 name files. %1 ha sido renombrado a %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 ha sido movido a %2 y %3 otros archivos han sido movidos. - + %1 has been moved to %2. %1 ha sido movido a %2. - + Sync Activity Actividad en la Sincronización - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Esta sincronización eliminaría todos los archivos en la carpeta local de sincronización '%1'. -Si ud. o su administrador han restablecido su cuenta en el servidor, elija "Conservar Archivos". Si desea eliminar toda su información, elija "Eliminar todos los archivos". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Esto se puede deber a que la carpeta fue reconfigurada de forma silenciosa o a q Está seguro de que desea realizar esta operación? - + Remove All Files? Eliminar todos los archivos? - + Remove all files Eliminar todos los archivos - + Keep files Conservar archivos @@ -382,67 +375,67 @@ Está seguro de que desea realizar esta operación? Mirall::FolderMan - + Could not reset folder state No se ha podido restablecer el estado de la carpeta - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Un antiguo registro (journal) de sincronización '%1' se ha encontrado, pero no se ha podido eliminar. Por favor asegúrese que ninguna aplicación la está utilizando. - + Undefined State. Estado no definido. - + Waits to start syncing. Esperando el inicio de la sincronización. - + Preparing for sync. Preparándose para sincronizar. - + Sync is running. Sincronización en funcionamiento. - + Server is currently not available. El servidor no está disponible en el momento - + Last Sync was successful. La última sincronización fue exitosa. - + Last Sync was successful, but with warnings on individual files. La última sincronización fue exitosa pero con advertencias para archivos individuales. - + Setup Error. Error de configuración. - + User Abort. Interrumpir. - + Sync is paused. La sincronización está en pausa. - + %1 (Sync is paused) %1 (Sincronización en pausa) @@ -469,8 +462,8 @@ Está seguro de que desea realizar esta operación? Mirall::FolderWizard - - + + Add Folder Añadir carpeta @@ -546,42 +539,42 @@ Está seguro de que desea realizar esta operación? Mirall::FolderWizardRemotePath - + Add Remote Folder Agregar carpeta remota - + Enter the name of the new folder: Introduzca el nombre de la nueva carpeta: - + Folder was successfully created on %1. Carpeta fue creada con éxito en %1. - + Failed to create the folder on %1. Please check manually. Fallo al crear la carpeta %1. Por favor revíselo manualmente. - + Choose this to sync the entire account Escoja esto para sincronizar la cuenta entera - + This folder is already being synced. Este directorio ya se ha soncronizado. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Ya ha sincronizado <i>%1</i>, el cual es la carpeta de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Todavía se están sincronizando ficheros. La sincronización de de otras carpetas <b>no</b> está soportada. Si quieres sincronizar múltiples carpetas, por favor revisa la carpeta raíz configurada. @@ -598,17 +591,22 @@ Está seguro de que desea realizar esta operación? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway No se recibió ninguna e-tag del servidor, revisar el proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Se recibió una e-tag distinta para reanudar. Se intentará nuevamente. - + + Server returned wrong content-range + El servidor devolvió un content-range erróneo + + + Connection Timeout Tiempo de espera de conexión agotado @@ -622,8 +620,8 @@ Está seguro de que desea realizar esta operación? - General Setttings - Opciones generales + General Settings + Ajustes generales @@ -660,12 +658,12 @@ Está seguro de que desea realizar esta operación? Mirall::HttpCredentials - + Enter Password Introduzca la Contraseña - + Please enter %1 password for user '%2': Por favor, introduzca su %1 contraseña para el usuario '%2': @@ -807,8 +805,8 @@ Los elementos marcados también se eliminarán si impiden la eliminación de alg - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Una nueva versión del cliente %1 está disponible.</p><p><b>%2</b> está disponible para descarga. La versión instalada es la %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Está disponible una nueva versión del programa cliente de %1.</p><p><b>%2</b> puede ser descargada. La versión instalada es %3.</p> @@ -963,8 +961,8 @@ pida privilegios adicionales durante el proceso. - New version %1 available. Please use the systems update tool to install it. - Nueva versión %1 disponible. Use la actualización de sistema para instalarla. + New version %1 available. Please use the system's update tool to install it. + La nueva versión %1 está disponible. Use la herramienta de actualización de su sistema para instalarla. @@ -1078,7 +1076,7 @@ No se recomienda usarlo. La conexión falló - + Update %1 server Actualizar servidor %1 @@ -1086,126 +1084,126 @@ No se recomienda usarlo. Mirall::OwncloudSetupWizard - + Folder rename failed Error Renombrando Carpeta - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Carpeta de sincronización local %1 creada con éxito</b></font> - + Trying to connect to %1 at %2... Intentando conectar a %1 desde %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Conectado con éxito a %1: versión %2 %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Error: Credenciales erróneas. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> La carpeta de sincronización local %1 ya existe, configurándola para la sincronización.<br/><br/> - + Creating local sync folder %1... Creando la carpeta de sincronización local %1... - + ok ok - + failed. falló. - + Could not create local folder %1 No se pudo crear carpeta local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Error conectando con %1 en %2:<br/>%3 - + No remote folder specified! No se ha especificado la carpeta remota! - + Error: %1 Error: %1 - + creating folder on ownCloud: %1 creando carpeta en ownCloud: %1 - + Remote folder %1 created successfully. Carpeta remota %1 creado correctamente. - + The remote folder %1 already exists. Connecting it for syncing. La carpeta remota %1 ya existe. Conectándola para sincronizacion. - - + + The folder creation resulted in HTTP error code %1 La creación de la carpeta causó un error HTTP de código %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> ¡La creación de la carpeta remota ha fallado debido a que las credenciales proporcionadas son incorrectas!<br/>Por favor, vuelva atrás y comprueba sus credenciales</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">La creación de la carpeta remota ha fallado, probablemente porque las credenciales proporcionadas son incorrectas.</font><br/>Por favor, vuelva atrás y compruebe sus credenciales.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Creación %1 de carpeta remota ha fallado con el error <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Una conexión de sincronización desde %1 al directorio remoto %2 ha sido configurada. - + Successfully connected to %1! ¡Conectado con éxito a %1! - + Connection to %1 could not be established. Please check again. Conexión a %1 no se pudo establecer. Por favor compruebelo de nuevo. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. No se puede eliminar y respaldar la carpeta porque la misma o un fichero en ella está abierto por otro programa. Por favor, cierre la carpeta o el fichero y reintente, o cancele la instalación. @@ -1213,7 +1211,7 @@ No se recomienda usarlo. Mirall::OwncloudWizard - + %1 Connection Wizard Asistente de Conexión %1 @@ -1257,12 +1255,12 @@ No se recomienda usarlo. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. La sincronización ha sido Interrumpida por el usuario - + No E-Tag received from server, check Proxy/Gateway No se recibió ninguna e-tag del servidor, revisar el proxy/gateway @@ -1272,7 +1270,12 @@ No se recomienda usarlo. Se recibió una e-tag distinta para reanudar. Se intentará nuevamente. - + + Server returned wrong content-range + El servidor devolvió un content-range erróneo + + + File %1 can not be downloaded because of a local file name clash! ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! @@ -1280,7 +1283,7 @@ No se recomienda usarlo. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! ¡El fichero %1 no puede ser descargado debido al nombre de la clase de un fichero local! @@ -1288,7 +1291,12 @@ No se recomienda usarlo. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Falló la restauración: + + + A file or directory was removed from a read only share, but restoring failed: %1 Un archivo o directorio fue eliminado de una carpeta compartida en modo de solo lectura, pero la recuperación falló: %1 @@ -1296,12 +1304,12 @@ No se recomienda usarlo. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Atención, posible error de muyuscula/minisculas en %1 - + could not create directory %1 No se pudo crear el directorio %1 @@ -1322,7 +1330,7 @@ No se recomienda usarlo. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash El archivo %1 no se puede renombrar a %2 por causa de un conflicto con el nombre de un archivo local @@ -1330,7 +1338,7 @@ No se recomienda usarlo. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. El archvo fue eliminado de una carpeta compartida en modo de solo lectura. Ha sido recuperado. @@ -1338,17 +1346,17 @@ No se recomienda usarlo. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Esta carpeta no debe ser renombrada. Ha sido renombrada a su nombre original - + This folder must not be renamed. Please name it back to Shared. Esta carpeta no debe ser renombrada. Favor de renombrar a Compartida. - + The file was renamed but is part of a read only share. The original file was restored. El archivo fue renombrado, pero es parte de una carpeta compartida en modo de solo lectura. El archivo original ha sido recuperado. @@ -1375,22 +1383,22 @@ No se recomienda usarlo. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. El archivo fue modificado localmente, pero es parte de una carpeta compartida en modo de solo lectura. Ha sido recuperado y tu modificación está en el archivo de conflicto. - + The local file was removed during sync. El archivo local fue eliminado durante la sincronización. - + Local file changed during sync. Un archivo local fue modificado durante la sincronización. - + The server did not acknowledge the last chunk. (No e-tag were present) El servidor no reconoció la última parte. (No había una e-tag presente.) @@ -1418,62 +1426,62 @@ No se recomienda usarlo. 4 - + Time Hora - + File Archivo - + Folder Carpeta - + Action Acción - + Size Tamaño - + Retry Sync Reintentar Sincronizar - + Copy Copiar - + Copy the activity list to the clipboard. Copie la lista de actividades al portapapeles - + Copied to clipboard Copiado al portapapeles - + The sync status has been copied to the clipboard. El informe de sincronización fue copiado al portapapeles. - + Currently no files are ignored because of previous errors. Actualmente no hay ficheros ignorados por errores previos. - + %1 files are ignored because of previous errors. Try to sync these again. 1% de los archivos fueron ignorados debido a errores previos. @@ -1516,27 +1524,27 @@ Intente sincronizar los archivos nuevamente. Mirall::SettingsDialogMac - + %1 %1 - + Account Cuenta - + Activity Actividad - + General General - + Network Red @@ -1544,12 +1552,12 @@ Intente sincronizar los archivos nuevamente. Mirall::ShibbolethCredentials - + Login Error Error al iniciar sesión - + You must sign in as user %1 Debe iniciar sesión como el usuario %1 @@ -1557,22 +1565,22 @@ Intente sincronizar los archivos nuevamente. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticar - + Reauthentication required Debe volver a autenticarse - + Your session has expired. You need to re-login to continue to use the client. Su sesión ha caducado. Necesita volver a iniciarla para continuar usando el cliente. - + %1 - %2 %1 - %2 @@ -1776,158 +1784,158 @@ Intente sincronizar los archivos nuevamente. Mirall::SyncEngine - + Success. Completado con éxito. - + CSync failed to create a lock file. CSync no pudo crear un fichero de bloqueo. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync falló al cargar o crear el archivo de diario. Asegúrese de tener permisos de lectura y escritura en el directorio local de sincronización. - + CSync failed to write the journal file. CSync falló al escribir el archivo de diario. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>El %1 complemente para csync no se ha podido cargar.<br/>Por favor, verifique la instalación</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. La hora del sistema en este cliente es diferente de la hora del sistema en el servidor. Por favor use un servicio de sincronización de hora (NTP) en los servidores y clientes para que las horas se mantengan idénticas. - + CSync could not detect the filesystem type. CSync no pudo detectar el tipo de sistema de archivos. - + CSync got an error while processing internal trees. CSync encontró un error mientras procesaba los árboles de datos internos. - + CSync failed to reserve memory. Fallo al reservar memoria para Csync - + CSync fatal parameter error. Error fatal de parámetro en CSync. - + CSync processing step update failed. El proceso de actualización de CSync ha fallado. - + CSync processing step reconcile failed. Falló el proceso de composición de CSync - + CSync processing step propagate failed. Error en el proceso de propagación de CSync - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>El directorio de destino no existe.</p><p>Por favor verifique la configuración de sincronización.</p> - + A remote file can not be written. Please check the remote access. No se pudo escribir en un archivo remoto. Por favor, compruebe el acceso remoto. - + The local filesystem can not be written. Please check permissions. No se puede escribir en el sistema de archivos local. Por favor, compruebe los permisos. - + CSync failed to connect through a proxy. CSync falló al realizar la conexión a través del proxy - + CSync could not authenticate at the proxy. CSync no pudo autenticar el proxy. - + CSync failed to lookup proxy or server. CSync falló al realizar la búsqueda del proxy - + CSync failed to authenticate at the %1 server. CSync: Falló la autenticación con el servidor %1. - + CSync failed to connect to the network. CSync: Falló la conexión con la red. - - A network connection timeout happend. - Ha transcurrido el tiempo máximo de conexión a la red. + + A network connection timeout happened. + Se sobrepasó el tiempo de espera de la conexión de red. - + A HTTP transmission error happened. Ha ocurrido un error de transmisión HTTP. - + CSync failed due to not handled permission deniend. CSync: Falló debido a un permiso denegado. - + CSync failed to access Error al acceder CSync - + CSync tried to create a directory that already exists. CSync trató de crear un directorio que ya existe. - - + + CSync: No space on %1 server available. CSync: No queda espacio disponible en el servidor %1. - + CSync unspecified error. Error no especificado de CSync - + Aborted by the user Interrumpido por el usuario - + An internal error number %1 happened. Ha ocurrido un error interno número %1. - + The item is not synced because of previous errors: %1 El elemento no está sincronizado por errores previos: %1 @@ -1947,15 +1955,61 @@ Intente sincronizar los archivos nuevamente. El fichero contiene caracteres inválidos que no pueden ser sincronizados con la plataforma. - + Unable to initialize a sync journal. No se pudo inicializar un registro (journal) de sincronización. - + Cannot open the sync journal No es posible abrir el diario de sincronización + + + Not allowed because you don't have permission to add sub-directories in that directory + No está permitido, porque no tiene permisos para añadir subcarpetas en este directorio. + + + + Not allowed because you don't have permission to add parent directory + No está permitido porque no tiene permisos para añadir un directorio + + + + Not allowed because you don't have permission to add files in that directory + No está permitido, porque no tiene permisos para crear archivos en este directorio + + + + Not allowed to upload this file because it is read-only on the server, restoring + No está permitido subir este archivo porque es de solo lectura en el servidor, restaurando. + + + + + Not allowed to remove, restoring + No está permitido borrar, restaurando. + + + + Move not allowed, item restored + No está permitido mover, elemento restaurado. + + + + Move not allowed because %1 is read-only + No está permitido mover, porque %1 es solo lectura. + + + + the destination + destino + + + + the source + origen + Mirall::Systray @@ -1968,7 +2022,7 @@ Intente sincronizar los archivos nuevamente. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versión %1 Para mayor información, visite <a href='%2'>%3</a>.</p><p>Derechos reservados ownCloud, Inc.<p><p>Distribuido por %4 y con licencia GNU General Public License (GPL) Versión 2.0.<br>%5 y el logo de %5 son marcas registradas %4 en los<br>Estados Unidos, otros países, o en ambos.</p> @@ -1976,47 +2030,47 @@ Intente sincronizar los archivos nuevamente. Mirall::ownCloudGui - + Please sign in Por favor Registrese - + Disconnected from server Desconectado del servidor - + Folder %1: %2 Archivo %1: %2 - + No sync folders configured. No hay carpetas de sincronización configuradas. - + None. Ninguno. - + Recent Changes Cambios recientes - + Open %1 folder Abrir carpeta %1 - + Managed Folders: Carpetas administradas: - + Open folder '%1' Abrir carpeta '%1' @@ -2300,27 +2354,27 @@ Intente sincronizar los archivos nuevamente. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2395,7 @@ Intente sincronizar los archivos nuevamente. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Si aún no tiene un servidor ownCloud, visite <a href="https://owncloud.com">owncloud.com</a> para obtener más información. @@ -2350,12 +2404,12 @@ Intente sincronizar los archivos nuevamente. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Construido desde la revisión Git <a href="%1">%2</a> el %3, %4 usando Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versión %2. Para más información visite <a href="%3">%4</a></p><p><small>Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Basado en Mirall por Duncan Mac-Vicar P.</small></p>%7 @@ -2444,57 +2498,57 @@ Intente sincronizar los archivos nuevamente. theme - + Status undefined Estado indefinido - + Waiting to start sync Esperando para comenzar la sincronización - + Sync is running Sincronización ejecutándose - + Sync Success Sincronización exitosa - + Sync Success, some files were ignored. Sincronización exitosa, algunos archivos fueron ignorados. - + Sync Error Error al sincronizar - + Setup Error Error de instalación - + The server is currently unavailable El servidor no se encuentra disponible actualmente. - + Preparing to sync Preparando para la sincronizacipon - + Aborting... Interrumpiendo... - + Sync is paused La sincronización se ha pausado diff --git a/translations/mirall_es_AR.ts b/translations/mirall_es_AR.ts index 10faf47ba..ff5cab196 100644 --- a/translations/mirall_es_AR.ts +++ b/translations/mirall_es_AR.ts @@ -144,28 +144,28 @@ <p>¿Realmente deseas resetear el directorio <i>%1</i> y reconstruir la base de datos del cliente?</p><p><b>Nota:</b> Esta función está designada para propósitos de mantenimiento solamente. Ningún archivo será eliminado, pero puede causar un tráfico de datos significante y tomar varios minutos o horas para completarse, dependiendo del tamaño del directorio. Sólo use esta opción si es aconsejado por su administrador.</p> - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. No hay ninguna conexión de %1 configurada. - + Sync Running Sincronización en curso @@ -175,34 +175,34 @@ No hay cuenta configurada. - + The syncing operation is running.<br/>Do you want to terminate it? La sincronización está en curso.<br/>¿Querés interrumpirla? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. Conectado a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Conectado a <a href="%1">%2</a> como <i>%3</i>. - + Currently there is no storage usage information available. Actualmente no hay información disponible acerca del uso del almacenamiento. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured No hay una cuenta ownCloud configurada. - + The configured server for this client is too old La configuración del servidor al cliente es obsoleta - + Please update to the latest server and restart the client. Por favor actualice a la última versión del servidor y reinicie el cliente. - + Unable to connect to %1 Imposible conectar a %1 - + The provided credentials are not correct Las credenciales otorgadas no son correctas @@ -261,100 +261,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Imposible crear csync-context - + Local folder %1 does not exist. El directorio local %1 no existe. - + %1 should be a directory but is not. %1 debería ser un directorio, pero no lo es. - + %1 is not readable. No se puede leer %1. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity Actividad de Sync - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Esta sincronización borraría todos los archivos en la carpeta local de sincronización '%1'. -Si vos o el administrador resetearon tu cuenta en el servidor, elegí "Conservar Archivos". Si querés borrar toda tu información, elegí "Borrar todos los archivos". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +356,17 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o ¿Estás seguro de que querés realizar esta operación? - + Remove All Files? ¿Borrar todos los archivos? - + Remove all files Borrar todos los archivos - + Keep files Conservar archivos @@ -381,67 +374,67 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::FolderMan - + Could not reset folder state No se pudo - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Una antigua sincronización con journaling '%1' fue encontrada, pero no se pudo eliminar. Por favor, asegurate que ninguna aplicación la está utilizando. - + Undefined State. Estado no definido. - + Waits to start syncing. Esperando el comienzo de la sincronización. - + Preparing for sync. Preparando la sincronización. - + Sync is running. Sincronización en funcionamiento. - + Server is currently not available. El servidor actualmente no está disponible. - + Last Sync was successful. La última sincronización fue exitosa. - + Last Sync was successful, but with warnings on individual files. El último Sync fue exitoso, pero hubo advertencias en archivos individuales. - + Setup Error. Error de configuración. - + User Abort. Interrumpir. - + Sync is paused. La sincronización está en pausa. - + %1 (Sync is paused) %1 (Sincronización en pausa) @@ -468,8 +461,8 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::FolderWizard - - + + Add Folder gregar directorio @@ -545,42 +538,42 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::FolderWizardRemotePath - + Add Remote Folder Agregar directorio remoto - + Enter the name of the new folder: Ingresá el nombre del directorio nuevo: - + Folder was successfully created on %1. El directorio fue creado con éxito en %1. - + Failed to create the folder on %1. Please check manually. Fallo al crear el directorio en %1. Por favor chequee manualmente. - + Choose this to sync the entire account Seleccioná acá para sincronizar la cuenta completa - + This folder is already being synced. Este folder ya está siendo sincronizado. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Ya estás sincronizando <i>%1</i>, el cual es el directorio de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -597,17 +590,22 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -621,8 +619,8 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o - General Setttings - Configuraciones Generales + General Settings + @@ -659,12 +657,12 @@ Esto se puede deber a que el directorio fue reconfigurado de manera silenciosa o Mirall::HttpCredentials - + Enter Password Ingresar contraseña - + Please enter %1 password for user '%2': Por favor, ingresa %1 contraseña para el usuario '%2': @@ -806,8 +804,8 @@ Los elementos marcados también se borrarán si impiden la eliminación de algú - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Hay disponible una nueva versión del cliente %1.</p><p><b>%2</b> está disponible para su descarga. La versión instalada es %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -961,7 +959,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1075,7 +1073,7 @@ It is not advisable to use it. Fallo de Conexión - + Update %1 server Actualizando servidor %1 @@ -1083,126 +1081,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Error Al Renombrar Directorio - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Directorio local %1 creado</b></font> - + Trying to connect to %1 at %2... Intentando conectar a %1 en %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Conectado a %1: versión de %2 %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Error: Credenciales erróneas. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> El directorio de sincronización local %1 ya existe, configurándolo para la sincronización.<br/><br/> - + Creating local sync folder %1... Creando el directorio %1... - + ok aceptar - + failed. Error. - + Could not create local folder %1 No fue posible crear el directorio local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Falló al conectarse a %1 en %2:<br/>%3 - + No remote folder specified! ¡No se ha especificado un directorio remoto! - + Error: %1 Error: %1 - + creating folder on ownCloud: %1 Creando carpeta en ownCloud: %1 - + Remote folder %1 created successfully. El directorio remoto %1 fue creado con éxito. - + The remote folder %1 already exists. Connecting it for syncing. El directorio remoto %1 ya existe. Estableciendo conexión para sincronizar. - - + + The folder creation resulted in HTTP error code %1 La creación del directorio resultó en un error HTTP con código de error %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> <p><font color="red">Error al crear el directorio remoto porque las credenciales provistas son incorrectas.</font><br/>Por favor, volvé atrás y verificá tus credenciales.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Error al crear el directorio remoto, probablemente porque las credenciales provistas son incorrectas.</font><br/>Por favor, volvé atrás y verificá tus credenciales.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Se prtodujo un error <tt>%2</tt> al crear el directorio remoto %1. - + A sync connection from %1 to remote directory %2 was set up. Fue creada una conexión de sincronización desde %1 al directorio remoto %2. - + Successfully connected to %1! Conectado con éxito a %1! - + Connection to %1 could not be established. Please check again. No fue posible establecer la conexión a %1. Por favor, intentalo nuevamente. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1210,7 +1208,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Asistente de Conexión @@ -1254,12 +1252,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sincronizaciójn abortada por el usuario. - + No E-Tag received from server, check Proxy/Gateway @@ -1269,7 +1267,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1277,7 +1280,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1285,7 +1288,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1293,12 +1301,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1319,7 +1327,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1327,7 +1335,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1335,17 +1343,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1372,22 +1380,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1415,62 +1423,62 @@ It is not advisable to use it. 4 - + Time Hora - + File Archivo - + Folder Carpeta - + Action Acción - + Size Tamaño - + Retry Sync Volver a intentar el Sync - + Copy Copiar - + Copy the activity list to the clipboard. Copiar la lista de actividades al portapapeles. - + Copied to clipboard Copiado al portapapeles - + The sync status has been copied to the clipboard. El estado de sincronización ha sido copiado al portapapeles - + Currently no files are ignored because of previous errors. Actualmente ningún archivo es ignorado por errores previos. - + %1 files are ignored because of previous errors. Try to sync these again. %1 archivos fueron ignorados por errores previos. @@ -1513,27 +1521,27 @@ Intente sincronizar estos nuevamente. Mirall::SettingsDialogMac - + %1 %1 - + Account Cuenta - + Activity Actividad - + General General - + Network Red @@ -1541,12 +1549,12 @@ Intente sincronizar estos nuevamente. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1554,22 +1562,22 @@ Intente sincronizar estos nuevamente. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticarse - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 %1 - %2 @@ -1771,158 +1779,158 @@ Intente sincronizar estos nuevamente. Mirall::SyncEngine - + Success. Éxito. - + CSync failed to create a lock file. Se registró un error en CSync cuando se intentaba crear un archivo de bloqueo. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>No fue posible cargar el plugin de %1 para csync.<br/>Por favor, verificá la instalación</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. La hora del sistema en este cliente es diferente de la hora del sistema en el servidor. Por favor, usá un servicio de sincronización (NTP) de hora en las máquinas cliente y servidor para que las horas se mantengan iguales. - + CSync could not detect the filesystem type. CSync no pudo detectar el tipo de sistema de archivos. - + CSync got an error while processing internal trees. CSync tuvo un error mientras procesaba los árboles de datos internos. - + CSync failed to reserve memory. CSync falló al reservar memoria. - + CSync fatal parameter error. Error fatal de parámetro en CSync. - + CSync processing step update failed. Falló el proceso de actualización de CSync. - + CSync processing step reconcile failed. Falló el proceso de composición de CSync - + CSync processing step propagate failed. Proceso de propagación de CSync falló - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>El directorio de destino %1 no existe.</p> Por favor, comprobá la configuración de sincronización. </p> - + A remote file can not be written. Please check the remote access. No se puede escribir un archivo remoto. Revisá el acceso remoto. - + The local filesystem can not be written. Please check permissions. No se puede escribir en el sistema de archivos local. Revisá los permisos. - + CSync failed to connect through a proxy. CSync falló al tratar de conectarse a través de un proxy - + CSync could not authenticate at the proxy. CSync no pudo autenticar el proxy. - + CSync failed to lookup proxy or server. CSync falló al realizar la busqueda del proxy. - + CSync failed to authenticate at the %1 server. CSync: fallo al autenticarse en el servidor %1. - + CSync failed to connect to the network. CSync: fallo al conectarse a la red - - A network connection timeout happend. - Ha transcurrido el tiempo máximo de conexión a la red. + + A network connection timeout happened. + - + A HTTP transmission error happened. Ha ocurrido un error de transmisión HTTP. - + CSync failed due to not handled permission deniend. CSync: Falló debido a un permiso denegado. - + CSync failed to access CSync falló al acceder - + CSync tried to create a directory that already exists. Csync trató de crear un directorio que ya existía. - - + + CSync: No space on %1 server available. CSync: No hay más espacio disponible en el servidor %1. - + CSync unspecified error. Error no especificado de CSync - + Aborted by the user Interrumpido por el usuario - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1942,15 +1950,61 @@ Intente sincronizar estos nuevamente. El archivo contiene caracteres inválidos que no pueden ser sincronizados entre plataforma. - + Unable to initialize a sync journal. Imposible inicializar un diario de sincronización. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1963,7 +2017,7 @@ Intente sincronizar estos nuevamente. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1971,47 +2025,47 @@ Intente sincronizar estos nuevamente. Mirall::ownCloudGui - + Please sign in Por favor, inicie sesión - + Disconnected from server - + Folder %1: %2 Directorio %1: %2 - + No sync folders configured. Los directorios de sincronización no están configurados. - + None. Ninguno. - + Recent Changes Cambios recientes - + Open %1 folder Abrir directorio %1 - + Managed Folders: Directorios administrados: - + Open folder '%1' Abrir carpeta '%1' @@ -2296,27 +2350,27 @@ Intente sincronizar estos nuevamente. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2337,7 +2391,7 @@ Intente sincronizar estos nuevamente. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Si todavía no tenés un servidor ownCloud, visitá <a href="https://owncloud.com">owncloud.com</a> para obtener más información. @@ -2346,12 +2400,12 @@ Intente sincronizar estos nuevamente. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versión %2. Para más información visite <a href="%3">%4</a></p><p><small>Por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Basado en Mirall por Duncan Mac-Vicar P.</small></p>%7 @@ -2440,57 +2494,57 @@ Intente sincronizar estos nuevamente. theme - + Status undefined Estado indefinido - + Waiting to start sync Esperando para comenzar sincronización - + Sync is running Sincronización en ejecución - + Sync Success Sincronización Exitosa - + Sync Success, some files were ignored. Syncronización exitosa, algunos archivos fueron ignorados. - + Sync Error Error de Sync - + Setup Error Error de instalación - + The server is currently unavailable El servidor no se encuentra disponible actualmente. - + Preparing to sync Preparando para la sincronizacipon - + Aborting... Abortando... - + Sync is paused Sincronización Pausada diff --git a/translations/mirall_et.ts b/translations/mirall_et.ts index fec8d7634..55cd7b341 100644 --- a/translations/mirall_et.ts +++ b/translations/mirall_et.ts @@ -144,28 +144,28 @@ <p>Kas tõesti soovid kataloogi <i>%1</i> algseadistada ning uuesti luua oma kliendi andmebaasi?</p><p><b>See funktsioon on mõeldud peamiselt ainult hooldustöödeks. Märkus:</b>Kuigi ühtegi faili ei eemaldata, siis see võib põhjustada märkimisväärset andmeliiklust ja võtta mitu minutit või tundi, sõltuvalt kataloogi suurusest. Kasuta seda võimalust ainult siis kui seda soovitab süsteemihaldur.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) %2-st serveri mahust on kasutuses. - + No connection to %1 at <a href="%2">%3</a>. Ühendus puudub %1 <a href="%2">%3</a>. - + No %1 connection configured. Ühtegi %1 ühendust pole seadistatud. - + Sync Running Sünkroniseerimine on käimas @@ -175,35 +175,35 @@ Ühtegi kontot pole seadistatud - + The syncing operation is running.<br/>Do you want to terminate it? Sünkroniseerimine on käimas.<br/>Kas sa soovid seda lõpetada? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 of %4) %5 jäänud kiirusel %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 of %2, fail %3 of %4 Aega kokku jäänud %5 - + Connected to <a href="%1">%2</a>. Ühendatud <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Ühendatud <a href="%1">%2</a> kui <i>%3</i>. - + Currently there is no storage usage information available. Hetkel pole mahu kasutuse info saadaval. @@ -234,27 +234,27 @@ Aega kokku jäänud %5 Mirall::ConnectionValidator - + No ownCloud account configured Ühtegi ownCloud kontot pole seadistatud - + The configured server for this client is too old Seadistatud server on selle kliendi jaoks liiga vana - + Please update to the latest server and restart the client. Palun uuenda server viimasele versioonile ning taaskäivita klient. - + Unable to connect to %1 %1-ga ühendumine ebaõnnestus - + The provided credentials are not correct Sisestatud kasutajatunnused pole õiged @@ -262,100 +262,93 @@ Aega kokku jäänud %5 Mirall::Folder - + Unable to create csync-context Ei suuda luua csync-konteksti - + Local folder %1 does not exist. Kohalikku kausta %1 pole olemas. - + %1 should be a directory but is not. %1 peaks olema kataloog, kuid pole seda mitte. - + %1 is not readable. %1 pole loetav. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ja %2 teist faili eemaldati. - + %1 has been removed. %1 names a file. %1 on eemaldatud. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ja %2 teist faili on alla laaditud. - + %1 has been downloaded. %1 names a file. %1 on alla laaditud. - + %1 and %2 other files have been updated. %1 ja %2 teist faili on uuendatud. - + %1 has been updated. %1 names a file. %1 on uuendatud. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 on ümber nimetatud %2 ja %3 muud faili on samuti ümber nimetatud - + %1 has been renamed to %2. %1 and %2 name files. %1 on ümber nimetatud %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 on tõstetud %2 ning %3 muud faili on samuti liigutatud. - + %1 has been moved to %2. %1 on tõstetud %2. - + Sync Activity Sünkroniseerimise tegevus - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - See sünkroniseering kustutab kõik failid kohalikust kataloogist '%1'.⏎ -Kui sina või adminstraator on sinu konto serveris algseadistanud, siis vali "Säilita failid". Kui soovid oma andmed kustutada, vali "Kustuta kõik failid". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ See võib olla põhjustatud kataloogi ümberseadistusest või on toimunud kõiki Oled kindel, et soovid seda operatsiooni teostada? - + Remove All Files? Kustutada kõik failid? - + Remove all files Kustutada kõik failid - + Keep files Säilita failid @@ -382,67 +375,67 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::FolderMan - + Could not reset folder state Ei suutnud tühistada kataloogi staatust - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Leiti vana sünkroniseeringu zurnaal '%1', kuid selle eemaldamine ebaõnnenstus. Palun veendu, et seda kasutaks ükski programm. - + Undefined State. Määramata staatus. - + Waits to start syncing. Ootab sünkroniseerimise alustamist. - + Preparing for sync. Valmistun sünkroniseerima. - + Sync is running. Sünkroniseerimine on käimas. - + Server is currently not available. Server pole hetkel saadaval. - + Last Sync was successful. Viimane sünkroniseerimine oli edukas. - + Last Sync was successful, but with warnings on individual files. Viimane sünkroniseering oli edukas, kuid mõned failid põhjustasid tõrkeid. - + Setup Error. Seadistamise viga. - + User Abort. Kasutaja tühistamine. - + Sync is paused. Sünkroniseerimine on peatatud. - + %1 (Sync is paused) %1 (Sünkroniseerimine on peatatud) @@ -469,8 +462,8 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::FolderWizard - - + + Add Folder Lisa kaust @@ -546,42 +539,42 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::FolderWizardRemotePath - + Add Remote Folder Lisa võrgukataloog - + Enter the name of the new folder: Sisesta uue kataloogi nimi: - + Folder was successfully created on %1. %1 - kaust on loodud. - + Failed to create the folder on %1. Please check manually. Kausta loomine ebaõnnestus - %1. Palun kontrolli käsitsi. - + Choose this to sync the entire account Vali see sünkroniseering tervele kontole - + This folder is already being synced. Seda kataloogi juba sünkroniseeritakse. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Sa juba sünkroniseerid <i>%1</i>, mis on <i>%2</i> ülemkataloog. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Sa juba sünkroniseerid kõiki oma faile. Teise kataloogi sünkroniseering <b>ei ole</b> toetatud. Kui soovid sünkroniseerida mitut kataloogi, palun eemalda hektel seadistatud sünkroniseeritav juurkataloog. @@ -598,17 +591,22 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ühtegi E-Silti ei saabunud serverist, kontrolli puhverserverit/lüüsi. - + We received a different E-Tag for resuming. Retrying next time. Saime jätkamiseks erineva E-Sildi. Proovin järgmine kord uuesti. - + + Server returned wrong content-range + + + + Connection Timeout Ühenduse aegumine @@ -622,7 +620,7 @@ Oled kindel, et soovid seda operatsiooni teostada? - General Setttings + General Settings Üldised seaded @@ -660,12 +658,12 @@ Oled kindel, et soovid seda operatsiooni teostada? Mirall::HttpCredentials - + Enter Password Sisesta parool - + Please enter %1 password for user '%2': Palun sisesta %1 parool kasutajale '%2': @@ -807,7 +805,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> <p>Uus versioon %1 kliendist on saadaval.</p><p><b>%2</b> on saadaval alla laadimiseks. Paigaldatud on versioon %3.<p> @@ -963,7 +961,7 @@ täiendavaid õigusi protsessi käigus. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. Uus versioon %1 on saadaval. Palun kasuta süsteemi uuendushaldurit selle paigaldamiseks. @@ -1078,7 +1076,7 @@ Selle kasutamine pole soovitatav. Ühendus ebaõnnestus - + Update %1 server Uuenda %1 serverit @@ -1086,126 +1084,126 @@ Selle kasutamine pole soovitatav. Mirall::OwncloudSetupWizard - + Folder rename failed Kataloogi ümbernimetamine ebaõnnestus - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Kohalik kataloog %1 edukalt loodud!</b></font> - + Trying to connect to %1 at %2... Püüan ühenduda %1 kohast %2 - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Edukalt ühendatud %1: %2 versioon %3 (4)</font><br/><br/> - + Error: Wrong credentials. Viga: Valed kasutajaandmed. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Kohalik kataloog %1 on juba olemas. Valmistan selle ette sünkroniseerimiseks. - + Creating local sync folder %1... Kohaliku kausta %1 sünkroonimise loomine ... - + ok ok - + failed. ebaõnnestus. - + Could not create local folder %1 Ei suuda tekitada kohalikku kataloogi %1 - - + + Failed to connect to %1 at %2:<br/>%3 Ühendumine ebaõnnestus %1 %2-st:<br/>%3 - + No remote folder specified! Ühtegi võrgukataloogi pole määratletud! - + Error: %1 Viga: %1 - + creating folder on ownCloud: %1 loon uue kataloogi ownCloudi: %1 - + Remote folder %1 created successfully. Eemalolev kaust %1 on loodud. - + The remote folder %1 already exists. Connecting it for syncing. Serveris on kataloog %1 juba olemas. Ühendan selle sünkroniseerimiseks. - - + + The folder creation resulted in HTTP error code %1 Kausta tekitamine lõppes HTTP veakoodiga %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Kataloogi loomine serverisse ebaõnnestus, kuna kasutajatõendid on valed!<br/>Palun kontrolli oma kasutajatunnust ja parooli.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Serveris oleva kataloogi tekitamine ebaõnnestus tõenäoliselt valede kasutajatunnuste tõttu.</font><br/>Palun mine tagasi ning kontrolli kasutajatunnust ning parooli.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Kataloogi %1 tekitamine serverisse ebaõnnestus veaga <tt>%2</tt> - + A sync connection from %1 to remote directory %2 was set up. Loodi sünkroniseerimisühendus kataloogist %1 serveri kataloogi %2 - + Successfully connected to %1! Edukalt ühendatud %1! - + Connection to %1 could not be established. Please check again. Ühenduse loomine %1 ebaõnnestus. Palun kontrolli uuesti. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Ei suuda eemaldada ning varundada kataloogi kuna kataloog või selles asuv fail on avatud mõne teise programmi poolt. Palun sulge kataloog või fail ning proovi uuesti või katkesta paigaldus. @@ -1213,7 +1211,7 @@ Selle kasutamine pole soovitatav. Mirall::OwncloudWizard - + %1 Connection Wizard %1 seadistamise juhendaja @@ -1257,12 +1255,12 @@ Selle kasutamine pole soovitatav. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sünkroniseering katkestati kasutaja poolt. - + No E-Tag received from server, check Proxy/Gateway Ühtegi E-Silti ei saabunud serverist, kontrolli puhverserverit/lüüsi. @@ -1272,7 +1270,12 @@ Selle kasutamine pole soovitatav. Saime jätkamiseks erineva E-Sildi. Proovin järgmine kord uuesti. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. @@ -1280,7 +1283,7 @@ Selle kasutamine pole soovitatav. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Faili %1 ei saa alla laadida kuna on konflikt kohaliku faili nimega. @@ -1288,7 +1291,12 @@ Selle kasutamine pole soovitatav. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Taastamine ebaõnnestus: + + + A file or directory was removed from a read only share, but restoring failed: %1 Fail või kataloog oli eemaldatud kirjutamisõiguseta jagamisest, kuid taastamine ebaõnnestus: %1 @@ -1296,12 +1304,12 @@ Selle kasutamine pole soovitatav. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Tähelepanu, võimalik tõusutundliku nime konflikt %1-ga - + could not create directory %1 ei suuda luua kataloogi %1 @@ -1322,7 +1330,7 @@ Selle kasutamine pole soovitatav. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Faili %1 ei saa ümber nimetada %2-ks, kuna on konflikt kohaliku faili nimega @@ -1330,7 +1338,7 @@ Selle kasutamine pole soovitatav. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Fail oli eemaldatud kirjutamisõiguseta kataloogist. See on nüüd taastatud. @@ -1338,17 +1346,17 @@ Selle kasutamine pole soovitatav. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Kausta ei tohi ümber nimetada. Kausta algne nimi taastati. - + This folder must not be renamed. Please name it back to Shared. Kausta nime ei tohi muuta. Palun pane selle nimeks tagasi Shared. - + The file was renamed but is part of a read only share. The original file was restored. Fail oli ümber nimetatud, kuid see on osa kirjutamisõiguseta jagamisest. Algne fail taastati. @@ -1375,22 +1383,22 @@ Selle kasutamine pole soovitatav. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Faili on lokaalselt muudetud, kuid see on osa kirjutamisõiguseta jagamisest. See on taastatud ning sinu muudatus on konfliktses failis. - + The local file was removed during sync. Kohalik fail on eemaldatud sünkroniseeringu käigus. - + Local file changed during sync. Kohalik fail muutus sünkroniseeringu käigus. - + The server did not acknowledge the last chunk. (No e-tag were present) Server ei tunnistanud viimast tükki. (E-silt puudus). @@ -1418,62 +1426,62 @@ Selle kasutamine pole soovitatav. 4 - + Time Aeg - + File Fail - + Folder Kaust - + Action Tegevus - + Size Suurus - + Retry Sync Proovi uuesti sünkroniseerida - + Copy Kopeeri - + Copy the activity list to the clipboard. Kopeeri tegevuste nimistu puhvrisse. - + Copied to clipboard Kopeeritud lõikepuhvrisse - + The sync status has been copied to the clipboard. Sünkroniseeringu staatus on kopeeritud lõikepuhvrisse. - + Currently no files are ignored because of previous errors. Hetkel ei ignoreerita ühtegi faili eelnenud vigade tõttu. - + %1 files are ignored because of previous errors. Try to sync these again. %1 faili on ignoreeritud eelnenud vigade tõttu. @@ -1516,27 +1524,27 @@ Proovi neid uuesti sünkroniseerida. Mirall::SettingsDialogMac - + %1 %1 - + Account Konto - + Activity Toimingud - + General Üldine - + Network Võrk @@ -1544,12 +1552,12 @@ Proovi neid uuesti sünkroniseerida. Mirall::ShibbolethCredentials - + Login Error Sisselogimise viga - + You must sign in as user %1 Pead sisse logima kui kasutaja %1 @@ -1557,22 +1565,22 @@ Proovi neid uuesti sünkroniseerida. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - autentimine - + Reauthentication required Vajalik on uuesti autentimine - + Your session has expired. You need to re-login to continue to use the client. Sinu sessioon on aegunud. Sa pead kliendi kasutamiseks uuesti sisse logima. - + %1 - %2 %1 - %2 @@ -1776,158 +1784,158 @@ Proovi neid uuesti sünkroniseerida. Mirall::SyncEngine - + Success. Korras. - + CSync failed to create a lock file. CSync lukustusfaili loomine ebaõnnestus. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Csync ei suutnud avada või luua registri faili. Tee kindlaks et sul on õigus lugeda ja kirjutada kohalikus sünkrooniseerimise kataloogis - + CSync failed to write the journal file. CSync ei suutnud luua registri faili. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Ei suuda laadida csync lisa %1.<br/>Palun kontrolli paigaldust!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Kliendi arvuti kellaeg erineb serveri omast. Palun kasuta õige aja hoidmiseks kella sünkroniseerimise teenust (NTP) nii serveris kui kliendi arvutites, et kell oleks kõikjal õige. - + CSync could not detect the filesystem type. CSync ei suutnud tuvastada failisüsteemi tüüpi. - + CSync got an error while processing internal trees. CSync sai vea sisemiste andmestruktuuride töötlemisel. - + CSync failed to reserve memory. CSync ei suutnud mälu reserveerida. - + CSync fatal parameter error. CSync parameetri saatuslik viga. - + CSync processing step update failed. CSync uuendusprotsess ebaõnnestus. - + CSync processing step reconcile failed. CSync tasakaalustuse protsess ebaõnnestus. - + CSync processing step propagate failed. CSync edasikandeprotsess ebaõnnestus. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Sihtkataloogi ei eksisteeri.</p><p>Palun kontrolli sünkroniseeringu seadistust</p> - + A remote file can not be written. Please check the remote access. Eemalolevasse faili ei saa kirjutada. Palun kontrolli kaugühenduse ligipääsu. - + The local filesystem can not be written. Please check permissions. Kohalikku failissüsteemi ei saa kirjutada. Palun kontrolli õiguseid. - + CSync failed to connect through a proxy. CSync ühendus läbi puhverserveri ebaõnnestus. - + CSync could not authenticate at the proxy. CSync ei suutnud puhverserveris autoriseerida. - + CSync failed to lookup proxy or server. Csync ei suuda leida puhverserverit. - + CSync failed to authenticate at the %1 server. CSync autoriseering serveris %1 ebaõnnestus. - + CSync failed to connect to the network. CSync võrguga ühendumine ebaõnnestus. - - A network connection timeout happend. + + A network connection timeout happened. Toimus võrgukatkestus. - + A HTTP transmission error happened. HTTP ülekande viga. - + CSync failed due to not handled permission deniend. CSync ebaõnnestus ligipääsu puudumisel. - + CSync failed to access CSyncile ligipääs ebaõnnestus - + CSync tried to create a directory that already exists. Csync proovis tekitada kataloogi, mis oli juba olemas. - - + + CSync: No space on %1 server available. CSync: Serveris %1 on ruum otsas. - + CSync unspecified error. CSync tuvastamatu viga. - + Aborted by the user Kasutaja poolt tühistatud - + An internal error number %1 happened. Tekkis sisemine viga number %1. - + The item is not synced because of previous errors: %1 Üksust ei sünkroniseeritud eelnenud vigade tõttu: %1 @@ -1947,15 +1955,61 @@ Proovi neid uuesti sünkroniseerida. Fail sisaldab sobimatuid sümboleid, mida ei saa sünkroniseerida erinevate platvormide vahel. - + Unable to initialize a sync journal. Ei suuda lähtestada sünkroniseeringu zurnaali. - + Cannot open the sync journal Ei suuda avada sünkroniseeringu zurnaali + + + Not allowed because you don't have permission to add sub-directories in that directory + Pole lubatud, kuna sul puuduvad õigused lisada sellesse kataloogi lisada alam-kataloogi + + + + Not allowed because you don't have permission to add parent directory + Pole lubatud, kuna sul puuduvad õigused lisada ülemkataloog + + + + Not allowed because you don't have permission to add files in that directory + Pole lubatud, kuna sul puuduvad õigused sellesse kataloogi faile lisada + + + + Not allowed to upload this file because it is read-only on the server, restoring + Pole lubatud üles laadida, kuna tegemist on ainult-loetava serveriga, taastan + + + + + Not allowed to remove, restoring + Eemaldamine pole lubatud, taastan + + + + Move not allowed, item restored + Liigutamine pole lubatud, üksus taastatud + + + + Move not allowed because %1 is read-only + Liigutamien pole võimalik kuna %1 on ainult lugemiseks + + + + the destination + sihtkoht + + + + the source + allikas + Mirall::Systray @@ -1968,7 +2022,7 @@ Proovi neid uuesti sünkroniseerida. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versioon %1. Täpsema info saamiseks palun külasta <a href='%2'>%3</a>.</p><p>Autoriõigus ownCloud, Inc.</p><p>Levitatatud %4 poolt ning litsenseeritud GNU General Public License (GPL) Version 2.0.<br>%5 ja %5 logo on %4 registreeritud kaubamärgid <br>USA-s ja teistes riikides</p> @@ -1976,47 +2030,47 @@ Proovi neid uuesti sünkroniseerida. Mirall::ownCloudGui - + Please sign in Palun logi sisse - + Disconnected from server Serverist lahtiühendatud - + Folder %1: %2 Kaust %1: %2 - + No sync folders configured. Sünkroniseeritavaid kaustasid pole seadistatud. - + None. Pole. - + Recent Changes Hiljutised muudatused - + Open %1 folder Ava kaust %1 - + Managed Folders: Hallatavad kaustad: - + Open folder '%1' Ava kaust '%1' @@ -2300,27 +2354,27 @@ Proovi neid uuesti sünkroniseerida. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2395,7 @@ Proovi neid uuesti sünkroniseerida. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Kui sul poole veel oma ownCloud serverit, vaata <a href="https://owncloud.com">owncloud.com</a> rohkema info saamiseks. @@ -2350,12 +2404,12 @@ Proovi neid uuesti sünkroniseerida. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Loodud Git revisjonist<a href="%1">%2</a> %3, %4 kasutades Qt %5.</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versioon %2. Täpsemaks infoks külasta <a href="%3">%4</a></p><p><small>Loodud Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc. poolt<br>Põhineb Mirall loodud Duncan Mac-Vicar P. poolt</small></p>%7 @@ -2444,57 +2498,57 @@ Proovi neid uuesti sünkroniseerida. theme - + Status undefined Staatus on määramata - + Waiting to start sync Oodatakse sünkroniseerimise alustamist - + Sync is running Sünkroniseerimine on käimas - + Sync Success Sünkroniseerimine on tehtud - + Sync Success, some files were ignored. Sünkroniseering õnnestus, mõnda faili ignoreeriti. - + Sync Error Sünkroniseerimise viga - + Setup Error Viga sünkroniseerimisel - + The server is currently unavailable Server pole hetkel saadaval. - + Preparing to sync Sünkroniseerimiseks valmistumine - + Aborting... Tühistamine ... - + Sync is paused Sünkroniseerimine on peatatud diff --git a/translations/mirall_eu.ts b/translations/mirall_eu.ts index 5d8e7fa8e..44299e196 100644 --- a/translations/mirall_eu.ts +++ b/translations/mirall_eu.ts @@ -144,28 +144,28 @@ <p>Benetan nahi duzu <i>%1</i> karpeta leheneratu eta zure bezeroaren datu basea berreraiki?</p><p><b>Oharra:</p> Funtzio hau mantenurako bakarrik diseinauta izan da. Ez da fitxategirik ezabatuko, baina honek datu trafiko handia sor dezake eta minutu edo ordu batzuk behar izango ditu burutzeko, karpetaren tamainaren arabera. Erabili aukera hau bakarrik zure kudeatzaileak esanez gero.</p> - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. Ez dago %1 konexiorik konfiguratuta. - + Sync Running Sinkronizazioa martxan da @@ -175,34 +175,34 @@ Ez da konturik konfiguratu. - + The syncing operation is running.<br/>Do you want to terminate it? Sinkronizazio martxan da.<br/>Bukatu nahi al duzu? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. <a href="%1">%2</a>ra konektatuta. - + Connected to <a href="%1">%2</a> as <i>%3</i>. <a href="%1">%2</a>ra konektatuta <i>%3</i> erabiltzailearekin. - + Currently there is no storage usage information available. Orain ez dago eskuragarri biltegiratze erabileraren informazioa. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Ez dago ownCloud konturik konfiguratuta - + The configured server for this client is too old Bezero honentzako konfiguratutako zerbitzaria oso zaharra da - + Please update to the latest server and restart the client. Mesedez eguneratu zerbitzarira eta berrabiarazi bezeroa. - + Unable to connect to %1 Ezin izan da %1ra konektatu - + The provided credentials are not correct Emandako kredentzialak ez dira zuzenak @@ -261,116 +261,110 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. Bertako %1 karpeta ez da existitzen. - + %1 should be a directory but is not. %1 karpeta bat izan behar zen baina ez da. - + %1 is not readable. %1 ezin da irakurri. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 ezabatua izan da. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 %2-(e)ra mugitu da. - + Sync Activity Sinkronizazio Jarduerak - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? Ezabatu Fitxategi Guztiak? - + Remove all files Ezabatu fitxategi guztiak - + Keep files Mantendu fitxategiak @@ -378,67 +372,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state Ezin izan da karpetaren egoera berrezarri - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. Definitu gabeko egoera. - + Waits to start syncing. Itxoiten sinkronizazioa hasteko. - + Preparing for sync. Sinkronizazioa prestatzen. - + Sync is running. Sinkronizazioa martxan da. - + Server is currently not available. Zerbitzaria orain ez dago eskuragarri. - + Last Sync was successful. Azkeneko sinkronizazioa ongi burutu zen. - + Last Sync was successful, but with warnings on individual files. Azkenengo sinkronizazioa ongi burutu zen, baina banakako fitxategi batzuetan abisuak egon dira. - + Setup Error. Konfigurazio errorea. - + User Abort. Erabiltzaileak Bertan Behera Utzi. - + Sync is paused. Sinkronizazioa pausatuta dago. - + %1 (Sync is paused) %1 (Sinkronizazioa pausatuta dago) @@ -465,8 +459,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Gehitu Karpeta @@ -542,42 +536,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder Gehitu Urruneko Karpeta - + Enter the name of the new folder: Sartu karpeta berriaren izena: - + Folder was successfully created on %1. %1-en karpeta ongi sortu da. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account Hautatu hau kontu osoa sinkronizatzeko - + This folder is already being synced. Karpeta hau dagoeneko sinkronizatzen ari da. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -594,17 +588,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ez da E-Tagik jaso zerbitzaritik, egiaztatu Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,8 +617,8 @@ Are you sure you want to perform this operation? - General Setttings - Ezarpen Orokorrak + General Settings + @@ -656,12 +655,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password Sartu Pasahitza - + Please enter %1 password for user '%2': Mesedez sartu %1 pasahitza '%2' erabiltzailerako: @@ -803,8 +802,8 @@ Markatutakoak ezabatuko dira karpeta bat ezabatzeko beharrezkoa bada. Hau meta d - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>%1 Bezeroaren bertsio berri bat eskuragarri dago.</p><p><b>%2</b> deskargatzeko eskuragarri dago. Instalatutako bertsioa %3 da.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -958,8 +957,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - %1 Bertsio berria eskuragarri dago. Mesedez erabili sistemako eguneraketa tresna instalatzeko. + New version %1 available. Please use the system's update tool to install it. + @@ -1072,7 +1071,7 @@ It is not advisable to use it. Konexioak huts egin du - + Update %1 server Eguneratu %1 zerbitzaria @@ -1080,126 +1079,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Karpetaren berrizendatzeak huts egin du - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Bertako sinkronizazio %1 karpeta ongi sortu da!</b></font> - + Trying to connect to %1 at %2... %2 zerbitzarian dagoen %1 konektatzen... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Konexioa ongi burutu da %1 zerbitzarian: %2 bertsioa %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Errorea: Kredentzial okerrak. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Bertako %1 karpeta dagoeneko existitzen da, sinkronizaziorako prestatzen.<br/><br/> - + Creating local sync folder %1... Bertako sinkronizazio %1 karpeta sortzen... - + ok ados - + failed. huts egin du. - + Could not create local folder %1 Ezin da %1 karpeta lokala sortu - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! Ez da urruneko karpeta zehaztu! - + Error: %1 Errorea: %1 - + creating folder on ownCloud: %1 ownClouden karpeta sortzen: %1 - + Remote folder %1 created successfully. Urruneko %1 karpeta ongi sortu da. - + The remote folder %1 already exists. Connecting it for syncing. Urruneko %1 karpeta dagoeneko existintzen da. Bertara konetatuko da sinkronizatzeko. - - + + The folder creation resulted in HTTP error code %1 Karpeta sortzeak HTTP %1 errore kodea igorri du - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Urruneko karpeten sortzeak huts egin du ziuraski emandako kredentzialak gaizki daudelako.</font><br/>Mesedez atzera joan eta egiaztatu zure kredentzialak.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Urruneko %1 karpetaren sortzeak huts egin du <tt>%2</tt> errorearekin. - + A sync connection from %1 to remote directory %2 was set up. Sinkronizazio konexio bat konfiguratu da %1 karpetatik urruneko %2 karpetara. - + Successfully connected to %1! %1-era ongi konektatu da! - + Connection to %1 could not be established. Please check again. %1 konexioa ezin da ezarri. Mesedez egiaztatu berriz. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1207,7 +1206,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Konexio Morroia @@ -1251,12 +1250,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sinkronizazioa erabiltzaileak bertan behera utzi du - + No E-Tag received from server, check Proxy/Gateway Ez da E-Tagik jaso zerbitzaritik, egiaztatu Proxy/Gateway @@ -1266,7 +1265,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1274,7 +1278,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1282,7 +1286,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1290,12 +1299,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 Ezin izan da %1 karpeta sortu @@ -1316,7 +1325,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1324,7 +1333,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1332,17 +1341,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Karpeta hau ezin da berrizendatu. Bere jatorrizko izenera berrizendatu da. - + This folder must not be renamed. Please name it back to Shared. Karpeta hau ezin da berrizendatu. Mesedez jarri berriz Shared izena. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1369,22 +1378,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1412,62 +1421,62 @@ It is not advisable to use it. 4 - + Time Noiz - + File Fitxategia - + Folder Karpeta - + Action Ekintza - + Size Tamaina - + Retry Sync Saiatu berriz sinkronizatzen - + Copy Kopiatu - + Copy the activity list to the clipboard. - + Copied to clipboard Arbelera kopiatua - + The sync status has been copied to the clipboard. Sinkronizazio egoera arbelera kopiatu da. - + Currently no files are ignored because of previous errors. Oraintxe ez da fitxategirik baztertzen aurreko erroreak direla eta. - + %1 files are ignored because of previous errors. Try to sync these again. %1 fitxategi baztertu dira aurreko erroreak direla eta. @@ -1510,27 +1519,27 @@ Saiatu horiek berriz sinkronizatzen. Mirall::SettingsDialogMac - + %1 %1 - + Account Kontua - + Activity Jarduera - + General Orokorra - + Network Sarea @@ -1538,12 +1547,12 @@ Saiatu horiek berriz sinkronizatzen. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1551,22 +1560,22 @@ Saiatu horiek berriz sinkronizatzen. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 %1 - %2 @@ -1768,158 +1777,158 @@ Saiatu horiek berriz sinkronizatzen. Mirall::SyncEngine - + Success. Arrakasta. - + CSync failed to create a lock file. CSyncek huts egin du lock fitxategia sortzean. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>csyncen %1 plugina ezin da kargatu.<br/>Mesedez egiaztatu instalazioa!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Bezero honetako sistemaren ordua zerbitzariarenaren ezberdina da. Mesedez erabili sinkronizazio zerbitzari bat (NTP) zerbitzari eta bezeroan orduak berdinak izan daitezen. - + CSync could not detect the filesystem type. CSyncek ezin du fitxategi sistema mota antzeman. - + CSync got an error while processing internal trees. CSyncek errorea izan du barne zuhaitzak prozesatzerakoan. - + CSync failed to reserve memory. CSyncek huts egin du memoria alokatzean. - + CSync fatal parameter error. CSync parametro larri errorea. - + CSync processing step update failed. CSync prozesatzearen eguneratu urratsak huts egin du. - + CSync processing step reconcile failed. CSync prozesatzearen berdinkatze urratsak huts egin du. - + CSync processing step propagate failed. CSync prozesatzearen hedatu urratsak huts egin du. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Helburu direktorioa ez da existitzen.</p><p>Egiazt6atu sinkronizazio konfigurazioa.</p> - + A remote file can not be written. Please check the remote access. Urruneko fitxategi bat ezin da idatzi. Mesedez egiaztatu urreneko sarbidea. - + The local filesystem can not be written. Please check permissions. Ezin da idatzi bertako fitxategi sisteman. Mesedez egiaztatu baimenak. - + CSync failed to connect through a proxy. CSyncek huts egin du proxiaren bidez konektatzean. - + CSync could not authenticate at the proxy. CSyncek ezin izan du proxya autentikatu. - + CSync failed to lookup proxy or server. CSyncek huts egin du zerbitzaria edo proxia bilatzean. - + CSync failed to authenticate at the %1 server. CSyncek huts egin du %1 zerbitzarian autentikatzean. - + CSync failed to connect to the network. CSyncek sarera konektatzean huts egin du. - - A network connection timeout happend. - Sarearen konexioan denbora-muga gertatu da. + + A network connection timeout happened. + - + A HTTP transmission error happened. HTTP transmisio errore bat gertatu da. - + CSync failed due to not handled permission deniend. CSyncek huts egin du kudeatu gabeko baimen ukapen bat dela eta. - + CSync failed to access - + CSync tried to create a directory that already exists. CSyncek dagoeneko existitzen zen karpeta bat sortzen saiatu da. - - + + CSync: No space on %1 server available. CSync: Ez dago lekurik %1 zerbitzarian. - + CSync unspecified error. CSyncen zehaztugabeko errorea. - + Aborted by the user Erabiltzaileak bertan behera utzita - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1939,15 +1948,61 @@ Saiatu horiek berriz sinkronizatzen. - + Unable to initialize a sync journal. Ezin izan da sinkronizazio egunerokoa hasieratu. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1960,7 +2015,7 @@ Saiatu horiek berriz sinkronizatzen. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>%1 Bertsioa, informazio gehiago eskuratzeko ikusi <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p> %4-k GNU General Public License (GPL) 2.0 bertsioaren lizentziapean banatuta.<br>%5 eta %5 logoa %4ren marka erregistratuak dira <br>Amerikako Estatu Batuetan, beste herrialdeetan edo bietan.</p> @@ -1968,47 +2023,47 @@ Saiatu horiek berriz sinkronizatzen. Mirall::ownCloudGui - + Please sign in Mesedez saioa hasi - + Disconnected from server - + Folder %1: %2 - + No sync folders configured. Ez dago sinkronizazio karpetarik definituta. - + None. Bat ere ez. - + Recent Changes Azkenengo Aldaketak - + Open %1 folder Ireki %1 karpeta - + Managed Folders: Kudeatutako karpetak: - + Open folder '%1' Ireki '%1' karpeta @@ -2292,27 +2347,27 @@ Saiatu horiek berriz sinkronizatzen. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2333,7 +2388,7 @@ Saiatu horiek berriz sinkronizatzen. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! ownCloud zerbitzaririk ez baduzu, ikusi <a href="https://owncloud.com">owncloud.com</a> informazio gehiago eskuratzeko. @@ -2342,12 +2397,12 @@ Saiatu horiek berriz sinkronizatzen. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>%2 Bertsioa, informazio gehiago eskuratzeko ikusi <a href="%3">%4</a></p><p><small>Egileak: Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br> Duncan Mac-Vicar P.-ek egindako Mirall programan oinarrituta</small></p>%7 @@ -2436,57 +2491,57 @@ Saiatu horiek berriz sinkronizatzen. theme - + Status undefined Definitu gabeko egoera - + Waiting to start sync Itxoiten sinkronizazioaren hasiera - + Sync is running Sinkronizazioa martxan da - + Sync Success Sinkronizazioa ongi burutu da - + Sync Success, some files were ignored. Sinkronizazioa ongi burutu da, fitxategi batzuk baztertu dira. - + Sync Error Sinkronizazio Errorea - + Setup Error Konfigurazio Errorea - + The server is currently unavailable Zerbitzaria orain ez dago eskuragarri. - + Preparing to sync Sinkronizazioa prestatzen - + Aborting... Bertan-behera uzten - + Sync is paused Sinkronizazioa pausatuta dago diff --git a/translations/mirall_fa.ts b/translations/mirall_fa.ts index b095373a0..da4f3219e 100644 --- a/translations/mirall_fa.ts +++ b/translations/mirall_fa.ts @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. - + Sync Running همگام سازی در حال اجراست @@ -175,34 +175,34 @@ - + The syncing operation is running.<br/>Do you want to terminate it? عملیات همگام سازی در حال اجراست.<br/>آیا دوست دارید آن را متوقف کنید؟ - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + The provided credentials are not correct @@ -261,116 +261,110 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. پوشه محلی %1 موجود نیست. - + %1 should be a directory but is not. %1 باید یک پوشه باشد اما نیست. - + %1 is not readable. %1 قابل خواندن نیست. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -378,67 +372,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state نمی تواند حالت پوشه را تنظیم مجدد کند - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. موقعیت تعریف نشده - + Waits to start syncing. صبر کنید تا همگام سازی آغاز شود - + Preparing for sync. - + Sync is running. همگام سازی در حال اجراست - + Server is currently not available. - + Last Sync was successful. آخرین همگام سازی موفقیت آمیز بود - + Last Sync was successful, but with warnings on individual files. - + Setup Error. خطا در پیکر بندی. - + User Abort. - + Sync is paused. همگام سازی فعلا متوقف شده است - + %1 (Sync is paused) @@ -465,8 +459,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder ایجاد پوشه @@ -542,42 +536,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder - + Enter the name of the new folder: - + Folder was successfully created on %1. پوشه با موفقیت ایجاد شده است %1. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -594,17 +588,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,7 +617,7 @@ Are you sure you want to perform this operation? - General Setttings + General Settings @@ -656,12 +655,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password - + Please enter %1 password for user '%2': @@ -801,8 +800,8 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>یک نسخه جدید از %1 نرم افزار در دسترس است. </p><p><b>%2</b> برای دریافت در دسترس است. نسخه نصب شده %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -956,7 +955,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1070,7 +1069,7 @@ It is not advisable to use it. - + Update %1 server @@ -1078,126 +1077,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed تغییر نام پوشه ناموفق بود - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b> پوشه همگام سازی محلی %1 با موفقیت ساخته شده است!</b></font> - + Trying to connect to %1 at %2... تلاش برای اتصال %1 به %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green"> با موفقیت متصل شده است به %1: %2 نسخه %3 (%4)</font><br/><br/> - + Error: Wrong credentials. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> پوشه همگام سازی محلی %1 در حال حاضر موجود است، تنظیم آن برای همگام سازی. <br/><br/> - + Creating local sync folder %1... ایجاد پوشه همگام سازی محلی %1... - + ok خوب - + failed. ناموفق. - + Could not create local folder %1 نمی تواند پوشه محلی ایجاد کند %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 خطا: %1 - + creating folder on ownCloud: %1 ایجاد کردن پوشه بر روی ownCloud: %1 - + Remote folder %1 created successfully. پوشه از راه دور %1 با موفقیت ایجاد شده است. - + The remote folder %1 already exists. Connecting it for syncing. در حال حاضر پوشه از راه دور %1 موجود است. برای همگام سازی به آن متصل شوید. - - + + The folder creation resulted in HTTP error code %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> ایجاد پوشه از راه دور ناموفق بود به علت اینکه اعتبارهای ارائه شده اشتباه هستند!<br/>لطفا اعتبارهای خودتان را بررسی کنید.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red"> ایجاد پوشه از راه دور ناموفق بود، شاید به علت اعتبارهایی که ارئه شده اند، اشتباه هستند.</font><br/> لطفا باز گردید و اعتبار خود را بررسی کنید.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. ایجاد پوشه از راه دور %1 ناموفق بود با خطا <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. یک اتصال همگام سازی از %1 تا %2 پوشه از راه دور راه اندازی شد. - + Successfully connected to %1! با موفقیت به %1 اتصال یافت! - + Connection to %1 could not be established. Please check again. اتصال به %1 نمی تواند مقرر باشد. لطفا دوباره بررسی کنید. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1205,7 +1204,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard @@ -1249,12 +1248,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1264,7 +1263,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1272,7 +1276,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1280,7 +1284,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1288,12 +1297,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1314,7 +1323,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1322,7 +1331,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1330,17 +1339,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1367,22 +1376,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1410,62 +1419,62 @@ It is not advisable to use it. - + Time زمان - + File - + Folder پوشه - + Action - + Size اندازه - + Retry Sync - + Copy کپی کردن - + Copy the activity list to the clipboard. - + Copied to clipboard کپی به کلیپ بورد - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1507,27 +1516,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 - + Account حساب کاربری - + Activity قعالیت - + General عمومی - + Network @@ -1535,12 +1544,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1548,22 +1557,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 @@ -1765,158 +1774,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. موفقیت - + CSync failed to create a lock file. CSync موفق به ایجاد یک فایل قفل شده، نشد. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>ماژول %1 برای csync نمی تواند بارگذاری شود.<br/>لطفا نصب را بررسی کنید!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. سیستم زمان بر روی این مشتری با سیستم زمان بر روی سرور متفاوت است.لطفا از خدمات هماهنگ سازی زمان (NTP) بر روی ماشین های سرور و کلاینت استفاده کنید تا زمان ها یکسان باقی بمانند. - + CSync could not detect the filesystem type. CSync نوع فایل های سیستم را نتوانست تشخیص بدهد. - + CSync got an error while processing internal trees. CSync هنگام پردازش درختان داخلی یک خطا دریافت نمود. - + CSync failed to reserve memory. CSync موفق به رزرو حافظه نشد است. - + CSync fatal parameter error. - + CSync processing step update failed. مرحله به روز روسانی پردازش CSync ناموفق بود. - + CSync processing step reconcile failed. مرحله تطبیق پردازش CSync ناموفق بود. - + CSync processing step propagate failed. مرحله گسترش پردازش CSync ناموفق بود. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>پوشه هدف وجود ندارد.</p><p>لطفا راه اندازی همگام سازی را بررسی کنید.</p> - + A remote file can not be written. Please check the remote access. یک فایل از راه دور نمی تواند نوشته شود. لطفا دسترسی از راه دور را بررسی نمایید. - + The local filesystem can not be written. Please check permissions. بر روی فایل سیستمی محلی نمی توانید چیزی بنویسید.لطفا مجوزش را بررسی کنید. - + CSync failed to connect through a proxy. عدم موفقیت CSync برای اتصال از طریق یک پروکسی. - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. عدم موفقیت CSync برای مراجعه به پروکسی یا سرور. - + CSync failed to authenticate at the %1 server. عدم موفقیت CSync برای اعتبار دادن در %1 سرور. - + CSync failed to connect to the network. عدم موفقیت CSync برای اتصال به شبکه. - - A network connection timeout happend. - اتصال به یک شبکه متوقف شده است. + + A network connection timeout happened. + - + A HTTP transmission error happened. خطا در انتقال HTTP اتفاق افتاده است. - + CSync failed due to not handled permission deniend. - + CSync failed to access - + CSync tried to create a directory that already exists. CSync برای ایجاد یک پوشه که در حال حاضر موجود است تلاش کرده است. - - + + CSync: No space on %1 server available. CSync: فضا در %1 سرور در دسترس نیست. - + CSync unspecified error. خطای نامشخص CSync - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1936,15 +1945,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1957,7 +2012,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1965,47 +2020,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in - + Disconnected from server - + Folder %1: %2 پوشه %1: %2 - + No sync folders configured. هیچ پوشه ای همگام سازی شده‌ای تنظیم نشده است - + None. - + Recent Changes - + Open %1 folder بازکردن %1 پوشه - + Managed Folders: پوشه های مدیریت شده: - + Open folder '%1' @@ -2289,27 +2344,27 @@ It is not advisable to use it. Utility - + %L1 TB - + %L1 GB - + %L1 MB - + %L1 kB - + %L1 B @@ -2330,7 +2385,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! اگر شما هنوز یک سرور ownCloud ندارید، <a href="https://owncloud.com">owncloud.com</a> را برای اطلاعات بیشتر ببینید. @@ -2339,12 +2394,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2433,57 +2488,57 @@ It is not advisable to use it. theme - + Status undefined - + Waiting to start sync - + Sync is running - + Sync Success - + Sync Success, some files were ignored. - + Sync Error - + Setup Error - + The server is currently unavailable - + Preparing to sync - + Aborting... - + Sync is paused diff --git a/translations/mirall_fi.ts b/translations/mirall_fi.ts index 56cb91d43..b16690c28 100644 --- a/translations/mirall_fi.ts +++ b/translations/mirall_fi.ts @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) / %2 palvelimen tilasta käytössä. - + No connection to %1 at <a href="%2">%3</a>. - + Ei yhteyttä %1iin osoitteessa <a href="%2">%3</a>. - + No %1 connection configured. %1-yhteyttä ei ole määritelty. - + Sync Running Synkronointi meneillään @@ -175,35 +175,35 @@ Tiliä ei ole määritelty. - + The syncing operation is running.<br/>Do you want to terminate it? Synkronointioperaatio on meneillään.<br/>Haluatko keskeyttää sen? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3/%4) %5 jäljellä nopeudella %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1/%2, tiedosto %3/%4 Aikaa jäljellä yhteensä %5 - + Connected to <a href="%1">%2</a>. Muodosta yhteys - <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Yhdistetty kohteeseen <a href="%1">%2</a> käyttäjänä <i>%3</i>. - + Currently there is no storage usage information available. Tallennustilan käyttötietoja ei ole juuri nyt saatavilla. @@ -234,27 +234,27 @@ Aikaa jäljellä yhteensä %5 Mirall::ConnectionValidator - + No ownCloud account configured ownCloud-tiliä ei ole määritelty - + The configured server for this client is too old Määritelty palvelin on ohjelmistoversioltaan liian vanha tälle asiakasohjelmistolle - + Please update to the latest server and restart the client. Päivitä uusimpaan palvelinversioon ja käynnistä asiakasohjelmisto uudelleen. - + Unable to connect to %1 Yhteys %1iin epäonnistui - + The provided credentials are not correct Annetut tilitiedot eivät ole oikein @@ -262,116 +262,110 @@ Aikaa jäljellä yhteensä %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. Paikallista kansiota %1 ei ole olemassa. - + %1 should be a directory but is not. Kohteen %1 pitäisi olla kansio, mutta se ei kuitenkaan ole kansio. - + %1 is not readable. %1 ei ole luettavissa. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 ja %2 muuta tiedostoa on poistettu. - + %1 has been removed. %1 names a file. %1 on poistettu. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 ja %2 muuta tiedostoa on ladattu. - + %1 has been downloaded. %1 names a file. %1 on ladattu. - + %1 and %2 other files have been updated. - + %1 ja %2 muuta tiedostoa on päivitetty. - + %1 has been updated. %1 names a file. %1 on päivitetty. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. %1 on nimetty uudeelleen muotoon %2. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 on siirretty kohteeseen %2. - + Sync Activity Synkronointiaktiviteetti - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? Poistetaanko kaikki tiedostot? - + Remove all files Poista kaikki tiedostot - + Keep files Säilytä tiedostot @@ -379,67 +373,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state Kansion tilaa ei voitu alustaa - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. Määrittelemätön tila. - + Waits to start syncing. Odottaa synkronoinnin alkamista. - + Preparing for sync. Valmistellaan synkronointia. - + Sync is running. Synkronointi on meneillään. - + Server is currently not available. Palvelin ei ole käytettävissä. - + Last Sync was successful. Viimeisin synkronointi suoritettiin onnistuneesti. - + Last Sync was successful, but with warnings on individual files. Viimeisin synkronointi onnistui, mutta yksittäisten tiedostojen kanssa ilmeni varoituksia. - + Setup Error. Asetusvirhe. - + User Abort. - + Sync is paused. Synkronointi on keskeytetty. - + %1 (Sync is paused) %1 (Synkronointi on keskeytetty) @@ -466,8 +460,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Lisää kansio @@ -543,42 +537,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder Lisää etäkansio - + Enter the name of the new folder: Anna uuden kansion nimi: - + Folder was successfully created on %1. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account Valitse tämä synkronoidaksesi koko tilin - + This folder is already being synced. Tätä kansiota synkronoidaan jo. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Synkronoit jo kansiota <i>%1</i>, ja se on kansion <i>%2</i> yläkansio. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -595,17 +589,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout Yhteys aikakatkaistiin @@ -619,8 +618,8 @@ Are you sure you want to perform this operation? - General Setttings - Yleiset asetukset + General Settings + Yleisasetukset @@ -657,12 +656,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password Anna salasana - + Please enter %1 password for user '%2': Anna käyttäjän '%2' %1-salasana: @@ -802,8 +801,8 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Uusi versio %1-asiakassovelluksesta on saatavilla.</p><p><b>%2</b> on valmiina ladattavaksi. Tällä hetkellä asennettu versio on %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Uusi versio %1-asiakasohjelmistosta on saatavilla.</p><p><b>%2</b> on ladattavissa. Asennettu versio on %3.</p> @@ -958,8 +957,8 @@ saattaa kysyä lisäoikeuksia toimenpiteen aikana. - New version %1 available. Please use the systems update tool to install it. - Uusi versio %1 on saatavilla. Käytä järjestelmän päivitystyökalua asentaaksesi sen. + New version %1 available. Please use the system's update tool to install it. + Uusi versio %1 on saatavilla. Käytä järjestelmän päivitystyökalua sen asennusta varten. @@ -1073,7 +1072,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Yhteys epäonnistui - + Update %1 server Päivitä %1-palvelin @@ -1081,126 +1080,126 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::OwncloudSetupWizard - + Folder rename failed Kansion nimen muuttaminen epäonnistui - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Paikallinen synkronointikansio %1 luotu onnistuneesti!</b></font> - + Trying to connect to %1 at %2... Yritetään yhdistetää palvelimeen %1 portissa %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Muodostettu yhteys onnistuneesti kohteeseen %1: %2 versio %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Virhe: väärät tilitiedot. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Paikallinen kansio %1 on jo olemassa, asetetaan se synkronoitavaksi.<br/><br/> - + Creating local sync folder %1... Luodaan paikallista synkronointikansiota %1... - + ok ok - + failed. epäonnistui. - + Could not create local folder %1 Paikalliskansion %1 luonti epäonnistui - - + + Failed to connect to %1 at %2:<br/>%3 Yhteys %1iin osoitteessa %2 epäonnistui:<br/>%3 - + No remote folder specified! Etäkansiota ei määritelty! - + Error: %1 Virhe: %1 - + creating folder on ownCloud: %1 luodaan kansio ownCloudiin: %1 - + Remote folder %1 created successfully. Etäkansio %1 luotiin onnistuneesti. - + The remote folder %1 already exists. Connecting it for syncing. Etäkansio %1 on jo olemassa. Otetaan siihen yhteyttä tiedostojen täsmäystä varten. - - + + The folder creation resulted in HTTP error code %1 Kansion luonti aiheutti HTTP-virhekoodin %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Etäkansion luominen epäonnistui koska antamasi tunnus/salasana ei täsmää!<br/>Ole hyvä ja palaa tarkistamaan tunnus/salasana</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Pilvipalvelun etäkansion luominen ei onnistunut , koska tunnistautumistietosi ovat todennäköisesti väärin.</font><br/>Palaa takaisin ja tarkista käyttäjätunnus ja salasana.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Etäkansion %1 luonti epäonnistui, virhe <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Täsmäysyhteys kansiosta %1 etäkansioon %2 on asetettu. - + Successfully connected to %1! Yhteys kohteeseen %1 muodostettiin onnistuneesti! - + Connection to %1 could not be established. Please check again. Yhteyttä osoitteeseen %1 ei voitu muodostaa. Ole hyvä ja tarkista uudelleen. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1208,7 +1207,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::OwncloudWizard - + %1 Connection Wizard %1-yhteysavustaja @@ -1252,12 +1251,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + Synkronointi peruttiin käyttäjän toimesta. - + No E-Tag received from server, check Proxy/Gateway @@ -1267,7 +1266,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1275,7 +1279,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1283,7 +1287,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1291,12 +1300,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 kansion %1 luominen epäonnistui @@ -1317,7 +1326,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1325,7 +1334,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1333,17 +1342,17 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Tätä kansiota ei ole tule nimetä uudelleen. Muutetaan takaisin alkuperäinen nimi. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1359,7 +1368,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Sync was aborted by user. - + Synkronointi peruttiin käyttäjän toimesta. @@ -1370,22 +1379,22 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. Paikallinen tiedosto poistettiin synkronoinnin aikana. - + Local file changed during sync. Paikallinen tiedosto muuttui synkronoinnin aikana. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1413,62 +1422,62 @@ Osoitteen käyttäminen ei ole suositeltavaa. 4 - + Time Aika - + File Tiedosto - + Folder Kansio - + Action Toiminto - + Size Koko - + Retry Sync Yritä uudelleen synkronointia - + Copy Kopioi - + Copy the activity list to the clipboard. - + Copied to clipboard Kopioitu leikepöydälle - + The sync status has been copied to the clipboard. Synkronointitila on kopioitu leikepöydälle. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1510,27 +1519,27 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::SettingsDialogMac - + %1 %1 - + Account Tili - + Activity Toimet - + General Yleiset - + Network Verkko @@ -1538,12 +1547,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::ShibbolethCredentials - + Login Error Kirjautumisvirhe - + You must sign in as user %1 Kirjaudu käyttäjänä %1 @@ -1551,22 +1560,22 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Tunnistaudu - + Reauthentication required Tunnistaudu uudelleen - + Your session has expired. You need to re-login to continue to use the client. Istunto on vanhentunut. Kirjaudu uudelleen jatkaaksesi sovelluksen käyttämistä. - + %1 - %2 %1 - %2 @@ -1770,158 +1779,158 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::SyncEngine - + Success. Onnistui. - + CSync failed to create a lock file. Csync ei onnistunut luomaan lukitustiedostoa. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>%1-liitännäistä csyncia varten ei voitu ladata.<br/>Varmista asennuksen toimivuus!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Tämän koneen järjestelmäaika on erilainen verrattuna palvelimen aikaan. Käytä NTP-palvelua kummallakin koneella, jotta kellot pysyvät samassa ajassa. Muuten tiedostojen synkronointi ei toimi. - + CSync could not detect the filesystem type. Csync-synkronointipalvelu ei kyennyt tunnistamaan tiedostojärjestelmän tyyppiä. - + CSync got an error while processing internal trees. Csync-synkronointipalvelussa tapahtui virhe sisäisten puurakenteiden prosessoinnissa. - + CSync failed to reserve memory. CSync ei onnistunut varaamaan muistia. - + CSync fatal parameter error. - + CSync processing step update failed. - + CSync processing step reconcile failed. - + CSync processing step propagate failed. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Kohdekansiota ei ole olemassa.</p><p>Tarkasta synkronointiasetuksesi.</p> - + A remote file can not be written. Please check the remote access. Etätiedostoa ei pystytä kirjoittamaan. Tarkista, että etäpääsy toimii. - + The local filesystem can not be written. Please check permissions. Paikalliseen tiedostojärjestelmään kirjoittaminen epäonnistui. Tarkista kansion oikeudet. - + CSync failed to connect through a proxy. CSync ei onnistunut muodostamaan yhteyttä välityspalvelimen välityksellä. - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. - + CSync failed to authenticate at the %1 server. - + CSync failed to connect to the network. CSync ei onnistunut yhdistämään verkkoon. - - A network connection timeout happend. - Verkon aikakatkaisuvirhe. + + A network connection timeout happened. + Tapahtui verkon aikakatkaisu. - + A HTTP transmission error happened. Tapahtui HTTP-välitysvirhe. - + CSync failed due to not handled permission deniend. - + CSync failed to access - + CSync tried to create a directory that already exists. CSync yritti luoda olemassa olevan kansion. - - + + CSync: No space on %1 server available. CSync: %1-palvelimella ei ole tilaa vapaana. - + CSync unspecified error. CSync - määrittämätön virhe. - + Aborted by the user - + An internal error number %1 happened. Ilmeni sisäinen virhe, jonka numero on %1. - + The item is not synced because of previous errors: %1 Kohdetta ei synkronoitu aiempien virheiden vuoksi: %1 @@ -1941,15 +1950,61 @@ Osoitteen käyttäminen ei ole suositeltavaa. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + Ei sallittu, koska sinulla ei ole oikeutta lisätä tiedostoja kyseiseen kansioon + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + Poistaminen ei ole sallittua, palautetaan + + + + Move not allowed, item restored + Siirtäminen ei ole sallittua, kohde palautettu + + + + Move not allowed because %1 is read-only + Siirto ei ole sallittu, koska %1 on "vain luku"-tilassa + + + + the destination + kohde + + + + the source + lähde + Mirall::Systray @@ -1962,7 +2017,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1970,47 +2025,47 @@ Osoitteen käyttäminen ei ole suositeltavaa. Mirall::ownCloudGui - + Please sign in Kirjaudu sisään - + Disconnected from server Yhteys palvelimeen katkaistu - + Folder %1: %2 Kansio %1: %2 - + No sync folders configured. Synkronointikansioita ei ole määritetty. - + None. - + Recent Changes Viimeisimmät muutokset - + Open %1 folder Avaa %1-kansio - + Managed Folders: Hallitut kansiot: - + Open folder '%1' Avaa kansio '%1' @@ -2294,27 +2349,27 @@ Osoitteen käyttäminen ei ole suositeltavaa. Utility - + %L1 TB %L1 Tt - + %L1 GB %L1 Gt - + %L1 MB %L1 Mt - + %L1 kB %L1 kt - + %L1 B %L1 t @@ -2335,7 +2390,7 @@ Osoitteen käyttäminen ei ole suositeltavaa. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Jos käytössäsi ei ole vielä ownCloud-palvelinta, lue lisätietoja osoitteessa <a href="https://owncloud.com">owncloud.com</a>. @@ -2344,12 +2399,12 @@ Osoitteen käyttäminen ei ole suositeltavaa. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versio %2. Lisätietoja osoitteessa <a href="%3">%4</a></p><p><small>Tehnyt Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Pohjautuu Duncan Mac-Vicar P:n Miralliin</small></p>%7 @@ -2438,57 +2493,57 @@ Osoitteen käyttäminen ei ole suositeltavaa. theme - + Status undefined Tila on määrittelemätön. - + Waiting to start sync Odotetaan synkronoinnin käynnistymistä - + Sync is running Synkronointi meneillään - + Sync Success Synkronointi valmistui - + Sync Success, some files were ignored. Synkronointi onnistui, jotkin tiedostot ohitettiin. - + Sync Error Synkronointivirhe - + Setup Error Asetusvirhe. - + The server is currently unavailable Palvelin ei ole juuri nyt tavoitettavissa - + Preparing to sync Valmistaudutaan synkronointiin - + Aborting... - + Sync is paused Synkronointi on keskeytetty diff --git a/translations/mirall_fr.ts b/translations/mirall_fr.ts index d80fdc063..9f6b3e974 100644 --- a/translations/mirall_fr.ts +++ b/translations/mirall_fr.ts @@ -144,28 +144,28 @@ <p>Voulez-vous réellement réinitialiser le dossier <i>%1</i> et reconstruire votre base de données cliente ?</p><p><b>Note :</b> Cette fonctionnalité existe pour des besoins de maintenance uniquement. Aucun fichier ne sera supprimé, mais cela peut causer un trafic de données conséquent et peut durer de plusieurs minutes à plusieurs heures, en fonction de la taille du dossier. Utilisez cette option uniquement sur avis de votre administrateur.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) de %2 d'espace utilisé sur le serveur. - + No connection to %1 at <a href="%2">%3</a>. Aucune connexion à %1 à <a href="%2">%3</a>. - + No %1 connection configured. Aucune connexion à %1 configurée - + Sync Running Synchronisation en cours @@ -175,34 +175,35 @@ Aucun compte configuré. - + The syncing operation is running.<br/>Do you want to terminate it? La synchronisation est en cours.<br/>Voulez-vous y mettre un terme? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 de %4) %5 restant à un débit de %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + %1 de %2, fichier %3 de %4 +Temps restant total %5 - + Connected to <a href="%1">%2</a>. Connecté à <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Connecté à <a href="%1">%2</a> en tant que <i>%3</i>. - + Currently there is no storage usage information available. Actuellement aucune information d'utilisation de stockage n'est disponible. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Aucun compte ownCloud configuré - + The configured server for this client is too old Le serveur configuré pour ce client est trop vieux - + Please update to the latest server and restart the client. Veuillez mettre à jour avec la dernière version du serveur et redémarrer le client. - + Unable to connect to %1 Impossible de se connecter à %1 - + The provided credentials are not correct Les informations d'identification fournies ne sont pas correctes @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Impossible de créer le contexte csync - + Local folder %1 does not exist. Le dossier local %1 n'existe pas. - + %1 should be a directory but is not. %1 doit être un répertoire, mais ce n'en ai pas un. - + %1 is not readable. %1 ne peut pas être lu. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 et %2 autres fichiers ont été supprimés. - + %1 has been removed. %1 names a file. %1 a été supprimé. - + %1 and %2 other files have been downloaded. %1 names a file. %1 et %2 autres fichiers ont été téléchargés. - + %1 has been downloaded. %1 names a file. %1 a été téléchargé. - + %1 and %2 other files have been updated. %1 et %2 autres fichiers ont été mis à jour. - + %1 has been updated. %1 names a file. %1 a été mis à jour. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 a été renommé en %2 et %3 autres fichiers ont été renommés. - + %1 has been renamed to %2. %1 and %2 name files. %1 a été renommé en %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 a été déplacé vers %2 et %3 autres fichiers ont été déplacés. - + %1 has been moved to %2. %1 a été déplacé vers %2. - + Sync Activity Activité de synchronisation - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Cette synchronisation supprimerait tous les fichiers du dossier local de synchronisation '%1'. -Si vous-même ou votre administrateur avez réinitialisé votre compte sur le serveur, choisissez "Garder les fichiers". Si vous voulez que vos données soient supprimées, choisissez "Supprimer tous les fichiers". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Cela est peut-être du à une reconfiguration silencieuse du dossier, ou parce q Voulez-vous réellement effectuer cette opération ? - + Remove All Files? Supprimer tous les fichiers ? - + Remove all files Supprimer tous les fichiers - + Keep files Garder les fichiers @@ -381,67 +375,67 @@ Voulez-vous réellement effectuer cette opération ? Mirall::FolderMan - + Could not reset folder state Impossible de réinitialiser l'état du dossier - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Une synchronisation antérieure du journal de %1 a été trouvée, mais ne peut être supprimée. Veuillez vous assurer qu’aucune application n'est utilisée en ce moment. - + Undefined State. Statut indéfini. - + Waits to start syncing. En attente de synchronisation. - + Preparing for sync. Préparation de la synchronisation. - + Sync is running. La synchronisation est en cours. - + Server is currently not available. Le serveur est indisponible actuellement. - + Last Sync was successful. Dernière synchronisation effectuée avec succès - + Last Sync was successful, but with warnings on individual files. La dernière synchronisation s'est achevée avec succès mais avec des messages d'avertissement sur des fichiers individuels. - + Setup Error. Erreur d'installation. - + User Abort. Abandon par l'utilisateur. - + Sync is paused. La synchronisation est en pause. - + %1 (Sync is paused) %1 (Synchronisation en pause) @@ -468,8 +462,8 @@ Voulez-vous réellement effectuer cette opération ? Mirall::FolderWizard - - + + Add Folder Ajouter le dossier @@ -545,42 +539,42 @@ Voulez-vous réellement effectuer cette opération ? Mirall::FolderWizardRemotePath - + Add Remote Folder Ajouter un dossier distant - + Enter the name of the new folder: Saisissez le nom du nouveau dossier : - + Folder was successfully created on %1. Le dossier a été créé sur %1 - + Failed to create the folder on %1. Please check manually. Échec à la création du dossier sur %1. Veuillez vérifier manuellement. - + Choose this to sync the entire account Sélectionner ceci pour synchroniser l'ensemble du compte - + This folder is already being synced. Ce dossier est déjà en cours de synchronisation. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Vous synchronisez déja <i>%1</i>, qui est un dossier parent de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Vous êtes déjà en cours de synchronisation de tous vos fichiers. Synchroniser un autre dossier n'est <b>pas</b> possible actuellement. Si vous voulez synchroniser de multiples dossiers, veuillez supprimer la synchronisation en cours du dossier racine. @@ -597,17 +591,22 @@ Voulez-vous réellement effectuer cette opération ? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Aucun E-Tag reçu du serveur, vérifiez le proxy / la passerelle - + We received a different E-Tag for resuming. Retrying next time. Nous avons reçu un E-Tag différent pour reprendre le téléchargement. Nouvel essai la prochaine fois. - + + Server returned wrong content-range + + + + Connection Timeout Temps de connexion expiré @@ -621,8 +620,8 @@ Voulez-vous réellement effectuer cette opération ? - General Setttings - Paramètres Généraux + General Settings + Paramètres généraux @@ -659,12 +658,12 @@ Voulez-vous réellement effectuer cette opération ? Mirall::HttpCredentials - + Enter Password Entrez le mot de passe - + Please enter %1 password for user '%2': Veuillez entrer %1 mot de passe pour l'utilisateur '%2': @@ -806,8 +805,8 @@ Les items cochés seront également supprimés s'ils empêchent la suppress - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Une nouvelle version du client de synchronisation %1 est disponible.</p><p><b>%2</b> est disponible au téléchargement. La version installée est %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -962,8 +961,8 @@ peut demander des privilèges additionnels durant le processus. - New version %1 available. Please use the systems update tool to install it. - Nouvelle version %1 disponible. Merci d'utiliser les outils de mise à jour système pour l'installer. + New version %1 available. Please use the system's update tool to install it. + La nouvelle version %1 est disponible. Veuillez utiliser l'utilitaire de mise à jour système afin de l'installer. @@ -1077,7 +1076,7 @@ Il est déconseillé de l'utiliser. Échec de la connexion - + Update %1 server Mettre à jour le serveur %1 @@ -1085,126 +1084,126 @@ Il est déconseillé de l'utiliser. Mirall::OwncloudSetupWizard - + Folder rename failed Echec du renommage du dossier - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Dossier de synchronisation local %1 créé avec succès !</b></font> - + Trying to connect to %1 at %2... Tentative de connexion de %1 à %2 ... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Connecté avec succès à %1: %2 version %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Erreur : paramètres de connexion invalides. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Le dossier de synchronisation local %1 existe déjà, configuration de la synchronisation.<br/><br/> - + Creating local sync folder %1... Création du dossier de synchronisation local %1 … - + ok ok - + failed. échoué. - + Could not create local folder %1 Impossible de créer le répertoire local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Échec de la connexion à %1 pour %2:<br/>%3 - + No remote folder specified! Aucun dossier distant n'est spécifié ! - + Error: %1 Erreur : %1 - + creating folder on ownCloud: %1 création d'un répertoire sur ownCloud : %1 - + Remote folder %1 created successfully. Le dossier distant %1 a été créé avec succès. - + The remote folder %1 already exists. Connecting it for syncing. Le dossier distant %1 existe déjà. Veuillez vous y connecter pour la synchronisation. - - + + The folder creation resulted in HTTP error code %1 La création du dossier a généré le code d'erreur HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> La création du répertoire distant a échoué car les identifiants de connexion sont erronés !<br/>Veuillez revenir en arrière et vérifier ces derniers.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">La création du dossier distant a échoué probablement parce que les informations d'identification fournies sont fausses.</font><br/>Veuillez revenir à l'étape précédente et vérifier vos informations d'identification.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. La création du dossier distant "%1" a échouée avec l'erreur <tt>%2</tt> - + A sync connection from %1 to remote directory %2 was set up. Une synchronisation entre le dossier local %1 et le dossier distant %2 a été configurée. - + Successfully connected to %1! Connecté avec succès à %1! - + Connection to %1 could not be established. Please check again. La connexion à %1 n'a pu être établie. Essayez encore svp. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Impossible de supprimer et de sauvegarder le dossier parce que ce dossier ou un de ces fichiers est ouvert dans un autre programme. Veuillez fermer le dossier ou le fichier et cliquez sur ré-essayer ou annuler l'installation. @@ -1212,7 +1211,7 @@ Il est déconseillé de l'utiliser. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Assistant de Connexion @@ -1256,12 +1255,12 @@ Il est déconseillé de l'utiliser. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. La synchronisation a été interrompue par l'utilisateur. - + No E-Tag received from server, check Proxy/Gateway Aucun E-Tag reçu du serveur, vérifiez le proxy / la passerelle @@ -1271,7 +1270,12 @@ Il est déconseillé de l'utiliser. Nous avons reçu un E-Tag différent pour reprendre le téléchargement. Nouvel essai la prochaine fois. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! File %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. @@ -1279,7 +1283,7 @@ Il est déconseillé de l'utiliser. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! File %1 ne peut pas être téléchargé en raison d'un conflit sur le nom du fichier local. @@ -1287,7 +1291,12 @@ Il est déconseillé de l'utiliser. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Échec de la restauration : + + + A file or directory was removed from a read only share, but restoring failed: %1 Un fichier ou un dossier a été supprimé du partage en lecture seule, mais la restauration à échoué : %1 @@ -1295,12 +1304,12 @@ Il est déconseillé de l'utiliser. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Attention, collision possible avec %1 à cause de la casse - + could not create directory %1 impossible de créer le répertoire %1 @@ -1321,7 +1330,7 @@ Il est déconseillé de l'utiliser. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Le fichier %1 ne peut pas être renommé en %2 à cause d'un conflit local de nom de fichier @@ -1329,7 +1338,7 @@ Il est déconseillé de l'utiliser. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Le fichier a été supprimé d'un partage en lecture seule. Il a été restauré. @@ -1337,17 +1346,17 @@ Il est déconseillé de l'utiliser. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Ce dossier ne doit pas être renommé. Il sera renommé avec son nom original. - + This folder must not be renamed. Please name it back to Shared. Ce dossier ne doit pas être renommé. Veuillez le nommer Partagé uniquement. - + The file was renamed but is part of a read only share. The original file was restored. Le fichier a été renommé mais appartient à un partage en lecture seule. Le fichier original a été restauré. @@ -1374,22 +1383,22 @@ Il est déconseillé de l'utiliser. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Le fichier a été modifié localement mais appartient à un partage en lecture seule. Il a été restauré et vos modifications sont présentes dans le fichiers de confit. - + The local file was removed during sync. - + Fichier local supprimé pendant la synchronisation. - + Local file changed during sync. Fichier local modifié pendant la synchronisation. - + The server did not acknowledge the last chunk. (No e-tag were present) Le serveur n'a pas acquitté le dernier morceau (aucun e-tag n'était présent). @@ -1417,62 +1426,62 @@ Il est déconseillé de l'utiliser. 4 - + Time Heure - + File Fichier - + Folder Dossier - + Action Action - + Size Taille - + Retry Sync Lancer à nouveau la synchronisation - + Copy Copier - + Copy the activity list to the clipboard. Copier la liste d'activités dans le presse papiers. - + Copied to clipboard Copié dans le presse-papiers - + The sync status has been copied to the clipboard. Le statu de synchronisation a été copié dans le presse-papier. - + Currently no files are ignored because of previous errors. Actuellement aucun fichier n'a été ignoré en raison d'erreurs précédentes. - + %1 files are ignored because of previous errors. Try to sync these again. %1 fichiers ont été ignorés en raison des erreurs précédentes. @@ -1515,27 +1524,27 @@ Il est déconseillé de l'utiliser. Mirall::SettingsDialogMac - + %1 %1 - + Account Compte - + Activity Activité - + General Général - + Network Réseau @@ -1543,12 +1552,12 @@ Il est déconseillé de l'utiliser. Mirall::ShibbolethCredentials - + Login Error Erreur de connexion - + You must sign in as user %1 Vous devez vous connecter en tant qu'utilisateur %1 @@ -1556,22 +1565,22 @@ Il est déconseillé de l'utiliser. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Authentifier - + Reauthentication required Nouvelle authentification nécessaire - + Your session has expired. You need to re-login to continue to use the client. Votre session a expiré. Vous devez vous connecter à nouveau pour continuer à utiliser le client. - + %1 - %2 %1 - %2 @@ -1775,158 +1784,158 @@ Il est déconseillé de l'utiliser. Mirall::SyncEngine - + Success. Succès. - + CSync failed to create a lock file. CSync n'a pas pu créer le fichier de verrouillage. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync n’a pu charger ou créer le fichier de journalisation. Veuillez vérifier que vous possédez les droits en lecture/écriture dans le répertoire de synchronisation local. - + CSync failed to write the journal file. CSync n’a pu écrire le fichier de journalisation. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Le plugin %1 pour csync n'a pas pu être chargé.<br/>Merci de vérifier votre installation !</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. L'heure du client est différente de l'heure du serveur. Veuillez utiliser un service de synchronisation du temps (NTP) sur le serveur et le client afin que les horloges soient à la même heure. - + CSync could not detect the filesystem type. CSync n'a pas pu détecter le type de système de fichier. - + CSync got an error while processing internal trees. CSync obtient une erreur pendant le traitement des arbres internes. - + CSync failed to reserve memory. Erreur lors de l'allocation mémoire par CSync. - + CSync fatal parameter error. Erreur fatale CSync : mauvais paramètre. - + CSync processing step update failed. Erreur CSync lors de l'opération de mise à jour - + CSync processing step reconcile failed. Erreur CSync lors de l'opération d'harmonisation - + CSync processing step propagate failed. Erreur CSync lors de l'opération de propagation - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Le répertoire cible n'existe pas.</p><p>Veuillez vérifier la configuration de la synchronisation.</p> - + A remote file can not be written. Please check the remote access. Un fichier distant ne peut être écrit. Veuillez vérifier l’accès distant. - + The local filesystem can not be written. Please check permissions. Le système de fichiers local n'est pas accessible en écriture. Veuillez vérifier les permissions. - + CSync failed to connect through a proxy. CSync n'a pu établir une connexion à travers un proxy. - + CSync could not authenticate at the proxy. CSync ne peut s'authentifier auprès du proxy. - + CSync failed to lookup proxy or server. CSync n'a pu trouver un proxy ou serveur auquel se connecter. - + CSync failed to authenticate at the %1 server. CSync n'a pu s'authentifier auprès du serveur %1. - + CSync failed to connect to the network. CSync n'a pu établir une connexion au réseau. - - A network connection timeout happend. - Le temps d'attente pour la connexion réseau s'est écoulé. + + A network connection timeout happened. + - + A HTTP transmission error happened. Une erreur de transmission HTTP s'est produite. - + CSync failed due to not handled permission deniend. CSync a échoué en raison d'une erreur de permission non prise en charge. - + CSync failed to access Echec de CSync pour accéder - + CSync tried to create a directory that already exists. CSync a tenté de créer un répertoire déjà présent. - - + + CSync: No space on %1 server available. CSync : Aucun espace disponibla sur le serveur %1. - + CSync unspecified error. Erreur CSync inconnue. - + Aborted by the user Abandonné par l'utilisateur - + An internal error number %1 happened. Une erreur interne numéro %1 s'est produite. - + The item is not synced because of previous errors: %1 Cet élément n'a pas été synchronisé en raison des erreurs précédentes : %1 @@ -1946,15 +1955,61 @@ Il est déconseillé de l'utiliser. Le fichier contient des caractères invalides qui ne peuvent être synchronisés entre plate-formes. - + Unable to initialize a sync journal. Impossible d'initialiser un journal de synchronisation. - + Cannot open the sync journal Impossible d'ouvrir le journal de synchronisation + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + Non autorisé parce-que vous n'avez pas la permission d'ajouter des fichiers dans ce dossier + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + Déplacement non autorisé car %1 est en mode lecture seule + + + + the destination + la destination + + + + the source + la source + Mirall::Systray @@ -1967,7 +2022,7 @@ Il est déconseillé de l'utiliser. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Version %1 Pour plus d'informations, veuillez visiter <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1975,47 +2030,47 @@ Il est déconseillé de l'utiliser. Mirall::ownCloudGui - + Please sign in Veuillez vous connecter - + Disconnected from server Déconnecte du serveur - + Folder %1: %2 Dossier %1 : %2 - + No sync folders configured. Aucun répertoire synchronisé n'est configuré. - + None. Aucun. - + Recent Changes Modifications récentes - + Open %1 folder Ouvrir le répertoire %1 - + Managed Folders: Répertoires suivis : - + Open folder '%1' Ouvrir le dossier '%1' @@ -2082,12 +2137,12 @@ Il est déconseillé de l'utiliser. Syncing %1 of %2 (%3 left) - + Synchronisation %1 de %2 (%3 restant) Syncing %1 (%2 left) - + Synchronisation %1 (%2 restant) @@ -2299,27 +2354,27 @@ Il est déconseillé de l'utiliser. Utility - + %L1 TB %L1 TO - + %L1 GB %L1 GO - + %L1 MB %L1 MO - + %L1 kB %L1 kO - + %L1 B %L1 Octets @@ -2340,7 +2395,7 @@ Il est déconseillé de l'utiliser. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Si vous n'avez pas encore de serveur ownCloud, consultez <a href="https://owncloud.com">owncloud.com</a> pour obtenir plus d'informations. @@ -2349,12 +2404,12 @@ Il est déconseillé de l'utiliser. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Construit à partir de la révision Git <a href="%1">%2</a> du %3, %4 en utilisant Qt %5.</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Version %2. Pour plus d'informations, consultez <a href="%3">%4</a></p><p><small>Par Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Basé sur Mirall par Duncan Mac-Vicar P.</small></p>%7 @@ -2443,57 +2498,57 @@ Il est déconseillé de l'utiliser. theme - + Status undefined Statut indéfini - + Waiting to start sync Synchronisation en attente - + Sync is running Synchronisation en cours - + Sync Success Synchronisation réussie - + Sync Success, some files were ignored. Synchronisation terminée avec succès, certains fichiers ont été ignorés. - + Sync Error Erreur de synchronisation - + Setup Error Erreur de configuration - + The server is currently unavailable Le serveur est indisponible actuellement. - + Preparing to sync Préparation à la synchronisation - + Aborting... Annulation... - + Sync is paused La synchronisation est en pause diff --git a/translations/mirall_gl.ts b/translations/mirall_gl.ts index 812c2fc65..68671e2ac 100644 --- a/translations/mirall_gl.ts +++ b/translations/mirall_gl.ts @@ -144,28 +144,28 @@ <p>Confirma que quere restabelecer o cartafol <i>%1</i> e reconstruír as súa base datos no cliente?</p><p><b>Nota:</b> Esta función está deseñada só para fins de mantemento. Non se retirará ningún ficheiro, porén, isto pode xerar un tráfico de datos significativo e levarlle varios minutos ou horas en completarse, dependendo do tamaño do cartafol. Utilice esta opción só se o aconsella o administrador.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. Espazo usado do servidor %1 (%3%) de %2. - + No connection to %1 at <a href="%2">%3</a>. Sen conexión con %1 en <a href="%2">%3</a>. - + No %1 connection configured. Non se configurou a conexión %1. - + Sync Running Sincronización en proceso @@ -175,35 +175,35 @@ Non hai contas configuradas. - + The syncing operation is running.<br/>Do you want to terminate it? Estase realizando a sincronización.<br/>Quere interrompela e rematala? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 de %4) restan %5 a unha taxa de %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 de %2, ficheiro %3 of %4 Tempo total restante %5 - + Connected to <a href="%1">%2</a>. Conectado a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Conectado a <a href="%1">%2</a> como <i>%3</i>. - + Currently there is no storage usage information available. Actualmente non hai dispoñíbel ningunha información sobre o uso do almacenamento. @@ -234,27 +234,27 @@ Tempo total restante %5 Mirall::ConnectionValidator - + No ownCloud account configured Non hai configurada ningunha conta ownCloud - + The configured server for this client is too old O servidor configurado para este cliente é moi antigo - + Please update to the latest server and restart the client. Actualice ao último servidor e reinicie o cliente. - + Unable to connect to %1 Non é posíbel conectar con %1 - + The provided credentials are not correct As credenciais fornecidas non son correctas @@ -262,100 +262,93 @@ Tempo total restante %5 Mirall::Folder - + Unable to create csync-context Non é posíbel crear o contexto csync - + Local folder %1 does not exist. O cartafol local %1 non existe. - + %1 should be a directory but is not. %1 debería ser un directorio e non o é. - + %1 is not readable. %1 non é lexíbel. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. O ficheiro %1 e outros %2 foron retirados satisfactoriamente. - + %1 has been removed. %1 names a file. %1 foi retirado satisfactoriamente. - + %1 and %2 other files have been downloaded. %1 names a file. O ficheiro %1 e outros %2 foron descargados satisfactoriamente. - + %1 has been downloaded. %1 names a file. %1 foi descargado satisfactoriamente. - + %1 and %2 other files have been updated. O ficheiro %1 e outros %2 foron enviados satisfactoriamente. - + %1 has been updated. %1 names a file. %1 foi enviado satisfactoriamente. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado satisfactoriamente a %2 e outros %3 tamén foron renomeados satisfactoriamente. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado satisfactoriamente a %2 - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido satisfactoriamente a %2 e outros %3 tamén foron movidos satisfactoriamente. - + %1 has been moved to %2. %1 foi movido satisfactoriamente a %2 - + Sync Activity Actividade de sincronización - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Esta sincronización retirará todos os ficheiros do cartafol local de sincronización «%1». -Se vostede, ou o administrador, restabeleceu a súa conta no servidor, escolla «Manter os ficheiros». Se quere que os seus datos sexan eliminados, escolla «Retirar todos os ficheiros». - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Isto podería ser debido a que o cartafol foi reconfigurado en silencio, ou a qu Confirma que quere realizar esta operación? - + Remove All Files? Retirar todos os ficheiros? - + Remove all files Retirar todos os ficheiros - + Keep files Manter os ficheiros @@ -382,67 +375,67 @@ Confirma que quere realizar esta operación? Mirall::FolderMan - + Could not reset folder state Non foi posíbel restabelecer o estado do cartafol - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Atopouse un rexistro de sincronización antigo en «%1» máis non pode ser retirado. Asegúrese de que non o está a usar ningún aplicativo. - + Undefined State. Estado sen definir. - + Waits to start syncing. Agardando polo comezo da sincronización. - + Preparing for sync. Preparando para sincronizar. - + Sync is running. Estase sincronizando. - + Server is currently not available. O servidor non está dispoñíbel actualmente. - + Last Sync was successful. A última sincronización fíxose correctamente. - + Last Sync was successful, but with warnings on individual files. A última sincronización fíxose correctamente, mais con algún aviso en ficheiros individuais. - + Setup Error. Erro de configuración. - + User Abort. Interrompido polo usuario. - + Sync is paused. Sincronización en pausa. - + %1 (Sync is paused) %1 (sincronización en pausa) @@ -469,8 +462,8 @@ Confirma que quere realizar esta operación? Mirall::FolderWizard - - + + Add Folder Engadir un cartafol @@ -546,42 +539,42 @@ Confirma que quere realizar esta operación? Mirall::FolderWizardRemotePath - + Add Remote Folder Engadir un cartafol remoto - + Enter the name of the new folder: Introduza o nome do novo cartafol: - + Folder was successfully created on %1. Creouse correctamente o cartafol en %1. - + Failed to create the folder on %1. Please check manually. Non foi posíbel crear o cartafol en %1. Compróbeo manualmente. - + Choose this to sync the entire account Escolla isto para sincronizar toda a conta - + This folder is already being synced. Este cartafol xa está sincronizado. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Xa está a sincronizar <i>%1</i>, é o cartafol pai de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Xa se están a sincronizar todos os ficheiros. Isto <b>non</b> é compatíbel co sincronización doutro cartafol. Se quere sincronizar varios cartafoles, retire a sincronización do cartafol raíz configurado actualmente. @@ -598,17 +591,22 @@ Confirma que quere realizar esta operación? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Non se recibiu a «E-Tag» do servidor, comprobe o proxy e/ou a pasarela - + We received a different E-Tag for resuming. Retrying next time. Recibiuse unha «E-Tag» diferente para continuar. Tentándoo outra vez. - + + Server returned wrong content-range + + + + Connection Timeout Esgotouse o tempo de conexión @@ -622,7 +620,7 @@ Confirma que quere realizar esta operación? - General Setttings + General Settings Axustes xerais @@ -660,12 +658,12 @@ Confirma que quere realizar esta operación? Mirall::HttpCredentials - + Enter Password Escriba o contrasinal - + Please enter %1 password for user '%2': Escriba o contrasinal %1 para o usuario «%2»: @@ -807,8 +805,8 @@ Os elementos marcados tamén se eliminarán se impiden retirar un directorio. Is - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Hai dispoñíbel unha nova versión do cliente %1.</p><p>Pode descargar a versión <b>%2</b>. A versión instalada é a %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Hai dispoñíbel unha nova versión do cliente %1.</p><p>Pode descargar a versión <b>%2</b>. A versión instalada é a %3</p> @@ -963,7 +961,7 @@ actualización pode pedir privilexios adicionais durante o proceso. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. Está dispoñíbel unha nova versión %1. Utilice a ferramenta de actualización do sistema para instalala. @@ -1078,7 +1076,7 @@ Recomendámoslle que non o use. Produciuse un fallo de conexión - + Update %1 server Actualizar o servidor %1 @@ -1086,126 +1084,126 @@ Recomendámoslle que non o use. Mirall::OwncloudSetupWizard - + Folder rename failed Non foi posíbel renomear o cartafol - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>O cartafol local de sincronización %1 creouse correctamente!</b></font> - + Trying to connect to %1 at %2... Tentando conectarse a %1 en %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Conectouse correctamente a %1: %2 versión %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Erro: Credenciais incorrectas. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> O cartafol de sincronización local %1 xa existe. Configurándoo para a sincronización.<br/><br/> - + Creating local sync folder %1... Creando un cartafol local de sincronización %1... - + ok aceptar - + failed. fallou. - + Could not create local folder %1 Non foi posíbel crear o cartafol local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Non foi posíbel conectar con %1 en %2:<br/>%3 - + No remote folder specified! Non foi especificado o cartafol remoto! - + Error: %1 Erro: %1 - + creating folder on ownCloud: %1 creando o cartafol en ownCloud: %1 - + Remote folder %1 created successfully. O cartafol remoto %1 creouse correctamente. - + The remote folder %1 already exists. Connecting it for syncing. O cartafol remoto %1 xa existe. Conectándoo para a sincronización. - - + + The folder creation resulted in HTTP error code %1 A creación do cartafol resultou nun código de erro HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> A creación do cartafol remoto fracasou por por de seren incorrectas as credenciais!<br/>Volva atrás e comprobe as súas credenciais.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">A creación do cartafol remoto fallou probabelmente debido a que as credenciais que se deron non foran as correctas.</font><br/>Volva atrás e comprobe as súas credenciais.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Produciuse un fallo ao crear o cartafol remoto %1 e dou o erro <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Estabeleceuse a conexión de sincronización de %1 ao directorio remoto %2. - + Successfully connected to %1! Conectou satisfactoriamente con %1 - + Connection to %1 could not be established. Please check again. Non foi posíbel estabelecer a conexión con %1. Compróbeo de novo. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Non é posíbel retirar e facer copia de seguranza do cartafol, xa que o cartafol ou un ficheiro está aberto noutro programa Peche o cartafol ou o ficheiro e tenteo de novo, ou cancele a acción. @@ -1213,7 +1211,7 @@ Recomendámoslle que non o use. Mirall::OwncloudWizard - + %1 Connection Wizard Asistente de conexión %1 @@ -1257,12 +1255,12 @@ Recomendámoslle que non o use. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronización foi interrompida polo usuario. - + No E-Tag received from server, check Proxy/Gateway Non se recibiu a «E-Tag» do servidor, comprobe o proxy e/ou a pasarela @@ -1272,7 +1270,12 @@ Recomendámoslle que non o use. Recibiuse unha «E-Tag» diferente para continuar. Tentándoo outra vez. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! @@ -1280,7 +1283,7 @@ Recomendámoslle que non o use. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Non é posíbel descargar o ficheiro %1 por mor dunha colisión co nome dun ficheiro local! @@ -1288,7 +1291,12 @@ Recomendámoslle que non o use. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Fallou a restauración: + + + A file or directory was removed from a read only share, but restoring failed: %1 Foi retirado un ficheiro ou directorio desde unha compartición de só lectura, mais non foi posíbel a súa restauración: %1 @@ -1296,12 +1304,12 @@ Recomendámoslle que non o use. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Atención, posíbel colisión entre maiúsculas e minúsculas con %1 - + could not create directory %1 non foi posíbel crear o directorio %1 @@ -1322,7 +1330,7 @@ Recomendámoslle que non o use. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Non é posíbel renomear o ficheiro %1 como %2 por mor dunha colisión co nome dun ficheiro local @@ -1330,7 +1338,7 @@ Recomendámoslle que non o use. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Foi retirado un ficheiro desde unha compartición de só lectura. Foi restaurado. @@ -1338,17 +1346,17 @@ Recomendámoslle que non o use. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Non é posíbel renomear este cartafol. Non se lle cambiou o nome, mantense o orixinal. - + This folder must not be renamed. Please name it back to Shared. Non é posíbel renomear este cartafol. Devólvalle o nome ao compartido. - + The file was renamed but is part of a read only share. The original file was restored. O ficheiro foi renomeado mais é parte dunha compartición de só lectura. O ficheiro orixinal foi restaurado. @@ -1375,22 +1383,22 @@ Recomendámoslle que non o use. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mais é parte dunha compartición de só lectura. O ficheiro foi restaurado e a súa edición atopase no ficheiro de conflitos. - + The local file was removed during sync. O ficheiro local retirarase durante a sincronización. - + Local file changed during sync. O ficheiro local cambiou durante a sincronización. - + The server did not acknowledge the last chunk. (No e-tag were present) O servidor non recoñeceu o último fragmento. (Non hai e-tag presente) @@ -1418,62 +1426,62 @@ Recomendámoslle que non o use. 4 - + Time Hora - + File Ficheiro - + Folder Cartafol - + Action Acción - + Size Tamaño - + Retry Sync Volver tentar a sincronización - + Copy Copiar - + Copy the activity list to the clipboard. Copiar a lista da actividade no portapapeis. - + Copied to clipboard Copiado no portapapeis. - + The sync status has been copied to the clipboard. O estado de sincronización foi copiado no portapapeis. - + Currently no files are ignored because of previous errors. Actualmente non hai ficheiros ignorados por mor de erros anteriores. - + %1 files are ignored because of previous errors. Try to sync these again. %1 ficheiros foron ignorados por mor de erros anteriores. @@ -1516,27 +1524,27 @@ Tente sincronizalos de novo. Mirall::SettingsDialogMac - + %1 %1 - + Account Conta - + Activity Actividade - + General Xeral - + Network Rede @@ -1544,12 +1552,12 @@ Tente sincronizalos de novo. Mirall::ShibbolethCredentials - + Login Error Erro de acceso - + You must sign in as user %1 Ten que rexistrarse como usuario %1 @@ -1557,22 +1565,22 @@ Tente sincronizalos de novo. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticado - + Reauthentication required É necesario volver autenticarse - + Your session has expired. You need to re-login to continue to use the client. Caducou a sesión. É necesario que volva a acceder para seguir usando o cliente. - + %1 - %2 %1 - %2 @@ -1776,158 +1784,158 @@ Tente sincronizalos de novo. Mirall::SyncEngine - + Success. Correcto. - + CSync failed to create a lock file. Produciuse un fallo en CSync ao crear un ficheiro de bloqueo. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Produciuse un fallo do Csync ao cargar ou crear o ficheiro de rexistro. Asegúrese de que ten permisos de lectura e escritura no directorio de sincronización local. - + CSync failed to write the journal file. Produciuse un fallo en CSync ao escribir o ficheiro de rexistro. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Non foi posíbel cargar o engadido %1 para CSync.<br/>Verifique a instalación!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. A diferenza de tempo neste cliente e diferente do tempo do sistema no servidor. Use o servido de sincronización de tempo (NTP) no servidor e nas máquinas cliente para que os tempos se manteñan iguais. - + CSync could not detect the filesystem type. CSync non pode detectar o tipo de sistema de ficheiros. - + CSync got an error while processing internal trees. CSync tivo un erro ao procesar árbores internas. - + CSync failed to reserve memory. Produciuse un fallo ao reservar memoria para CSync. - + CSync fatal parameter error. Produciuse un erro fatal de parámetro CSync. - + CSync processing step update failed. Produciuse un fallo ao procesar o paso de actualización de CSync. - + CSync processing step reconcile failed. Produciuse un fallo ao procesar o paso de reconciliación de CSync. - + CSync processing step propagate failed. Produciuse un fallo ao procesar o paso de propagación de CSync. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Non existe o directorio de destino.</p><p>Comprobe a configuración da sincronización.</p> - + A remote file can not be written. Please check the remote access. Non é posíbel escribir un ficheiro remoto. Comprobe o acceso remoto. - + The local filesystem can not be written. Please check permissions. Non é posíbel escribir no sistema de ficheiros local. Comprobe os permisos. - + CSync failed to connect through a proxy. CSYNC no puido conectarse a través dun proxy. - + CSync could not authenticate at the proxy. CSync non puido autenticarse no proxy. - + CSync failed to lookup proxy or server. CSYNC no puido atopar o servidor proxy. - + CSync failed to authenticate at the %1 server. CSync non puido autenticarse no servidor %1. - + CSync failed to connect to the network. CSYNC no puido conectarse á rede. - - A network connection timeout happend. + + A network connection timeout happened. Excedeuse do tempo de espera para a conexión á rede. - + A HTTP transmission error happened. Produciuse un erro na transmisión HTTP. - + CSync failed due to not handled permission deniend. Produciuse un fallo en CSync por mor dun permiso denegado. - + CSync failed to access Produciuse un fallo ao acceder a CSync - + CSync tried to create a directory that already exists. CSYNC tenta crear un directorio que xa existe. - - + + CSync: No space on %1 server available. CSync: Non hai espazo dispoñíbel no servidor %1. - + CSync unspecified error. Produciuse un erro non especificado de CSync - + Aborted by the user Interrompido polo usuario - + An internal error number %1 happened. Produciuse un erro interno número %1 - + The item is not synced because of previous errors: %1 Este elemento non foi sincronizado por mor de erros anteriores: %1 @@ -1947,15 +1955,61 @@ Tente sincronizalos de novo. O ficheiro conten caracteres incorrectos que non poden sincronizarse entre distintas plataformas. - + Unable to initialize a sync journal. Non é posíbel iniciar un rexistro de sincronización. - + Cannot open the sync journal Non foi posíbel abrir o rexistro de sincronización + + + Not allowed because you don't have permission to add sub-directories in that directory + Non está permitido xa que non ten permiso para engadir subdirectorios nese directorio + + + + Not allowed because you don't have permission to add parent directory + Non está permitido xa que non ten permiso para engadir un directorio pai + + + + Not allowed because you don't have permission to add files in that directory + Non está permitido xa que non ten permiso para engadir ficheiros nese directorio + + + + Not allowed to upload this file because it is read-only on the server, restoring + Non está permitido o envío xa que o ficheiro é só de lectura no servidor, restaurando + + + + + Not allowed to remove, restoring + Non está permitido retiralo, restaurando + + + + Move not allowed, item restored + Nos está permitido movelo, elemento restaurado + + + + Move not allowed because %1 is read-only + Bon está permitido movelo xa que %1 é só de lectura + + + + the destination + o destino + + + + the source + a orixe + Mirall::Systray @@ -1968,7 +2022,7 @@ Tente sincronizalos de novo. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versión %1 Para obter máis información vexa <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distribuído por %4 e licenciado baixo a Licenza Pública Xeral GPL/GNU Versión 2.0.<br>Os logotipos %5 e %5 son marcas rexistradas de %4 nos<br>Estados Unidos de Norte América e/ou outros países.</p> @@ -1976,47 +2030,47 @@ Tente sincronizalos de novo. Mirall::ownCloudGui - + Please sign in Ten que rexistrarse - + Disconnected from server Desconectado do servidor - + Folder %1: %2 Cartafol %1: %2 - + No sync folders configured. Non se configuraron cartafoles de sincronización. - + None. Nada. - + Recent Changes Cambios recentes - + Open %1 folder Abrir o cartafol %1 - + Managed Folders: Cartafoles xestionados: - + Open folder '%1' Abrir o cartafol «%1» @@ -2300,27 +2354,27 @@ Tente sincronizalos de novo. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2395,7 @@ Tente sincronizalos de novo. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Se aínda non ten un servidor ownCloud, vexa <a href="https://owncloud.com">owncloud.com</a> para obter máis información. @@ -2350,12 +2404,12 @@ Tente sincronizalos de novo. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Construído a partir de la revisión Git <a href="%1">%2</a> on %3, %4 usando Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versión %2.Versión <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Baseado no Mirall por Duncan Mac-Vicar P.</small></p>%7 @@ -2444,57 +2498,57 @@ Tente sincronizalos de novo. theme - + Status undefined Estado sen definir - + Waiting to start sync Agardando o comezo da sincronización - + Sync is running Sincronización en proceso - + Sync Success Sincronización realizada - + Sync Success, some files were ignored. A sincronización foi correcta, algúns ficheiros foron ignorados. - + Sync Error Produciuse un erro de sincronización - + Setup Error Erro de configuración - + The server is currently unavailable O servidor non está dispoñíbel actualmente - + Preparing to sync Preparando para sincronizar - + Aborting... Interrompendo - + Sync is paused Sincronización en pausa diff --git a/translations/mirall_hu.ts b/translations/mirall_hu.ts index f71c03f74..57489022f 100644 --- a/translations/mirall_hu.ts +++ b/translations/mirall_hu.ts @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. - + Sync Running Szinkronizálás fut @@ -175,34 +175,34 @@ Nincs beállított kapcsolat. - + The syncing operation is running.<br/>Do you want to terminate it? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + The provided credentials are not correct @@ -261,116 +261,110 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. %1 helyi mappa nem létezik. - + %1 should be a directory but is not. %1 könyvtár kell legyen, de nem az. - + %1 is not readable. %1 nem olvasható. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? El legyen távolítva az összes fájl? - + Remove all files Összes fájl eltávolítása - + Keep files Fájlok megtartása @@ -378,67 +372,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. Ismeretlen állapot. - + Waits to start syncing. Várakozás a szinkronizálás elindítására. - + Preparing for sync. Előkészítés szinkronizációhoz. - + Sync is running. Szinkronizálás fut. - + Server is currently not available. A kiszolgáló jelenleg nem érhető el. - + Last Sync was successful. Legutolsó szinkronizálás sikeres volt. - + Last Sync was successful, but with warnings on individual files. - + Setup Error. Beállítás hiba. - + User Abort. - + Sync is paused. Szinkronizálás megállítva. - + %1 (Sync is paused) @@ -465,8 +459,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Mappa hozzáadása @@ -542,42 +536,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder Távoli mappa hozzáadása - + Enter the name of the new folder: Adja meg az új mappa nevét: - + Folder was successfully created on %1. A mappa sikeresen létrehozva: %1. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. Ez a mappa már szinkronizálva van. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -594,17 +588,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,8 +617,8 @@ Are you sure you want to perform this operation? - General Setttings - Általános beállítások + General Settings + @@ -656,12 +655,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password Jelszómegadás - + Please enter %1 password for user '%2': @@ -801,7 +800,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> @@ -956,7 +955,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1070,7 +1069,7 @@ It is not advisable to use it. A kapcsolódás sikertelen - + Update %1 server @@ -1078,126 +1077,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed A mappa átnevezése nem sikerült - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Helyi %1 szinkronizációs mappa sikeresen létrehozva!</b></font> - + Trying to connect to %1 at %2... Próbál kapcsolódni az %1-hoz: %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Sikeresen csatlakozott az %1-hoz: %2 verziószám %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Hiba: rossz azonosítási adatok - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> A helyi %1 mappa már létezik, állítsa be a szinkronizálódását.<br/><br/> - + Creating local sync folder %1... Helyi %1 szinkronizációs mappa létrehozása... - + ok ok - + failed. sikertelen. - + Could not create local folder %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 Hiba: %1 - + creating folder on ownCloud: %1 - + Remote folder %1 created successfully. %1 távoli nappa sikeresen létrehozva. - + The remote folder %1 already exists. Connecting it for syncing. A %1 távoli mappa már létezik. Csatlakoztassa a szinkronizációhoz. - - + + The folder creation resulted in HTTP error code %1 A könyvtár létrehozásakor keletkezett HTTP hibakód %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">A távoli mappa létrehozása sikertelen, valószínűleg mivel hibásak a megdott hitelesítési adatok.</font><br/>Lépjen vissza és ellenőrizze a belépési adatokat.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. A távoli %1 mappa létrehozása nem sikerült. Hibaüzenet: <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. A szinkronizációs kapcsolat a %1 és a %2 távoli mappa között létrejött. - + Successfully connected to %1! Sikeresen csatlakozva: %1! - + Connection to %1 could not be established. Please check again. A kapcsolat a %1 kiszolgálóhoz sikertelen. Ellenőrizze újra. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1205,7 +1204,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 kapcsolódási varázsló @@ -1249,12 +1248,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1264,7 +1263,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1272,7 +1276,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1280,7 +1284,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1288,12 +1297,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1314,7 +1323,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1322,7 +1331,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1330,17 +1339,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1367,22 +1376,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1410,62 +1419,62 @@ It is not advisable to use it. 4 - + Time Idő - + File Fájl - + Folder Mappa - + Action Művelet - + Size Méret - + Retry Sync - + Copy Másolás - + Copy the activity list to the clipboard. - + Copied to clipboard Bemásolva a vágólapra - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1507,27 +1516,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 %1 - + Account Fiók - + Activity Aktivitás - + General Általános - + Network Hálózat @@ -1535,12 +1544,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1548,22 +1557,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 @@ -1765,158 +1774,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. Sikerült. - + CSync failed to create a lock file. A CSync nem tudott létrehozni lock fájlt. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Az %1 beépülőmodul a csync-hez nem tölthető be.<br/>Ellenőrizze a telepítést!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. A helyi rendszeridő különbözik a kiszolgáló rendszeridejétől. Használjon időszinkronizációs szolgáltatást (NTP) a rendszerén és a szerveren is, hogy az idő mindig megeggyezzen. - + CSync could not detect the filesystem type. A CSync nem tudta megállapítani a fájlrendszer típusát. - + CSync got an error while processing internal trees. A CSync hibába ütközött a belső adatok feldolgozása közben. - + CSync failed to reserve memory. Hiba a CSync memórifoglalásakor. - + CSync fatal parameter error. CSync hibás paraméterhiba. - + CSync processing step update failed. CSync frissítés feldolgozása meghíusult. - + CSync processing step reconcile failed. CSync egyeztetési lépés meghíusult. - + CSync processing step propagate failed. CSync propagálási lépés meghíusult. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>A célmappa nem létezik.</p><p>Ellenőrizze a sync beállításait.</p> - + A remote file can not be written. Please check the remote access. Egy távoli fájl nem írható. Kérlek, ellenőrizd a távoli elérést. - + The local filesystem can not be written. Please check permissions. A helyi fájlrendszer nem írható. Kérlek, ellenőrizd az engedélyeket. - + CSync failed to connect through a proxy. CSync proxy kapcsolódási hiba. - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. A CSync nem találja a proxy kiszolgálót. - + CSync failed to authenticate at the %1 server. A CSync nem tuja azonosítani magát a %1 kiszolgálón. - + CSync failed to connect to the network. CSync hálózati kapcsolódási hiba. - - A network connection timeout happend. - Hálózati kapcsolat időtúllépési hiba lépett fel. + + A network connection timeout happened. + - + A HTTP transmission error happened. HTTP átviteli hiba történt. - + CSync failed due to not handled permission deniend. CSync hiba, nincs kezelési jogosultság. - + CSync failed to access - + CSync tried to create a directory that already exists. A CSync megpróbált létrehozni egy már létező mappát. - - + + CSync: No space on %1 server available. CSync: Nincs szabad tárhely az %1 kiszolgálón. - + CSync unspecified error. CSync ismeretlen hiba. - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1936,15 +1945,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1957,7 +2012,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1965,47 +2020,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in Belépés szükséges - + Disconnected from server - + Folder %1: %2 Mappa %1: %2 - + No sync folders configured. Nincsenek megadva szinkronizálandó mappák. - + None. Nincs - + Recent Changes Legutóbbi változások - + Open %1 folder %1 mappa megnyitása - + Managed Folders: Kezelt mappák: - + Open folder '%1' @@ -2289,27 +2344,27 @@ It is not advisable to use it. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2330,7 +2385,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! @@ -2339,12 +2394,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2433,57 +2488,57 @@ It is not advisable to use it. theme - + Status undefined Meghatározatlan állapit - + Waiting to start sync - + Sync is running - + Sync Success - + Sync Success, some files were ignored. - + Sync Error - + Setup Error - + The server is currently unavailable - + Preparing to sync - + Aborting... - + Sync is paused diff --git a/translations/mirall_it.ts b/translations/mirall_it.ts index 2ec8fa3eb..85c3144f1 100644 --- a/translations/mirall_it.ts +++ b/translations/mirall_it.ts @@ -144,28 +144,28 @@ <p>Vuoi davvero ripristinare la cartella <i>%1</i> e ricostruire il database del client?</p><p><b>Nota:</b> questa funzione è destinata solo a scopi di manutenzione. Nessun file sarà rimosso, ma può causare un significativo traffico di dati e richiedere diversi minuti oppure ore, in base alla dimensione della cartella. Utilizza questa funzione solo se consigliata dal tuo amministratore.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) di %2 spazio in uso sul server. - + No connection to %1 at <a href="%2">%3</a>. Nessuna connessione a %1 su <a href="%2">%3</a>. - + No %1 connection configured. Nessuna connessione di %1 configurata. - + Sync Running La sincronizzazione è in corso @@ -175,34 +175,35 @@ Nessun account configurato. - + The syncing operation is running.<br/>Do you want to terminate it? L'operazione di sincronizzazione è in corso.<br/>Vuoi terminarla? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - %1 in corso di %2 (%3 di %4). Tempo rimanente: %5 ad una velocità di %6/s + %1 %2 (%3 di %4). %5 rimanenti a una velocità di %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + %1 di %2, file %3 di %4 +Totale tempo rimanente %5 - + Connected to <a href="%1">%2</a>. Connesso a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Connesso a <a href="%1">%2</a> come <i>%3</i>. - + Currently there is no storage usage information available. Non ci sono informazioni disponibili sull'utilizzo dello spazio di archiviazione. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Nessun account ownCloud configurato. - + The configured server for this client is too old Il server configurato per questo client è troppo datato - + Please update to the latest server and restart the client. Aggiorna all'ultima versione del server e riavvia il client. - + Unable to connect to %1 Impossibile connettersi a %1 - + The provided credentials are not correct Le credenziali fornite non sono corrette @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Impossibile creare il contesto csync - + Local folder %1 does not exist. La cartella locale %1 non esiste. - + %1 should be a directory but is not. %1 dovrebbe essere una cartella. - + %1 is not readable. %1 non è leggibile. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 altri file sono stati rimossi. - + %1 has been removed. %1 names a file. %1 è stato rimosso. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 altri file sono stati scaricati. - + %1 has been downloaded. %1 names a file. %1 è stato scaricato. - + %1 and %2 other files have been updated. %1 e %2 altri file sono stati aggiornati. - + %1 has been updated. %1 names a file. %1 è stato aggiornato. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 è stato rinominato in %2 e %3 altri file sono stati rinominati. - + %1 has been renamed to %2. %1 and %2 name files. %1 è stato rinominato in %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 è stato spostato in %2 e %3 altri file sono stati spostati. - + %1 has been moved to %2. %1 è stato spostato in %2. - + Sync Activity Sincronizza attività - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Questa sincronizzazione rimuoverà tutti i file nella cartella di sincronizzazione locale '%1'. -Se tu o il tuo amministratore avete ripristinato il tuo account sul server, scegli "Mantieni i file". Se desideri che i dati siano rimossi, scegli "Rimuovi tutti i file". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Ciò potrebbe accadere in caso di riconfigurazione della cartella o di rimozione Sei sicuro di voler eseguire questa operazione? - + Remove All Files? Vuoi rimuovere tutti i file? - + Remove all files Rimuovi tutti i file - + Keep files Mantieni i file @@ -381,67 +375,67 @@ Sei sicuro di voler eseguire questa operazione? Mirall::FolderMan - + Could not reset folder state Impossibile ripristinare lo stato della cartella - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. È stato trovato un vecchio registro di sincronizzazione '%1', ma non può essere rimosso. Assicurati che nessuna applicazione lo stia utilizzando. - + Undefined State. Stato non definito. - + Waits to start syncing. Attende l'inizio della sincronizzazione. - + Preparing for sync. Preparazione della sincronizzazione. - + Sync is running. La sincronizzazione è in corso. - + Server is currently not available. Il server è attualmente non disponibile. - + Last Sync was successful. L'ultima sincronizzazione è stato completata correttamente. - + Last Sync was successful, but with warnings on individual files. Ultima sincronizzazione avvenuta, ma con avvisi relativi a singoli file. - + Setup Error. Errore di configurazione. - + User Abort. Interrotto dall'utente. - + Sync is paused. La sincronizzazione è sospesa. - + %1 (Sync is paused) %1 (La sincronizzazione è sospesa) @@ -468,8 +462,8 @@ Sei sicuro di voler eseguire questa operazione? Mirall::FolderWizard - - + + Add Folder Aggiungi cartella @@ -545,42 +539,42 @@ Sei sicuro di voler eseguire questa operazione? Mirall::FolderWizardRemotePath - + Add Remote Folder Aggiungi cartella remota - + Enter the name of the new folder: Digita il nome della nuova cartella: - + Folder was successfully created on %1. La cartella è stata creata correttamente su %1. - + Failed to create the folder on %1. Please check manually. Non è stato possibile creare la cartella su %1. Controlla manualmente. - + Choose this to sync the entire account Selezionala per sincronizzare l'intero account - + This folder is already being synced. Questa cartella è già sincronizzata. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Stai già sincronizzando <i>%1</i>, che è la cartella superiore di <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Stai già sincronizzando tutti i tuoi file. La sincronizzazione di un'altra cartella <b>non</b> è supportata. Se vuoi sincronizzare più cartelle, rimuovi la configurazione della cartella principale di sincronizzazione. @@ -597,17 +591,22 @@ Sei sicuro di voler eseguire questa operazione? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nessun e-tag ricevuto dal server, controlla il proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Abbiamo ricevuto un e-tag diverso per il recupero. Riprova più tardi. - + + Server returned wrong content-range + Il server ha restituito un content-range errato + + + Connection Timeout Connessione scaduta @@ -621,7 +620,7 @@ Sei sicuro di voler eseguire questa operazione? - General Setttings + General Settings Impostazioni generali @@ -659,12 +658,12 @@ Sei sicuro di voler eseguire questa operazione? Mirall::HttpCredentials - + Enter Password Digita la password - + Please enter %1 password for user '%2': Digita la password di %1 per l'utente '%2': @@ -806,8 +805,8 @@ Gli elementi marcati saranno inoltre eliminati se impediscono la rimozione di un - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Una nuova versione del client %1 è disponibile.</p><p><b>%2</b> è disponibile per lo scaricamento. La versione installata è %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Una nuova versione del client %1 è disponibile.</p><p><b>%2</b> è disponibile per lo scaricamento. La versione installata è %3.</p> @@ -961,8 +960,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - La nuova versione %1 è disponibile. Utilizza lo strumento di aggiornamento di sistema per installarlo. + New version %1 available. Please use the system's update tool to install it. + Nuova versione %1 disponibile. Utilizza lo strumento di aggiornamento di sistema per installarla. @@ -1076,7 +1075,7 @@ Non è consigliabile utilizzarlo. Connessione non riuscita - + Update %1 server Aggiorna il server %1 @@ -1084,126 +1083,126 @@ Non è consigliabile utilizzarlo. Mirall::OwncloudSetupWizard - + Folder rename failed Rinomina cartella non riuscita - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Cartella locale %1 creta correttamente!</b></font> - + Trying to connect to %1 at %2... Tentativo di connessione a %1 su %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Connesso correttamente a %1: %2 versione %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Errore: credenziali non valide. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> La cartella di sincronizzazione locale %1 esiste già, impostata per la sincronizzazione.<br/><br/> - + Creating local sync folder %1... Creazione della cartella locale di sincronizzazione %1 in corso... - + ok ok - + failed. non riuscita. - + Could not create local folder %1 Impossibile creare la cartella locale %1 - - + + Failed to connect to %1 at %2:<br/>%3 Connessione a %1 su %2:<br/>%3 - + No remote folder specified! Nessuna cartella remota specificata! - + Error: %1 Errore: %1 - + creating folder on ownCloud: %1 creazione cartella su ownCloud: %1 - + Remote folder %1 created successfully. La cartella remota %1 è stata creata correttamente. - + The remote folder %1 already exists. Connecting it for syncing. La cartella remota %1 esiste già. Connessione in corso per la sincronizzazione - - + + The folder creation resulted in HTTP error code %1 La creazione della cartella ha restituito un codice di errore HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> La creazione della cartella remota non è riuscita poiché le credenziali fornite sono errate!<br/>Torna indietro e verifica le credenziali.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">La creazione della cartella remota non è riuscita probabilmente perché le credenziali fornite non sono corrette.</font><br/>Torna indietro e controlla le credenziali inserite.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Creazione della cartella remota %1 non riuscita con errore <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Una connessione di sincronizzazione da %1 alla cartella remota %2 è stata stabilita. - + Successfully connected to %1! Connessi con successo a %1! - + Connection to %1 could not be established. Please check again. La connessione a %1 non può essere stabilita. Prova ancora. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Impossibile rimuovere o creare una copia di sicurezza della cartella poiché la cartella o un file in essa contenuto è aperta in un altro programma. Chiudi la cartella o il file e premi Riprova o annulla la configurazione. @@ -1211,7 +1210,7 @@ Non è consigliabile utilizzarlo. Mirall::OwncloudWizard - + %1 Connection Wizard Procedura guidata di connessione di %1 @@ -1255,12 +1254,12 @@ Non è consigliabile utilizzarlo. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Sincronizzazione interrotta dall'utente. - + No E-Tag received from server, check Proxy/Gateway Nessun e-tag ricevuto dal server, controlla il proxy/gateway @@ -1270,7 +1269,12 @@ Non è consigliabile utilizzarlo. Abbiamo ricevuto un e-tag diverso per il recupero. Riprova più tardi. - + + Server returned wrong content-range + Il server ha restituito un content-range errato + + + File %1 can not be downloaded because of a local file name clash! Il file %1 non può essere scaricato a causa di un conflitto con un file locale. @@ -1278,7 +1282,7 @@ Non è consigliabile utilizzarlo. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Il file %1 non può essere scaricato a causa di un conflitto con un file locale. @@ -1286,7 +1290,12 @@ Non è consigliabile utilizzarlo. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Ripristino non riuscito: + + + A file or directory was removed from a read only share, but restoring failed: %1 Un file o una cartella è stato rimosso da una condivisione in sola lettura, ma il ripristino non è riuscito: %1 @@ -1294,12 +1303,12 @@ Non è consigliabile utilizzarlo. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Attenzione, possibile conflitto relativo all'uso di maiuscole e minuscole con %1 - + could not create directory %1 impossibile creare la cartella %1 @@ -1320,7 +1329,7 @@ Non è consigliabile utilizzarlo. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Il file %1 non può essere rinominato in %2 a causa di un conflitto con il nome di un file locale @@ -1328,7 +1337,7 @@ Non è consigliabile utilizzarlo. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Il file è stato rimosso da una condivisione in sola lettura. È stato ripristinato. @@ -1336,17 +1345,17 @@ Non è consigliabile utilizzarlo. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Questa cartella non può essere rinominata. Il nome originale è stato ripristinato. - + This folder must not be renamed. Please name it back to Shared. Questa cartella non può essere rinominata. Ripristina il nome Shared. - + The file was renamed but is part of a read only share. The original file was restored. Il file è stato rinominato, ma è parte di una condivisione in sola lettura. Il file originale è stato ripristinato. @@ -1373,22 +1382,22 @@ Non è consigliabile utilizzarlo. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Il file è stato modificato localmente, ma è parte di una condivisione in sola lettura. È stato ripristinato e la tua modifica è nel file di conflitto. - + The local file was removed during sync. Il file locale è stato rimosso durante la sincronizzazione. - + Local file changed during sync. Un file locale è cambiato durante la sincronizzazione. - + The server did not acknowledge the last chunk. (No e-tag were present) Il server non ha riconosciuto l'ultimo pezzo. (Non era presente alcun e-tag) @@ -1416,62 +1425,62 @@ Non è consigliabile utilizzarlo. 4 - + Time Ora - + File File - + Folder Cartella - + Action Azione - + Size Dimensione - + Retry Sync Riprova sincronizzazione - + Copy Copia - + Copy the activity list to the clipboard. Copia l'elenco delle attività negli appunti. - + Copied to clipboard Copiato negli appunti - + The sync status has been copied to the clipboard. Lo stato di sincronizzazione è stato copiato negli appunti. - + Currently no files are ignored because of previous errors. Attualmente nessun file è ignorato a causa di errori precedenti. - + %1 files are ignored because of previous errors. Try to sync these again. %1 file sono ignorati a causa di errori precedenti. @@ -1514,27 +1523,27 @@ Prova a sincronizzare nuovamente. Mirall::SettingsDialogMac - + %1 %1 - + Account Account - + Activity Attività - + General Generale - + Network Rete @@ -1542,12 +1551,12 @@ Prova a sincronizzare nuovamente. Mirall::ShibbolethCredentials - + Login Error Errore di accesso - + You must sign in as user %1 Devi accedere con l'utente %1 @@ -1555,22 +1564,22 @@ Prova a sincronizzare nuovamente. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticazione - + Reauthentication required Nuova autenticazione richiesta - + Your session has expired. You need to re-login to continue to use the client. La tua sessione è scaduta. Devi effettuare nuovamente l'accesso per continuare a utilizzare il client. - + %1 - %2 %1 - %2 @@ -1774,158 +1783,158 @@ Prova a sincronizzare nuovamente. Mirall::SyncEngine - + Success. Successo. - + CSync failed to create a lock file. CSync non è riuscito a creare il file di lock. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync non è riuscito a caricare o a creare il file di registro. Assicurati di avere i permessi di lettura e scrittura nella cartella di sincronizzazione locale. - + CSync failed to write the journal file. CSync non è riuscito a scrivere il file di registro. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Il plugin %1 per csync non può essere caricato.<br/>Verifica l'installazione!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. L'ora di sistema su questo client è diversa dall'ora di sistema del server. Usa un servizio di sincronizzazione dell'orario (NTP) sul server e sulle macchine client in modo che l'ora sia la stessa. - + CSync could not detect the filesystem type. CSync non è riuscito a individuare il tipo di filesystem. - + CSync got an error while processing internal trees. Errore di CSync durante l'elaborazione degli alberi interni. - + CSync failed to reserve memory. CSync non è riuscito a riservare la memoria. - + CSync fatal parameter error. Errore grave di parametro di CSync. - + CSync processing step update failed. La fase di aggiornamento di CSync non è riuscita. - + CSync processing step reconcile failed. La fase di riconciliazione di CSync non è riuscita. - + CSync processing step propagate failed. La fase di propagazione di CSync non è riuscita. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>La cartella di destinazione non esiste.</p><p>Controlla la configurazione della sincronizzazione.</p> - + A remote file can not be written. Please check the remote access. Un file remoto non può essere scritto. Controlla l'accesso remoto. - + The local filesystem can not be written. Please check permissions. Il filesystem locale non può essere scritto. Controlla i permessi. - + CSync failed to connect through a proxy. CSync non è riuscito a connettersi tramite un proxy. - + CSync could not authenticate at the proxy. CSync non è in grado di autenticarsi al proxy. - + CSync failed to lookup proxy or server. CSync non è riuscito a trovare un proxy o server. - + CSync failed to authenticate at the %1 server. CSync non è riuscito ad autenticarsi al server %1. - + CSync failed to connect to the network. CSync non è riuscito a connettersi alla rete. - - A network connection timeout happend. - Si è verificato un timeout sulla connessione alla rete. + + A network connection timeout happened. + Si è verificato un timeout della connessione di rete. - + A HTTP transmission error happened. Si è verificato un errore di trasmissione HTTP. - + CSync failed due to not handled permission deniend. Problema di CSync dovuto alla mancata gestione dei permessi. - + CSync failed to access CSync non è riuscito ad accedere - + CSync tried to create a directory that already exists. CSync ha cercato di creare una cartella già esistente. - - + + CSync: No space on %1 server available. CSync: spazio insufficiente sul server %1. - + CSync unspecified error. Errore non specificato di CSync. - + Aborted by the user Interrotto dall'utente - + An internal error number %1 happened. SI è verificato un errore interno numero %1. - + The item is not synced because of previous errors: %1 L'elemento non è sincronizzato a causa dell'errore precedente: %1 @@ -1945,15 +1954,61 @@ Prova a sincronizzare nuovamente. Il file contiene caratteri non validi che non possono essere sincronizzati su diverse piattaforme. - + Unable to initialize a sync journal. Impossibile inizializzare il registro di sincronizzazione. - + Cannot open the sync journal Impossibile aprire il registro di sincronizzazione + + + Not allowed because you don't have permission to add sub-directories in that directory + Non consentito poiché non disponi dei permessi per aggiungere sottocartelle in quella cartella + + + + Not allowed because you don't have permission to add parent directory + Non consentito poiché non disponi dei permessi per aggiungere la cartella superiore + + + + Not allowed because you don't have permission to add files in that directory + Non consentito poiché non disponi dei permessi per aggiungere file in quella cartella + + + + Not allowed to upload this file because it is read-only on the server, restoring + Il caricamento di questo file non è consentito poiché è in sola lettura sul server, ripristino + + + + + Not allowed to remove, restoring + Rimozione non consentita, ripristino + + + + Move not allowed, item restored + Spostamento non consentito, elemento ripristinato + + + + Move not allowed because %1 is read-only + Spostamento non consentito poiché %1 è in sola lettura + + + + the destination + la destinazione + + + + the source + l'origine + Mirall::Systray @@ -1966,7 +2021,7 @@ Prova a sincronizzare nuovamente. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versione %1 Per ulteriori informazioni visita <a href='%2'>%3</a>. </p><p>Copyright ownCloud, Inc.<p><p>Distribuito da %4 e sotto licenza GNU General Public License (GPL) versione 2.0.<br>%5 e il logo %5 sono marchi registrati di %4 negli <br>Stati Uniti, in altri paesi, o entrambi.</p> @@ -1974,47 +2029,47 @@ Prova a sincronizzare nuovamente. Mirall::ownCloudGui - + Please sign in Accedi - + Disconnected from server Disconnesso dal server - + Folder %1: %2 Cartella %1: %2 - + No sync folders configured. Nessuna cartella configurata per la sincronizzazione. - + None. Nessuna. - + Recent Changes Modifiche recenti - + Open %1 folder Apri la cartella %1 - + Managed Folders: Cartelle gestite: - + Open folder '%1' Apri la cartella '%1' @@ -2081,12 +2136,12 @@ Prova a sincronizzare nuovamente. Syncing %1 of %2 (%3 left) - + Sincronizzazione di %1 di %2 (%3 rimanenti) Syncing %1 (%2 left) - + Sincronizzazione di %1 (%2 rimanenti) @@ -2298,27 +2353,27 @@ Prova a sincronizzare nuovamente. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2339,7 +2394,7 @@ Prova a sincronizzare nuovamente. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Se non hai ancora un server ownCloud, visita <a href="https://owncloud.com">owncloud.com</a> per ulteriori informazioni. @@ -2348,12 +2403,12 @@ Prova a sincronizzare nuovamente. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Compilato dalla revisione Git <a href="%1">%2</a> il %3, %4 utilizzando Qt %5.</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versione %2. Per ulteriori informazioni, visita <a href="%3">%4</a></p><p><small>scritto da Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc..<br>Basato su Mirall di Duncan Mac-Vicar P.</small></p>%7 @@ -2442,57 +2497,57 @@ Prova a sincronizzare nuovamente. theme - + Status undefined Stato non definito - + Waiting to start sync In attesa di sincronizzazione - + Sync is running La sincronizzazione è in corso - + Sync Success Sincronizzazione completata - + Sync Success, some files were ignored. Sincronizzazione avvenuta, alcuni file sono stati ignorati. - + Sync Error Errore di sincronizzazione - + Setup Error Errore di configurazione - + The server is currently unavailable Il server è attualmente non disponibile. - + Preparing to sync Preparazione della sincronizzazione - + Aborting... Interruzione in corso... - + Sync is paused La sincronizzazione è sospesa diff --git a/translations/mirall_ja.ts b/translations/mirall_ja.ts index fa16f0ac6..42ce34dbf 100644 --- a/translations/mirall_ja.ts +++ b/translations/mirall_ja.ts @@ -144,28 +144,28 @@ <p>本当にフォルダー <i>%1</i> をリセットしてクライアントのデータベースを再構築しますか?</p><p><b>注意:</b>この機能は保守目的のためだけにデザインされています。ファイルは削除されませんが、完了するまでにデータ通信が明らかに増大し、数分、あるいはフォルダーのサイズによっては数時間かかります。このオプションは管理者に指示された場合にのみ使用してください。 - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) / %2 使用中のサーバー領域 - + No connection to %1 at <a href="%2">%3</a>. <a href="%2">%3</a> に %1 への接続がありません。 - + No %1 connection configured. %1 の接続は設定されていません。 - + Sync Running 同期を実行中 @@ -175,34 +175,35 @@ アカウントが未設定です。 - + The syncing operation is running.<br/>Do you want to terminate it? 同期作業を実行中です。<br/>終了しますか? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%4 中 %3) 残り時間 %5 利用帯域 %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + %2 のうち %1 , ファイル %4 のうち %3 +残り時間 %5 - + Connected to <a href="%1">%2</a>. <a href="%1">%2</a> へ接続しました。 - + Connected to <a href="%1">%2</a> as <i>%3</i>. <a href="%1">%2</a> に <i>%3</i> として接続 - + Currently there is no storage usage information available. 現在、利用できるストレージ利用状況はありません。 @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured ownCloud アカウントが設定されていません - + The configured server for this client is too old このクライアントのサーバー設定は古すぎます。 - + Please update to the latest server and restart the client. サーバーを最新にアップデートして、クライアントを再起動してください。 - + Unable to connect to %1 %1 に接続できません - + The provided credentials are not correct 入力された資格情報が正しくありません @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context csync-context を作成できません - + Local folder %1 does not exist. ローカルフォルダー %1 は存在しません。 - + %1 should be a directory but is not. %1 はディレクトリのはずですが、そうではないようです。 - + %1 is not readable. %1 は読み込み可能ではありません。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 と他 %2 個のファイルが削除されました。 - + %1 has been removed. %1 names a file. %1 は削除されました。 - + %1 and %2 other files have been downloaded. %1 names a file. %1 と他 %2 個のファイルがダウンロードされました。 - + %1 has been downloaded. %1 names a file. %1 はダウンロードされました。 - + %1 and %2 other files have been updated. %1 と他 %2 個のファイルが更新されました。 - + %1 has been updated. %1 names a file. %1 が更新されました。 - + %1 has been renamed to %2 and %3 other files have been renamed. %1 の名前が %2 に変更され、他 %3 個のファイルの名前が変更されました。 - + %1 has been renamed to %2. %1 and %2 name files. %1 の名前が %2 に変更されました。 - + %1 has been moved to %2 and %3 other files have been moved. %1 が %2 に移され、他 %3 個のファイルが移されました。 - + %1 has been moved to %2. %1 は %2 に移されました。 - + Sync Activity 同期アクティビティ - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - この同期により、ローカルの同期フォルダー '%1'にある全ファイルが削除されます。 -あなた、または管理者がサーバー上のアカウントをリセットした場合、「ファイルを残す」を選んでください。データを削除したい場合は、「すべてのファイルを削除」を選んでください。 - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Are you sure you want to perform this operation? 本当にこの操作を実行しますか? - + Remove All Files? すべてのファイルを削除しますか? - + Remove all files すべてのファイルを削除 - + Keep files ファイルを残す @@ -381,67 +375,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state フォルダーの状態をリセットできませんでした - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. 古い同期ジャーナル '%1' が見つかりましたが、削除できませんでした。それを現在使用しているアプリケーションが存在しないか確認してください。 - + Undefined State. 未定義の状態。 - + Waits to start syncing. 同期開始を待機中 - + Preparing for sync. 同期の準備中。 - + Sync is running. 同期を実行中です。 - + Server is currently not available. サーバーは現在利用できません。 - + Last Sync was successful. 最後の同期は成功しました。 - + Last Sync was successful, but with warnings on individual files. 最新の同期は成功しました。しかし、いくつかのファイルで問題がありました。 - + Setup Error. 設定エラー。 - + User Abort. ユーザーによる中止。 - + Sync is paused. 同期を一時停止しました。 - + %1 (Sync is paused) %1 (同期を一時停止) @@ -468,8 +462,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder フォルダーを追加 @@ -545,42 +539,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder リモートフォルダーを追加 - + Enter the name of the new folder: 新しいフォルダー名を入力: - + Folder was successfully created on %1. %1 にフォルダーが作成されました。 - + Failed to create the folder on %1. Please check manually. %1 にフォルダーを作成できませんでした。手作業で確認してください。 - + Choose this to sync the entire account アカウント全体を同期する場合はこちらを選択 - + This folder is already being synced. このフォルダーはすでに同期されています。 - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. <i>%1</i>は、<i>%2</i>の親フォルダーですでに同期しています。 - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. すべてのファイルはすでに同期されています。他のフォルダーの同期は<b>サポートしていません</>。複数のフォルダーを同期したい場合は、現在設定されているルートフォルダー同期設定を削除してください。 @@ -597,17 +591,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway サーバーからE-Tagを受信できません。プロキシ/ゲートウェイを確認してください。 - + We received a different E-Tag for resuming. Retrying next time. 同期再開時に違う E-Tagを受信しました。次回リトライします。 - + + Server returned wrong content-range + サーバーが間違ったcontent-rangeを返しました + + + Connection Timeout 接続タイムアウト @@ -621,7 +620,7 @@ Are you sure you want to perform this operation? - General Setttings + General Settings 一般設定 @@ -659,12 +658,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password パスワードを入力してください - + Please enter %1 password for user '%2': ユーザー '%2' の %1 パスワードを入力してください: @@ -806,7 +805,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> <p>%1 クライアントの新しいバージョンが利用可能です。</p><p><b>%2</b> がダウンロード可能です。インストールされているバージョンは %3 です。<p> @@ -961,8 +960,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - 新しいバージョン %1 が利用可能です。インストールするには、システムアップデートツールを利用してください。 + New version %1 available. Please use the system's update tool to install it. + 新しいバージョン %1 が利用可能です。インストールするには、システムのアップデートツールを利用してください。 @@ -1075,7 +1074,7 @@ It is not advisable to use it. 接続に失敗 - + Update %1 server %1 サーバーをアップデート @@ -1083,126 +1082,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed フォルダー名の変更に失敗しました。 - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>ローカルの同期フォルダー %1 は正常に作成されました!</b></font> - + Trying to connect to %1 at %2... %2 の %1 へ接続を試みています... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">正常に %1 へ接続されました:%2 バージョン %3 (%4)</font><br/><br/> - + Error: Wrong credentials. エラー:資格情報が間違っています。 - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> ローカルの同期フォルダー %1 はすでに存在するため、同期の設定をしてください。<br/><br/> - + Creating local sync folder %1... ローカルの同期フォルダー %1 を作成中... - + ok OK - + failed. 失敗。 - + Could not create local folder %1 ローカルフォルダー %1 を作成できませんでした - - + + Failed to connect to %1 at %2:<br/>%3 %2 の %1 に接続に失敗:<br/>%3 - + No remote folder specified! リモートフォルダーが指定されていません! - + Error: %1 エラー: %1 - + creating folder on ownCloud: %1 ownCloud上にフォルダーを作成中: %1 - + Remote folder %1 created successfully. リモートフォルダー %1 は正常に生成されました。 - + The remote folder %1 already exists. Connecting it for syncing. リモートフォルダー %1 はすでに存在します。同期のために接続しています。 - - + + The folder creation resulted in HTTP error code %1 フォルダーの作成はHTTPのエラーコード %1 で終了しました - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> 指定された資格情報が間違っているため、リモートフォルダーの作成に失敗しました!<br/>前に戻って資格情報を確認してください。</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">おそらく資格情報が間違っているため、リモートフォルダーの作成に失敗しました。</font><br/>前に戻り、資格情報をチェックしてください。</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. リモートフォルダー %1 の作成がエラーで失敗しました。<tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. %1 からリモートディレクトリ %2 への同期接続を設定しました。 - + Successfully connected to %1! %1への接続に成功しました! - + Connection to %1 could not be established. Please check again. %1 への接続を確立できませんでした。もう一度確認してください。 - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. フォルダーまたはその中にあるファイルが他のプログラムで開かれているため、フォルダーの削除やバックアップができません。フォルダーまたはファイルを閉じてから再試行するか、セットアップをキャンセルしてください。 @@ -1210,7 +1209,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 接続ウィザード @@ -1254,12 +1253,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. 同期はユーザーによって中止されました。 - + No E-Tag received from server, check Proxy/Gateway サーバーからE-Tagを受信できません。プロキシ/ゲートウェイを確認してください。 @@ -1269,7 +1268,12 @@ It is not advisable to use it. 同期再開時に違う E-Tagを受信しました。次回リトライします。 - + + Server returned wrong content-range + サーバーが間違ったcontent-rangeを返しました + + + File %1 can not be downloaded because of a local file name clash! ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! @@ -1277,7 +1281,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! ファイル %1 はローカルファイル名が衝突しているためダウンロードできません! @@ -1285,7 +1289,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; 復元に失敗: + + + A file or directory was removed from a read only share, but restoring failed: %1 ファイルまたはディレクトリが読み込み専用の共有から削除されましたが、復元に失敗しました: %1 @@ -1293,12 +1302,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 注意: %1 で大文字小文字が競合している可能性 - + could not create directory %1 ディレクトリ %1 を作成できませんでした @@ -1319,7 +1328,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash ファイル %1 はローカルファイル名が衝突しているため %2 に名前を変更できません @@ -1327,7 +1336,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. ファイルが読み込み専用の共有から削除されました。ファイルは復元されました。 @@ -1335,17 +1344,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. このフォルダー名は変更できません。元の名前に戻します。 - + This folder must not be renamed. Please name it back to Shared. このフォルダー名は変更できません。名前を Shared に戻してください。 - + The file was renamed but is part of a read only share. The original file was restored. ファイルの名前が変更されましたが、読み込み専用の共有の一部です。オリジナルのファイルが復元されました。 @@ -1372,22 +1381,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. ファイルがローカルで編集されましたが、読み込み専用の共有の一部です。ファイルは復元され、あなたの編集は競合するファイル内にあります。 - + The local file was removed during sync. - + ローカルファイルを同期時に削除します。 - + Local file changed during sync. ローカルのファイルが同期中に変更されました。 - + The server did not acknowledge the last chunk. (No e-tag were present) サーバーは最終チャンクを認識しません。(e-tag が存在しません) @@ -1415,62 +1424,62 @@ It is not advisable to use it. 4 - + Time 時刻 - + File ファイル - + Folder フォルダー - + Action アクション - + Size サイズ - + Retry Sync 同期を再実行 - + Copy コピー - + Copy the activity list to the clipboard. アクティビティ一覧をコピーする - + Copied to clipboard クリップボードにコピー - + The sync status has been copied to the clipboard. 同期状況をクリップボードにコピーしました。 - + Currently no files are ignored because of previous errors. 処理前にエラーが発生したため、ファイルは何も除外されていません。 - + %1 files are ignored because of previous errors. Try to sync these again. 処理前にエラーが発生したため、%1 個のファイルが除外されました。 @@ -1513,27 +1522,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 %1 - + Account アカウント - + Activity アクティビティ - + General 一般 - + Network ネットワーク @@ -1541,12 +1550,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error ログインエラー - + You must sign in as user %1 ユーザー %1 としてログインする必要があります @@ -1554,22 +1563,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - 認証 - + Reauthentication required 再認証が必要 - + Your session has expired. You need to re-login to continue to use the client. セッションの期限が切れました。クライアントを使用し続けるには再ログインが必要です。 - + %1 - %2 %1 - %2 @@ -1773,158 +1782,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. 成功。 - + CSync failed to create a lock file. CSyncがロックファイルの作成に失敗しました。 - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSyncはジャーナルファイルの読み込みや作成に失敗しました。ローカルの同期ディレクトリに読み書きの権限があるか確認してください。 - + CSync failed to write the journal file. CSyncはジャーナルファイルの書き込みに失敗しました。 - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>csync 用の %1 プラグインをロードできませんでした。<br/>インストール状態を確認してください!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. このクライアントのシステム時刻はサーバーのシステム時刻と異なります。時刻が同じになるように、クライアントとサーバーの両方で時刻同期サービス(NTP)を実行してください。 - + CSync could not detect the filesystem type. CSyncはファイルシステムタイプを検出できませんでした。 - + CSync got an error while processing internal trees. CSyncは内部ツリーの処理中にエラーに遭遇しました。 - + CSync failed to reserve memory. CSyncで使用するメモリの確保に失敗しました。 - + CSync fatal parameter error. CSyncの致命的なパラメータエラーです。 - + CSync processing step update failed. CSyncの処理ステップの更新に失敗しました。 - + CSync processing step reconcile failed. CSyncの処理ステップの調停に失敗しました。 - + CSync processing step propagate failed. CSyncの処理ステップの伝播に失敗しました。 - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>ターゲットディレクトリは存在しません。</p><p>同期設定を確認してください。</p> - + A remote file can not be written. Please check the remote access. リモートファイルは書き込みできません。リモートアクセスをチェックしてください。 - + The local filesystem can not be written. Please check permissions. ローカルファイルシステムは書き込みができません。パーミッションをチェックしてください。 - + CSync failed to connect through a proxy. CSyncがプロキシ経由での接続に失敗しました。 - + CSync could not authenticate at the proxy. CSyncはそのプロキシで認証できませんでした。 - + CSync failed to lookup proxy or server. CSyncはプロキシもしくはサーバーの参照に失敗しました。 - + CSync failed to authenticate at the %1 server. CSyncは %1 サーバーでの認証に失敗しました。 - + CSync failed to connect to the network. CSyncはネットワークへの接続に失敗しました。 - - A network connection timeout happend. + + A network connection timeout happened. ネットワーク接続のタイムアウトが発生しました。 - + A HTTP transmission error happened. HTTPの伝送エラーが発生しました。 - + CSync failed due to not handled permission deniend. CSyncは対応できないパーミッション拒否が原因で失敗しました。 - + CSync failed to access CSync はアクセスに失敗しました - + CSync tried to create a directory that already exists. CSyncはすでに存在するディレクトリを作成しようとしました。 - - + + CSync: No space on %1 server available. CSync: %1 サーバーには利用可能な空き領域がありません。 - + CSync unspecified error. CSyncの未指定のエラーです。 - + Aborted by the user ユーザーによって中止されました - + An internal error number %1 happened. 内部エラー番号 %1 が発生しました。 - + The item is not synced because of previous errors: %1 このアイテムは、以前にエラーが発生していたため同期させません: %1 @@ -1944,15 +1953,61 @@ It is not advisable to use it. ファイルに無効な文字が含まれているため、クロスプラットフォーム環境での同期ができません。 - + Unable to initialize a sync journal. 同期ジャーナルの初期化ができません。 - + Cannot open the sync journal 同期ジャーナルを開くことができません + + + Not allowed because you don't have permission to add sub-directories in that directory + そのディレクトリにサブディレクトリを追加する権限がありません + + + + Not allowed because you don't have permission to add parent directory + 親ディレクトリを追加する権限がありません + + + + Not allowed because you don't have permission to add files in that directory + そのディレクトリにファイルを追加する権限がありません + + + + Not allowed to upload this file because it is read-only on the server, restoring + サーバーでは読み取り専用となっているため、このファイルをアップロードすることはできません、復元しています + + + + + Not allowed to remove, restoring + 削除できません、復元しています + + + + Move not allowed, item restored + 移動できません、項目を復元しました + + + + Move not allowed because %1 is read-only + %1 は読み取り専用のため移動できません + + + + the destination + 移動先 + + + + the source + 移動元 + Mirall::Systray @@ -1965,7 +2020,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>バージョン %1 詳細については、<a href='%2'>%3</a>をご覧ください。</p><p>著作権 ownCloud, Inc.<p><p>%4 が配布し、 GNU General Public License (GPL) バージョン2.0 の下でライセンスされています。<br>%5 及び %5 のロゴはアメリカ合衆国またはその他の国、あるいはその両方における<br> %4 の登録商標です。</p> @@ -1973,47 +2028,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in サインインしてください - + Disconnected from server サーバーから切断しました - + Folder %1: %2 フォルダー %1: %2 - + No sync folders configured. 同期フォルダーが設定されていません。 - + None. なし - + Recent Changes 最近変更されたファイル - + Open %1 folder %1 フォルダーを開く - + Managed Folders: 管理フォルダー: - + Open folder '%1' フォルダー ’%1’ を開く @@ -2080,12 +2135,12 @@ It is not advisable to use it. Syncing %1 of %2 (%3 left) - + 同期中 %2 中 %1 (残り %3) Syncing %1 (%2 left) - + 同期中 %1 (残り %2) @@ -2297,27 +2352,27 @@ It is not advisable to use it. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2338,7 +2393,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! ownCloudサーバーをまだ所有していない場合は、<a href="https://owncloud.com">owncloud.com</a>で詳細を参照してください。 @@ -2347,12 +2402,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small><a href="%1">%2</a> %3, %4 のGitリビジョンからのビルド Qt %5 を利用</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Version %2. 詳細な情報は、<a href="%3">%4</a>を参照してください。</p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2441,57 +2496,57 @@ It is not advisable to use it. theme - + Status undefined 未定義の状態 - + Waiting to start sync 同期開始を待っています - + Sync is running 同期を実行中 - + Sync Success 同期成功 - + Sync Success, some files were ignored. 同期が完了しました。一部のファイルが除外されました。 - + Sync Error 同期エラー - + Setup Error 設定エラー - + The server is currently unavailable サーバーは現在利用できません - + Preparing to sync 同期の準備中 - + Aborting... 中止しています... - + Sync is paused 同期を一時停止 diff --git a/translations/mirall_nl.ts b/translations/mirall_nl.ts index 7bd39c66f..cb31c5fe0 100644 --- a/translations/mirall_nl.ts +++ b/translations/mirall_nl.ts @@ -144,28 +144,28 @@ <p>Wilt u de map <i>%1</i> echt resetten en de database opnieuw opbouwen?</p><p><b>Let op:</b> Deze functie is alleen ontworpen voor onderhoudsdoeleinden. Hoewel er geen bestanden worden verwijderd, kan dit een aanzienlijke hoeveelheid dataverkeer tot gevolg hebben en minuten tot zelfs uren duren, afhankelijk van de omvang van de map. Gebruik deze functie alleen als dit wordt geadviseerd door uw applicatiebeheerder.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) van %2 serverruimte in gebruik. - + No connection to %1 at <a href="%2">%3</a>. Geen verbinding naar %1 op <a href="%2">%3</a>. - + No %1 connection configured. Geen %1 connectie geconfigureerd. - + Sync Running Bezig met synchroniseren @@ -175,34 +175,35 @@ Geen account ingesteld. - + The syncing operation is running.<br/>Do you want to terminate it? Bezig met synchroniseren.<br/>Wil je stoppen met synchroniseren? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 of %4) %5 over bij een snelheid van %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + %1 van %2, file %3 van %4 +Totaal resterende tijd %5 - + Connected to <a href="%1">%2</a>. Verbonden met <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Verbonden met <a href="%1">%2</a> als <i>%3</i>. - + Currently there is no storage usage information available. Er is nu geen informatie over het gebruik van de opslagruimte beschikbaar. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Geen ownCloud-account geconfigureerd - + The configured server for this client is too old De voor dit programma ingestelde server is te oud - + Please update to the latest server and restart the client. Werk update de server naar de nieuwste versie en herstart het programma. - + Unable to connect to %1 Niet in staat om verbinding te maken met %1 - + The provided credentials are not correct De verstrekte inloggegevens zijn niet juist @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Onmogelijk om een csync-context te maken - + Local folder %1 does not exist. Lokale map %1 bestaat niet. - + %1 should be a directory but is not. %1 zou een map moeten zijn, maar is dit niet. - + %1 is not readable. %1 is niet leesbaar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 en %2 andere bestanden zijn verwijderd. - + %1 has been removed. %1 names a file. %1 is verwijderd. - + %1 and %2 other files have been downloaded. %1 names a file. %1 en %2 andere bestanden zijn gedownloaded. - + %1 has been downloaded. %1 names a file. %1 is gedownloaded. - + %1 and %2 other files have been updated. %1 en %2 andere bestanden zijn bijgewerkt. - + %1 has been updated. %1 names a file. %1 is bijgewerkt. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 is hernoemd naar %2 en %3 andere bestanden zijn ook hernoemd. - + %1 has been renamed to %2. %1 and %2 name files. %1 is hernoemd naar %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 is verplaatst naar %2 en %3 andere bestanden zijn ook verplaatst. - + %1 has been moved to %2. %1 is verplaatst naar %2. - + Sync Activity Synchronisatie-activiteit - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Deze synchronisatie verwijdert alle bestanden in lokale synchronisatiemap '%1'. -Als u of uw beheerder uw account op de server heeft gereset, kies dan "Bewaar bestanden". Als u uw bestanden wilt verwijderen, kies dan "Verwijder alle bestanden". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Dit kan komen doordat de map ongemerkt gereconfigureerd is of doordat alle besta Weet u zeker dat u deze bewerking wilt uitvoeren? - + Remove All Files? Verwijder alle bestanden? - + Remove all files Verwijder alle bestanden - + Keep files Bewaar bestanden @@ -381,67 +375,67 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::FolderMan - + Could not reset folder state Kan de beginstaat van de map niet terugzetten - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Een oud synchronisatieverslag '%1' is gevonden maar kan niet worden verwijderd. Zorg ervoor dat geen applicatie dit bestand gebruikt. - + Undefined State. Ongedefiniëerde staat - + Waits to start syncing. In afwachting van synchronisatie. - + Preparing for sync. Synchronisatie wordt voorbereid - + Sync is running. Bezig met synchroniseren. - + Server is currently not available. De server is nu niet beschikbaar. - + Last Sync was successful. Laatste synchronisatie was succesvol. - + Last Sync was successful, but with warnings on individual files. Laatste synchronisatie geslaagd, maar met waarschuwingen over individuele bestanden. - + Setup Error. Installatiefout. - + User Abort. Afgebroken door gebruiker. - + Sync is paused. Synchronisatie gepauzeerd. - + %1 (Sync is paused) %1 (Synchronisatie onderbroken) @@ -468,8 +462,8 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::FolderWizard - - + + Add Folder Voeg Map Toe @@ -545,42 +539,42 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::FolderWizardRemotePath - + Add Remote Folder Voeg externe map toe - + Enter the name of the new folder: Voer de naam in van de nieuwe map: - + Folder was successfully created on %1. Map is succesvol aangemaakt op %1. - + Failed to create the folder on %1. Please check manually. Aanmaken van de map op %1 mislukt.<br/>Controleer handmatig. - + Choose this to sync the entire account Kies dit om uw volledige account te synchroniseren - + This folder is already being synced. Deze map is al gesynchroniseerd. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. U synchroniseert <i>%1</i> al, dat is de bovenliggende map van <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. U bent al uw bestanden al aan het synchroniseren.Het synchroniseren van een andere map wordt <b>niet</b> ondersteund. Als u meerdere mappen wilt synchroniseren moet u de nu geconfigureerde synchronisatie hoofdmap verwijderen. @@ -597,17 +591,22 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Geen E-Tag ontvangen van de server, controleer Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. We ontvingen een afwijkende E-Tag om door te gaan. We proberen het later opnieuw. - + + Server returned wrong content-range + Server retourneerde verkeerde content-bandbreedte + + + Connection Timeout Verbindingstime-out @@ -621,8 +620,8 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? - General Setttings - Algemene Instellingen + General Settings + Algemene instellingen @@ -659,12 +658,12 @@ Weet u zeker dat u deze bewerking wilt uitvoeren? Mirall::HttpCredentials - + Enter Password Vul het wachtwoord in - + Please enter %1 password for user '%2': Vul het %1 wachtwoord in voor gebruiker '%2': @@ -806,8 +805,8 @@ Aangevinkte onderdelen zullen ook gewist worden als ze anders verhinderen dat ee - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Er is een nieuwe versie van de %1-client.</p><p><b>%2</b> kan gedownload worden. De geïnstalleerde versie is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Er is een nieuwe versie van de %1 Client beschikbaar.</p><p><b>%2</b> is beschikbaar voor download. De geïnstalleerde versie is %3.</p> @@ -962,8 +961,8 @@ vragen om extra autorisaties tijdens installatie. - New version %1 available. Please use the systems update tool to install it. - Nieuwe versie %1 beschikbaar. Gebruik de Bijwerkapplicatie voor installeren ervan. + New version %1 available. Please use the system's update tool to install it. + Nieuwe versie %1 beschikbaar. Gebruik de systeemupdate tool om te installeren. @@ -1077,7 +1076,7 @@ We adviseren deze site niet te gebruiken. Verbinding mislukt - + Update %1 server Bijwerken %1 server @@ -1085,126 +1084,126 @@ We adviseren deze site niet te gebruiken. Mirall::OwncloudSetupWizard - + Folder rename failed Hernoemen map mislukt - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Lokale synch map %1 is succesvol aangemaakt!</b></font> - + Trying to connect to %1 at %2... Probeer te verbinden met %1 om %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Succesvol verbonden met %1: %2 versie %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Fout: Verkeerde inloggegevens - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Lokale synch map %1 bestaat al, deze wordt ingesteld voor synchronisatie.<br/><br/> - + Creating local sync folder %1... Maak lokale synchronisatiemap %1... - + ok ok - + failed. mislukt. - + Could not create local folder %1 Kon lokale map %1 niet aanmaken - - + + Failed to connect to %1 at %2:<br/>%3 Kon geen verbinding maken met %1 op %2:<br/>%3 - + No remote folder specified! Geen externe map opgegeven! - + Error: %1 Fout: %1 - + creating folder on ownCloud: %1 aanmaken map op ownCloud: %1 - + Remote folder %1 created successfully. Externe map %1 succesvol gecreërd. - + The remote folder %1 already exists. Connecting it for syncing. De remote map %1 bestaat al. Verbinden voor synchroniseren. - - + + The folder creation resulted in HTTP error code %1 Het aanmaken van de map resulteerde in HTTP foutcode %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Het aanmaken van de remote map is mislukt, waarschijnlijk omdat uw inloggegevens fout waren.<br/>Ga terug en controleer uw inloggegevens.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Het aanmaken van de remote map is mislukt, waarschijnlijk omdat uw inloggegevens fout waren.</font><br/>ga terug en controleer uw inloggevens.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Aanmaken van remote map %1 mislukt met fout <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Er is een sync verbinding van %1 naar remote directory %2 opgezet. - + Successfully connected to %1! Succesvol verbonden met %1! - + Connection to %1 could not be established. Please check again. Verbinding met %1 niet geslaagd. Probeer het nog eens. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Kan de map niet verwijderen en backuppen, omdat de map of een bestand daarin, geopend is in een ander programma. Sluit de map of het bestand en drup op Opnieuw of annuleer de installatie. @@ -1212,7 +1211,7 @@ We adviseren deze site niet te gebruiken. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Verbindingswizard @@ -1256,12 +1255,12 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronisatie afgebroken door gebruiker. - + No E-Tag received from server, check Proxy/Gateway Geen E-Tag ontvangen van de server, controleer Proxy/Gateway @@ -1271,7 +1270,12 @@ We adviseren deze site niet te gebruiken. We ontvingen een afwijkende E-Tag om door te gaan. We proberen het later opnieuw. - + + Server returned wrong content-range + Server retourneerde verkeerde content-bandbreedte + + + File %1 can not be downloaded because of a local file name clash! Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand @@ -1279,7 +1283,7 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Bestand %1 kan niet worden gedownload omdat de naam conflicteert met een lokaal bestand @@ -1287,7 +1291,12 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Herstel mislukte: + + + A file or directory was removed from a read only share, but restoring failed: %1 Er is een bestand of map verwijderd van een alleen-lezen share, maar herstellen is mislukt: %1 @@ -1295,12 +1304,12 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Let op, mogelijk conflict hoofdlettergevoeligheid met 1% - + could not create directory %1 kon map %1 niet maken @@ -1321,7 +1330,7 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Bestand %1 kan niet worden hernoemd naar %2, omdat de naam conflicteert met een lokaal bestand @@ -1329,7 +1338,7 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Het bestand is verwijderd van een alleen-lezen share. Het is teruggezet. @@ -1337,17 +1346,17 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Deze map mag niet worden hernoemd. De naam van de map is teruggezet naar de originele naam. - + This folder must not be renamed. Please name it back to Shared. Deze map mag niet worden hernoemd. Verander de naam terug in Gedeeld. - + The file was renamed but is part of a read only share. The original file was restored. Het bestand is hernoemd, maar hoort bij een alleen-lezen share. Het originele bestand is teruggezet. @@ -1374,22 +1383,22 @@ We adviseren deze site niet te gebruiken. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Het bestand is lokaal bewerkt, maar hoort bij een alleen-lezen share. Het originele bestand is teruggezet en uw bewerking staat in het conflicten bestand. - + The local file was removed during sync. - + Het lokale bestand werd verwijderd tijdens sync. - + Local file changed during sync. Lokaal bestand gewijzigd bij sync. - + The server did not acknowledge the last chunk. (No e-tag were present) De server heeft het laatste deel niet bevestigd (er was geen e-tag aanwezig) @@ -1417,62 +1426,62 @@ We adviseren deze site niet te gebruiken. 4 - + Time Tijd - + File Bestand - + Folder Map - + Action Handeling - + Size Grootte - + Retry Sync Synchroniseer opnieuw - + Copy Kopiëren - + Copy the activity list to the clipboard. Kopieer de activiteitenlijst naar het klembord. - + Copied to clipboard Gekopieerd naar het klembord - + The sync status has been copied to the clipboard. Het synchronisatie overzicht is gekopieerd naar het klembord. - + Currently no files are ignored because of previous errors. Er zijn nu geen bestanden genegeerd vanwege eerdere fouten. - + %1 files are ignored because of previous errors. Try to sync these again. %1 bestanden zijn genegeerd vanwege eerdere fouten. @@ -1515,27 +1524,27 @@ Probeer opnieuw te synchroniseren. Mirall::SettingsDialogMac - + %1 %1 - + Account Account - + Activity Activiteit - + General Algemeen - + Network Netwerk @@ -1543,12 +1552,12 @@ Probeer opnieuw te synchroniseren. Mirall::ShibbolethCredentials - + Login Error Inlogfout - + You must sign in as user %1 U moet inloggen als gebruiker %1 @@ -1556,22 +1565,22 @@ Probeer opnieuw te synchroniseren. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - authenticeren - + Reauthentication required Hernieuwde authenticatie nodig - + Your session has expired. You need to re-login to continue to use the client. Uw sessie is verstreken. U moet opnieuw inloggen om de client-applicatie te gebruiken. - + %1 - %2 %1 - %2 @@ -1775,158 +1784,158 @@ Probeer opnieuw te synchroniseren. Mirall::SyncEngine - + Success. Succes. - + CSync failed to create a lock file. CSync kon geen lock file maken. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync kon het journal bestand niet maken of lezen. Controleer of u de juiste lees- en schrijfrechten in de lokale syncmap hebt. - + CSync failed to write the journal file. CSync kon het journal bestand niet wegschrijven. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>De %1 plugin voor csync kon niet worden geladen.<br/>Verifieer de installatie!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. De systeemtijd van deze client wijkt af van de systeemtijd op de server. Gebruik een tijdsynchronisatieservice (NTP) op zowel de server als de client, zodat de machines dezelfde systeemtijd hebben. - + CSync could not detect the filesystem type. CSync kon het soort bestandssysteem niet bepalen. - + CSync got an error while processing internal trees. CSync kreeg een fout tijdens het verwerken van de interne mappenstructuur. - + CSync failed to reserve memory. CSync kon geen geheugen reserveren. - + CSync fatal parameter error. CSync fatale parameter fout. - + CSync processing step update failed. CSync verwerkingsstap bijwerken mislukt. - + CSync processing step reconcile failed. CSync verwerkingsstap verzamelen mislukt. - + CSync processing step propagate failed. CSync verwerkingsstap doorzetten mislukt. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>De doelmap bestaat niet.</p><p>Controleer de synchinstellingen.</p> - + A remote file can not be written. Please check the remote access. Een extern bestand kon niet worden weggeschreven. Controleer de externe rechten. - + The local filesystem can not be written. Please check permissions. Er kan niet worden geschreven naar het lokale bestandssysteem. Controleer de schrijfrechten. - + CSync failed to connect through a proxy. CSync kon niet verbinden via een proxy. - + CSync could not authenticate at the proxy. CSync kon niet authenticeren bij de proxy. - + CSync failed to lookup proxy or server. CSync kon geen proxy of server vinden. - + CSync failed to authenticate at the %1 server. CSync kon niet authenticeren bij de %1 server. - + CSync failed to connect to the network. CSync kon niet verbinden met het netwerk. - - A network connection timeout happend. - verbindingstime-out + + A network connection timeout happened. + Er trad een netwerk time-out op. - + A HTTP transmission error happened. Er trad een HTTP transmissiefout plaats. - + CSync failed due to not handled permission deniend. CSync mislukt omdat de benodigde toegang werd geweigerd. - + CSync failed to access CSync kreeg geen toegang - + CSync tried to create a directory that already exists. CSync probeerde een al bestaande directory aan te maken. - - + + CSync: No space on %1 server available. CSync: Geen ruimte op %1 server beschikbaar. - + CSync unspecified error. CSync ongedefinieerde fout. - + Aborted by the user Afgebroken door de gebruiker - + An internal error number %1 happened. Interne fout nummer %1 opgetreden. - + The item is not synced because of previous errors: %1 Dit onderwerp is niet gesynchroniseerd door eerdere fouten: %1 @@ -1946,15 +1955,61 @@ Probeer opnieuw te synchroniseren. Bestand bevat ongeldige karakters die niet tussen platformen gesynchroniseerd kunnen worden. - + Unable to initialize a sync journal. Niet in staat om een synchornisatie journaal te starten. - + Cannot open the sync journal Kan het sync journal niet openen + + + Not allowed because you don't have permission to add sub-directories in that directory + Niet toegestaan, omdat u geen rechten hebt om sub-directories aan te maken in die directory + + + + Not allowed because you don't have permission to add parent directory + Niet toegestaan, omdat u geen rechten hebt om een bovenliggende directories toe te voegen + + + + Not allowed because you don't have permission to add files in that directory + Niet toegestaan, omdat u geen rechten hebt om bestanden in die directory toe te voegen + + + + Not allowed to upload this file because it is read-only on the server, restoring + Niet toegestaan om dit bestand te uploaden, omdat het alleen-lezen is op de server, herstellen + + + + + Not allowed to remove, restoring + Niet toegestaan te verwijderen, herstellen + + + + Move not allowed, item restored + Verplaatsen niet toegestaan, object hersteld + + + + Move not allowed because %1 is read-only + Verplaatsen niet toegestaan omdat %1 alleen-lezen is + + + + the destination + bestemming + + + + the source + bron + Mirall::Systray @@ -1967,7 +2022,7 @@ Probeer opnieuw te synchroniseren. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versie %1 Voor meer informatie bezoekt u <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Gedistribueer door %4 en verstrekt onder de GNU General Public License (GPL) Versie 2.0.<br>%5 en het %5 logo zijn geregistereerde handelsmerken van %4 in de<br>Verenigde Staten, andere landen, of beide.</p> @@ -1975,47 +2030,47 @@ Probeer opnieuw te synchroniseren. Mirall::ownCloudGui - + Please sign in Log alstublieft in - + Disconnected from server Verbinding met server verbroken - + Folder %1: %2 Map %1: %2 - + No sync folders configured. Geen synchronisatie-mappen geconfigureerd. - + None. Geen. - + Recent Changes Recente wijzigingen - + Open %1 folder Open %1 map - + Managed Folders: Beheerde mappen: - + Open folder '%1' Open map '%1' @@ -2082,12 +2137,12 @@ Probeer opnieuw te synchroniseren. Syncing %1 of %2 (%3 left) - + Sync %1 van %2 (%3 over) Syncing %1 (%2 left) - + Sync %1 (%2 over) @@ -2299,27 +2354,27 @@ Probeer opnieuw te synchroniseren. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2340,7 +2395,7 @@ Probeer opnieuw te synchroniseren. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Bezoek <a href="https://owncloud.com">owncloud.com</a> als u nog geen ownCloud-server heeft. @@ -2349,12 +2404,12 @@ Probeer opnieuw te synchroniseren. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Gebouwd vanaf Git revisie <a href="%1">%2</a> op %3, %4 gebruik makend van Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versie %2. Bezoek voor meer informatie <a href="%3">%4</a></p><p><small>Geschreven door Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Gebaseerd op Mirall van Duncan Mac-Vicar P.</small></p>%7 @@ -2443,57 +2498,57 @@ Probeer opnieuw te synchroniseren. theme - + Status undefined Ongedefinieerde status - + Waiting to start sync Synchronisatie in afwachting - + Sync is running Bezig met synchroniseren - + Sync Success Synchronisatie geslaagd - + Sync Success, some files were ignored. Synchronisatie geslaagd, sommige bestabnden werden genegeerd. - + Sync Error Synchronisatie fout - + Setup Error Installatiefout - + The server is currently unavailable Server is op dit moment niet beschikbaar. - + Preparing to sync Voorbereiden synchronisatie - + Aborting... Aan het afbreken... - + Sync is paused Sync is gepauzeerd diff --git a/translations/mirall_pl.ts b/translations/mirall_pl.ts index 4e3fc63a1..aeccc1f94 100644 --- a/translations/mirall_pl.ts +++ b/translations/mirall_pl.ts @@ -144,28 +144,28 @@ <p>Czy rzeczywiście chcesz zresetować folder <i>%1</i> i przebudować bazę klientów?</p><p><b>Uwaga:</b> Ta funkcja została przewidziana wyłącznie do czynności technicznych. Nie zostaną usunięte żadne pliki, ale może to spowodować znaczący wzrost ruchu sieciowego i potrwać kilka minut lub godzin, w zależności od rozmiaru folderu. Używaj tej opcji wyłącznie, jeśli Twój administrator doradził Ci takie działanie.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) z %2 przestrzeni na serwerze w użyciu. - + No connection to %1 at <a href="%2">%3</a>. Brak połączenia do %1 na <a href="%2">%3</a>. - + No %1 connection configured. Połączenie %1 nie skonfigurowane. - + Sync Running Synchronizacja uruchomiona @@ -175,34 +175,35 @@ Brak skonfigurowanych kont. - + The syncing operation is running.<br/>Do you want to terminate it? Operacja synchronizacji jest uruchomiona.<br>Czy chcesz ją zakończyć? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + %1 z %2, plik %3 z %4 +Pozostało czasu %5 - + Connected to <a href="%1">%2</a>. Podłączony do <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Podłączony do <a href="%1">%2</a> jako <i>%3</i>. - + Currently there is no storage usage information available. Obecnie nie ma dostępnych informacji o wykorzystaniu pamięci masowej. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Nie skonfigurowano konta ownCloud - + The configured server for this client is too old Konfigurowany serwer dla tego klienta jest za stary - + Please update to the latest server and restart the client. Proszę zaaktualizować serwer do najnowszej wersji i zrestartować klienta. - + Unable to connect to %1 Nie mogę połączyć się do %1 - + The provided credentials are not correct Podane dane logowania są nieprawidłowe @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Nie można utworzyć kontekstu csync - + Local folder %1 does not exist. Folder lokalny %1 nie istnieje. - + %1 should be a directory but is not. %1 powinien być katalogiem, ale nie jest. - + %1 is not readable. %1 jest nie do odczytu. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 i %2 inne pliki zostały usunięte. - + %1 has been removed. %1 names a file. %1 został usunięty. - + %1 and %2 other files have been downloaded. %1 names a file. %1 i %2 pozostałe pliki zostały ściągnięte. - + %1 has been downloaded. %1 names a file. %1 został ściągnięty. - + %1 and %2 other files have been updated. %1 i %2 inne pliki zostały zaktualizowane. - + %1 has been updated. %1 names a file. %1 został uaktualniony. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 zmienił nazwę na %2 i %3 inne pliki mają zmienione nazwy. - + %1 has been renamed to %2. %1 and %2 name files. %1 zmienił nazwę na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 został zmieniony na %2 i %3 inne pliku zostały przeniesione. - + %1 has been moved to %2. %1 został przeniesiony do %2. - + Sync Activity Aktywności synchronizacji - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Ta synchronizacja usunie wszystkie pliku z lokalnego folderu synchronizacji '%1'. -Jeśli Ty lub Twój administrator zresetowali Twoje konto na serwerze, wybierz "Zachowaj pliki". Jeśli chcesz aby Twoje dane zostały usunięte, wybierz "Usuń wszystkie pliki". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Mogło się tak zdarzyć z powodu niezauważonej rekonfiguracji folderu, lub te Czy jesteś pewien/pewna, że chcesz wykonać tę operację? - + Remove All Files? Usunąć wszystkie pliki? - + Remove all files Usuń wszystkie pliki - + Keep files Pozostaw pliki @@ -381,67 +375,67 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::FolderMan - + Could not reset folder state Nie udało się zresetować stanu folderu - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Stary sync journal '%1' został znaleziony, lecz nie mógł być usunięty. Proszę się upewnić, że żaden program go obecnie nie używa. - + Undefined State. Niezdefiniowany stan - + Waits to start syncing. Czekają na uruchomienie synchronizacji. - + Preparing for sync. Przygotowuję do synchronizacji - + Sync is running. Synchronizacja w toku - + Server is currently not available. Serwer jest obecnie niedostępny. - + Last Sync was successful. Ostatnia synchronizacja zakończona powodzeniem. - + Last Sync was successful, but with warnings on individual files. Ostatnia synchronizacja udana, ale istnieją ostrzeżenia z pojedynczymi plikami. - + Setup Error. Błąd ustawień. - + User Abort. Użytkownik anulował. - + Sync is paused. Synchronizacja wstrzymana - + %1 (Sync is paused) %1 (Synchronizacja jest zatrzymana) @@ -468,8 +462,8 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::FolderWizard - - + + Add Folder Dodaj folder @@ -545,42 +539,42 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::FolderWizardRemotePath - + Add Remote Folder Dodaj zdalny katalog - + Enter the name of the new folder: Wpisz nazwę dla nowego katalogu: - + Folder was successfully created on %1. Folder został utworzony pomyślnie na %1 - + Failed to create the folder on %1. Please check manually. Nie udało się utworzyć folderu na %1. Proszę sprawdzić ręcznie. - + Choose this to sync the entire account Wybierz to, aby zsynchronizować całe konto - + This folder is already being synced. Ten katalog jest już synchronizowany. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Synchronizujesz już <i>%1</i>, który jest folderem nadrzędnym <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Już aktualizujesz wszystkie pliku. Synchronizacja innego folderu <b>nie</b> jest wspierana. Jeśli chcesz synchronizować wiele folderów, proszę usuń aktualnie skonfigurowaną synchronizację folderu głównego. @@ -597,17 +591,22 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nie otrzymano E-Tag z serwera, sprawdź Proxy/Bramę - + We received a different E-Tag for resuming. Retrying next time. Otrzymaliśmy inny E-Tag wznowienia. Spróbuje ponownie następnym razem. - + + Server returned wrong content-range + + + + Connection Timeout Limit czasu połączenia @@ -621,8 +620,8 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? - General Setttings - Główne ustawienie + General Settings + @@ -659,12 +658,12 @@ Czy jesteś pewien/pewna, że chcesz wykonać tę operację? Mirall::HttpCredentials - + Enter Password Wprowadź hasło - + Please enter %1 password for user '%2': Proszę podać %1 hasło dla użytkownika '%2': @@ -806,8 +805,8 @@ Zaznaczone przedmioty także będą usunięte, jeżeli będą przeszkadzać w us - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Nowa wersja klienta %1 jest dostępna.</p><p><b>%2</b>jest dostępna do pobrania. Zainstalowana wersja to %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -962,8 +961,8 @@ poprosić o dodatkowe uprawnienia podczas tego procesu. - New version %1 available. Please use the systems update tool to install it. - Nowa wersja %1 jest dostępna. Aby ją zainstalować, użyj narzędzia systemowego do aktualizacji. + New version %1 available. Please use the system's update tool to install it. + @@ -1077,7 +1076,7 @@ Niezalecane jest jego użycie. Połączenie nie powiodło się - + Update %1 server Zaktualizuj serwer %1 @@ -1085,126 +1084,126 @@ Niezalecane jest jego użycie. Mirall::OwncloudSetupWizard - + Folder rename failed Zmiana nazwy folderu nie powiodła się - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Utworzenie lokalnego folderu synchronizowanego %1 zakończone pomyślnie!</b></font> - + Trying to connect to %1 at %2... Próba połączenia z %1 w %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Udane połączenie z %1: %2 wersja %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Błąd: złe poświadczenia. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Lokalny folder synchronizacji %1 już istnieje. Ustawiam go do synchronizacji.<br/><br/> - + Creating local sync folder %1... Tworzenie lokalnego folderu synchronizowanego %1... - + ok OK - + failed. Błąd. - + Could not create local folder %1 Nie udało się utworzyć lokalnego folderu %1 - - + + Failed to connect to %1 at %2:<br/>%3 Nie udało się połączyć do %1 w %2:<br/>%3 - + No remote folder specified! Nie określono folderu zdalnego! - + Error: %1 Błąd: %1 - + creating folder on ownCloud: %1 tworzę folder na ownCloud: %1 - + Remote folder %1 created successfully. Zdalny folder %1 został utworzony pomyślnie. - + The remote folder %1 already exists. Connecting it for syncing. Zdalny folder %1 już istnieje. Podłączam go do synchronizowania. - - + + The folder creation resulted in HTTP error code %1 Tworzenie folderu spowodowało kod błędu HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Nie udało się utworzyć zdalnego folderu ponieważ podane dane dostępowe są nieprawidłowe!<br/>Wróć i sprawdź podane dane dostępowe.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Tworzenie folderu zdalnego nie powiodło się. Prawdopodobnie dostarczone poświadczenia są błędne.</font><br/>Wróć i sprawdź poświadczenia.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Tworzenie folderu zdalnego %1 nie powiodło się z powodu błędu <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Połączenie synchronizacji z %1 do katalogu zdalnego %2 zostało utworzone. - + Successfully connected to %1! Udane połączenie z %1! - + Connection to %1 could not be established. Please check again. Połączenie z %1 nie może być nawiązane. Sprawdź ponownie. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Nie można usunąć i zarchiwizować folderu ponieważ znajdujący się w nim plik lub folder jest otwarty przez inny program. Proszę zamknąć folder lub plik albo kliknąć ponów lub anuluj setup. @@ -1212,7 +1211,7 @@ Niezalecane jest jego użycie. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Kreator połączeń @@ -1256,12 +1255,12 @@ Niezalecane jest jego użycie. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizacja anulowane przez użytkownika. - + No E-Tag received from server, check Proxy/Gateway Nie otrzymano E-Tag z serwera, sprawdź Proxy/Bramę @@ -1271,7 +1270,12 @@ Niezalecane jest jego użycie. Otrzymaliśmy inny E-Tag wznowienia. Spróbuje ponownie następnym razem. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! @@ -1279,7 +1283,7 @@ Niezalecane jest jego użycie. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Nie można pobrać pliku %1 ze względu na konflikt nazwy pliku lokalnego! @@ -1287,7 +1291,12 @@ Niezalecane jest jego użycie. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 Plik lub katalog został usunięty z udziału z prawem tylko do odczytu, ale przywrócenie nie powiodło się: %1 @@ -1295,12 +1304,12 @@ Niezalecane jest jego użycie. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Uwaga, możliwa niezgodność związana z wielością liter w %1 - + could not create directory %1 nie można utworzyć katalogu %1 @@ -1321,7 +1330,7 @@ Niezalecane jest jego użycie. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Plik %1 nie może być nazwany %2 z powodu kolizji z lokalną nazwą pliku @@ -1329,7 +1338,7 @@ Niezalecane jest jego użycie. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Plik został usunięty z zasobu z prawem tylko do odczytu. Został przywrócony. @@ -1337,17 +1346,17 @@ Niezalecane jest jego użycie. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Folder ten nie może być zmieniony. Został zmieniony z powrotem do pierwotnej nazwy. - + This folder must not be renamed. Please name it back to Shared. Nie wolno zmieniać nazwy tego folderu. Proszę zmień nazwę z powrotem na Shared. - + The file was renamed but is part of a read only share. The original file was restored. Plik był edytowany lokalnie ale jest częścią udziału z prawem tylko do odczytu. Przywrócono oryginalny plik @@ -1374,22 +1383,22 @@ Niezalecane jest jego użycie. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Plik był edytowany lokalnie ale jest częścią udziału z prawem tylko do odczytu. Został przywrócony i Twoja edycja jest w pliku konfliktu - + The local file was removed during sync. - + Local file changed during sync. Lokalny plik zmienił się podczas synchronizacji. - + The server did not acknowledge the last chunk. (No e-tag were present) Serwer nie potwierdził ostatniego łańcucha danych. (Nie było żadnego e-tag-u) @@ -1417,62 +1426,62 @@ Niezalecane jest jego użycie. 4 - + Time Czas - + File Plik - + Folder Folder - + Action Akcja - + Size Rozmiar - + Retry Sync Ponów synchronizację - + Copy Kopiuj - + Copy the activity list to the clipboard. Kopiuj listę aktywności do schowka. - + Copied to clipboard Skopiuj do schowka - + The sync status has been copied to the clipboard. Status synchronizacji został skopiowany do schowka. - + Currently no files are ignored because of previous errors. Obecnie nie ma plików, które są ignorowane z powodu wcześniejszych błędów. - + %1 files are ignored because of previous errors. Try to sync these again. %1 pliki są ignorowane z powodu błędów. @@ -1515,27 +1524,27 @@ Niezalecane jest jego użycie. Mirall::SettingsDialogMac - + %1 %1 - + Account Konto - + Activity Aktywność - + General Ogólne - + Network Sieć @@ -1543,12 +1552,12 @@ Niezalecane jest jego użycie. Mirall::ShibbolethCredentials - + Login Error Błąd logowania - + You must sign in as user %1 Musisz zalogować się jako użytkownik %1 @@ -1556,22 +1565,22 @@ Niezalecane jest jego użycie. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Uwierzytelnienia - + Reauthentication required Wymagana powtórna autoryzacja - + Your session has expired. You need to re-login to continue to use the client. Twoja sesja wygasła. Musisz ponownie się zalogować, aby nadal używać klienta - + %1 - %2 %1 - %2 @@ -1775,158 +1784,158 @@ Niezalecane jest jego użycie. Mirall::SyncEngine - + Success. Sukces. - + CSync failed to create a lock file. CSync nie mógł utworzyć pliku blokady. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync nie powiodło się załadowanie lub utworzenie pliku dziennika. Upewnij się, że masz prawa do odczytu i zapisu do lokalnego katalogu synchronizacji. - + CSync failed to write the journal file. CSync nie udało się zapisać pliku dziennika. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Wtyczka %1 do csync nie może być załadowana.<br/>Sprawdź poprawność instalacji!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Czas systemowy na tym kliencie różni się od czasu systemowego na serwerze. Użyj usługi synchronizacji czasu (NTP) na serwerze i kliencie, aby czas na obu urządzeniach był taki sam. - + CSync could not detect the filesystem type. CSync nie może wykryć typu systemu plików. - + CSync got an error while processing internal trees. CSync napotkał błąd podczas przetwarzania wewnętrznych drzew. - + CSync failed to reserve memory. CSync nie mógł zarezerwować pamięci. - + CSync fatal parameter error. Krytyczny błąd parametru CSync. - + CSync processing step update failed. Aktualizacja procesu przetwarzania CSync nie powiodła się. - + CSync processing step reconcile failed. Scalenie w procesie przetwarzania CSync nie powiodło się. - + CSync processing step propagate failed. Propagacja w procesie przetwarzania CSync nie powiodła się. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Katalog docelowy nie istnieje.</p><p>Sprawdź ustawienia synchronizacji.</p> - + A remote file can not be written. Please check the remote access. Zdalny plik nie może zostać zapisany. Sprawdź dostęp zdalny. - + The local filesystem can not be written. Please check permissions. Nie można zapisywać na lokalnym systemie plików. Sprawdź uprawnienia. - + CSync failed to connect through a proxy. CSync nie mógł połączyć się przez proxy. - + CSync could not authenticate at the proxy. CSync nie mógł się uwierzytelnić przez proxy. - + CSync failed to lookup proxy or server. CSync nie mógł odnaleźć serwera proxy. - + CSync failed to authenticate at the %1 server. CSync nie mógł uwierzytelnić się na serwerze %1. - + CSync failed to connect to the network. CSync nie mógł połączyć się z siecią. - - A network connection timeout happend. - Upłynął limit czasu połączenia. + + A network connection timeout happened. + - + A HTTP transmission error happened. Wystąpił błąd transmisji HTTP. - + CSync failed due to not handled permission deniend. CSync nie obsługiwane, odmowa uprawnień. - + CSync failed to access Synchronizacja nieudana z powodu braku dostępu - + CSync tried to create a directory that already exists. CSync próbował utworzyć katalog, który już istnieje. - - + + CSync: No space on %1 server available. CSync: Brak dostępnego miejsca na serwerze %1. - + CSync unspecified error. Nieokreślony błąd CSync. - + Aborted by the user Anulowane przez użytkownika - + An internal error number %1 happened. Wystąpił błąd wewnętrzny numer %1. - + The item is not synced because of previous errors: %1 Ten element nie jest zsynchronizowane z powodu poprzednich błędów: %1 @@ -1946,15 +1955,61 @@ Niezalecane jest jego użycie. Plik zawiera nieprawidłowe znaki, które nie mogą być synchronizowane wieloplatformowo. - + Unable to initialize a sync journal. Nie można zainicjować synchronizacji dziennika. - + Cannot open the sync journal Nie można otworzyć dziennika synchronizacji + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + docelowy + + + + the source + źródło + Mirall::Systray @@ -1967,7 +2022,7 @@ Niezalecane jest jego użycie. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Wersja %1 Aby uzyskać więcej informacji kliknij <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Rozprowadzany przez %4 i licencjonowany według GNU General Public License (GPL) Wersja 2.0.<br>%5 oraz logo %5 są zarejestrowanymi znakami towarowymi %4 w<br>Stanach Zjednoczonych, innych krajach lub obydwu.</p> @@ -1975,47 +2030,47 @@ Niezalecane jest jego użycie. Mirall::ownCloudGui - + Please sign in Proszę się zalogować - + Disconnected from server Rozłączono z serwerem - + Folder %1: %2 Folder %1: %2 - + No sync folders configured. Nie skonfigurowano synchronizowanych folderów. - + None. Brak. - + Recent Changes Ostatnie zmiany - + Open %1 folder Otwórz folder %1 - + Managed Folders: Zarządzane foldery: - + Open folder '%1' Otwórz katalog '%1' @@ -2082,12 +2137,12 @@ Niezalecane jest jego użycie. Syncing %1 of %2 (%3 left) - + Synchronizacja %1 z %2 (%3 pozostało) Syncing %1 (%2 left) - + Synchronizuję %1 (%2 pozostało) @@ -2300,27 +2355,27 @@ Kliknij Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2396,7 @@ Kliknij ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Jeśli nie masz jeszcze serwera ownCloud, wejdź na <a href="https://owncloud.com">owncloud.com</a> aby dowiedzieć się jak go zainstalować. @@ -2350,12 +2405,12 @@ Kliknij ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Zbudowane z rewizji Git <a href="%1">%2</a> na %3, %4 przy użyciu Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Wersja %2. Aby uzyskać więcej informacji odwiedź <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Oparty na Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2444,57 +2499,57 @@ Kliknij theme - + Status undefined Stan niezdefiniowany - + Waiting to start sync Trwa oczekiwanie na uruchomienie synchronizacji - + Sync is running Synchronizacja uruchomiona - + Sync Success Udana synchronizacja - + Sync Success, some files were ignored. Synchronizacja ukończona, niektóre pliki zostały zignorowane. - + Sync Error Błąd synchronizacji - + Setup Error Błąd ustawień - + The server is currently unavailable Serwer jest obecnie niedostępny. - + Preparing to sync Przygotowuję do synchronizacji - + Aborting... Anuluję... - + Sync is paused Synchronizacja wstrzymana diff --git a/translations/mirall_pt.ts b/translations/mirall_pt.ts index b100502bb..9e6668f7f 100644 --- a/translations/mirall_pt.ts +++ b/translations/mirall_pt.ts @@ -144,28 +144,28 @@ <p>Deseja mesmo repor a pasta <i>%1</i> e reconstruir a base de dados do seu cliente?</p><p><b>Nota:</b> Esta função é desenhada apenas para efeitos de manutenção. Os ficheiros não irão ser removidos, mas este processo pode aumentar o tráfego de dados e demorar alguns minutos ou horas a completar, dependendo do tamanho da pasta. Utilize esta funcionalidade apenas se aconselhado pelo seu administrador.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) de %2 de espaço utilizado. - + No connection to %1 at <a href="%2">%3</a>. Sem ligação a %1 em <a href="%2">%3</a>. - + No %1 connection configured. %1 sem ligação configurada. - + Sync Running A sincronização está a decorrer @@ -175,34 +175,35 @@ Nenhuma conta configurada. - + The syncing operation is running.<br/>Do you want to terminate it? A operação de sincronização está a ser executada.<br/>Deseja terminar? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 de %4) %5 faltando a uma taxa de %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + + - + Connected to <a href="%1">%2</a>. Conectado a <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Conectado a <a href="%1">%2</a> como <i>%3</i>. - + Currently there is no storage usage information available. Histórico de utilização de armazenamento não disponível. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Não foi configurada nenhuma conta ownCloud - + The configured server for this client is too old O servidor configurado para este cliente é muito antigo - + Please update to the latest server and restart the client. Por favor actualize para a ultima versão do servidor e reinicie o cliente. - + Unable to connect to %1 Não foi possível ligar a %1 - + The provided credentials are not correct As credenciais fornecidas não estão correctas @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Impossível criar 'csync-context' - + Local folder %1 does not exist. A pasta local %1 não existe. - + %1 should be a directory but is not. %1 devia de ser um directório mas não é - + %1 is not readable. Não é possível ler %1 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros ficheiros foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. Foi feito o download de outros ficheiros %1 e %2. - + %1 has been downloaded. %1 names a file. Fez o download de %1 - + %1 and %2 other files have been updated. Os ficheiros %1 e %2 foram actualizados. - + %1 has been updated. %1 names a file. %1 foi actualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 foi renomeado para %2 e %3 outros ficheiros foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2 - + %1 has been moved to %2 and %3 other files have been moved. - + %1 foi movido para %2 e %3 outros ficheiros foram movidos. - + %1 has been moved to %2. %1 foi movido para %2 - + Sync Activity Actividade de sincronicação - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Esta sincronização irá remover todos os ficheiros sincronizados na pasta local '%1'. -Se você ,ou o seu administrador, reiniciou a sua conta no servidor, escolha "Manter os ficheiros". Se quer apagar os seus dados, escolha "Remover todos os ficheiros". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -362,17 +356,17 @@ Are you sure you want to perform this operation? Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha "Manter os ficheiros". Se quer apagar os seus dados, escolha "Remover todos os ficheiros". - + Remove All Files? Remover todos os ficheiros? - + Remove all files Remover todos os ficheiros - + Keep files Manter os ficheiros @@ -380,67 +374,67 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::FolderMan - + Could not reset folder state Não foi possível repor o estado da pasta - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Não foi possível remover o antigo 'journal sync' '%1'. Por favor certifique-se que nenhuma aplicação o está a utilizar. - + Undefined State. Estado indefinido. - + Waits to start syncing. A aguardar o inicio da sincronização. - + Preparing for sync. A preparar para sincronização. - + Sync is running. A sincronização está a correr. - + Server is currently not available. O servidor não está disponível de momento. - + Last Sync was successful. A última sincronização foi efectuada com sucesso. - + Last Sync was successful, but with warnings on individual files. A última sincronização foi efectuada com sucesso, mas existem avisos sobre alguns ficheiros. - + Setup Error. Erro na instalação. - + User Abort. Cancelado pelo utilizador. - + Sync is paused. A sincronização está em pausa. - + %1 (Sync is paused) %1 (Sincronização em pausa) @@ -467,8 +461,8 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::FolderWizard - - + + Add Folder Acrescentar pasta @@ -513,7 +507,7 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q The selected folder is a symbolic link. An already configured folder is contained in the folder this link is pointing to. - + O directório seleccionado é uma hiperligação simbólica. Um directório já configurado está contido no directório para a qual a hiperligação está apontada. @@ -544,42 +538,42 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::FolderWizardRemotePath - + Add Remote Folder Adicionar pasta remota - + Enter the name of the new folder: Introduza o nome da nova pasta: - + Folder was successfully created on %1. Pasta criada com sucesso em %1. - + Failed to create the folder on %1. Please check manually. Impossível criar a pasta em %1. Por favor valide manualmente. - + Choose this to sync the entire account Escolha para sincronizar a sua conta - + This folder is already being synced. Esta pasta já está a ser sincronizada. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Já está a sincronizar <i>%1</i>, que é uma pasta 'parente' de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Já está a sincronizar todos os seus ficheiros. Sincronizar outra pasta<b>não</b> é suportado. Se deseja sincronizar múltiplas pastas, por favor altere a configuração da pasta raiz de sincronização. @@ -596,17 +590,22 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nenhum E-Tag recebido do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tentando uma próxima vez. - + + Server returned wrong content-range + + + + Connection Timeout O tempo de ligação expirou @@ -620,8 +619,8 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q - General Setttings - Configurações gerais + General Settings + Configuração Geral @@ -658,12 +657,12 @@ Se você, ou o seu administrador, reiniciou a sua conta no servidor, escolha &q Mirall::HttpCredentials - + Enter Password Introduza a Palavra-passe - + Please enter %1 password for user '%2': Por favor introduza %1 password para o utilizador '%2': @@ -805,8 +804,8 @@ Itens verificados também serão removidos se evitarem que um diretório seja re - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Nova versão do cliente %1 disponível.</p><p>A versão <b>%2</b> está disponível. A versão instalada é: %3</p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>A nova serão do %1 Cliente está disponivel.</p><p><b>%2</b> está disponível para descarga. A versão instalada é a %3.</p> @@ -960,8 +959,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - Nova versão %1 disponível. Por favor utilize a ferramenta de actualização para a instalar. + New version %1 available. Please use the system's update tool to install it. + Uma nova versão %1 está disponível. Por favor use o sistema de actualização para instalar. @@ -1074,7 +1073,7 @@ It is not advisable to use it. A ligação falhou - + Update %1 server Actualizar servidor %1 @@ -1082,134 +1081,134 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Erro ao renomear a pasta - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Pasta de sincronização local %1 criada com sucesso!</b></font> - + Trying to connect to %1 at %2... A tentar ligação a %1 em %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Conectado com sucesso a %1: %2 versão %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Erro: Credenciais erradas. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> A pasta de sincronização locl %1 já existe, a configurar para sincronizar.<br/><br/> - + Creating local sync folder %1... A criar a pasta de sincronização local %1 ... - + ok ok - + failed. Falhou. - + Could not create local folder %1 Não foi possível criar a pasta local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Impossível conectar a %1 em %2:<br/>%3 - + No remote folder specified! Não foi indicada a pasta remota! - + Error: %1 Erro: %1 - + creating folder on ownCloud: %1 a criar a pasta na ownCloud: %1 - + Remote folder %1 created successfully. Criação da pasta remota %1 com sucesso! - + The remote folder %1 already exists. Connecting it for syncing. A pasta remota %1 já existe. Ligue-a para sincronizar. - - + + The folder creation resulted in HTTP error code %1 A criação da pasta resultou num erro HTTP com o código %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> A criação da pasta remota falhou, provavelmente por ter introduzido as credenciais erradas.<br/>Por favor, verifique as suas credenciais.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">A criação da pasta remota falhou, provavelmente por ter introduzido as credenciais erradas.</font><br/>Por favor, verifique as suas credenciais.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. A criação da pasta remota %1 falhou com o erro <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. A sincronização de %1 com a pasta remota %2 foi criada com sucesso. - + Successfully connected to %1! Conectado com sucesso a %1! - + Connection to %1 could not be established. Please check again. Não foi possível ligar a %1 . Por Favor verifique novamente. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - + Não é possível remover e fazer backup à pasta porque a pasta ou um ficheiro nesta está aberto em outro programa. Por favor, feche a pasta ou o ficheiro e clique novamente ou cancele a configuração. Mirall::OwncloudWizard - + %1 Connection Wizard Assistente de ligação %1 @@ -1253,12 +1252,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronização foi cancelada pelo utilizador. - + No E-Tag received from server, check Proxy/Gateway Nenhum E-Tag recebido do servidor, verifique Proxy / gateway @@ -1268,23 +1267,33 @@ It is not advisable to use it. Recebemos um e-Tag diferente para resumir. Tentando uma próxima vez. - - File %1 can not be downloaded because of a local file name clash! + + Server returned wrong content-range + + + File %1 can not be downloaded because of a local file name clash! + O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! + Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + O ficheiro %1 não pode ser descarregado devido a conflito com um nome de ficheiro local! Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Restauração Falhou: + + + A file or directory was removed from a read only share, but restoring failed: %1 Um ficheiro ou um directório foi removido de uma partilha apenas de leitura, mas o restauro falhou: %1 @@ -1292,12 +1301,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + Atenção, possível sensibilidade a maiúsculas em conflito com %1 - + could not create directory %1 Não foi possível criar a directoria %1 @@ -1307,7 +1316,7 @@ It is not advisable to use it. Could not remove %1 because of a local file name clash - + Nao foi possivel remover %1 devido a conflito local com nome de ficheiro @@ -1318,15 +1327,15 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash - + O ficheiro %1 nao pode ser renomeado para %2 devido a conflito com nome de ficheiro local Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. O ficheiro havia sido removido de uma partilha apenas de leitura. Ficheiro restaurado. @@ -1334,17 +1343,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Esta pasta não pode ser renomeada. A alterar para nome original. - + This folder must not be renamed. Please name it back to Shared. Esta pasta não pode ser renomeada. Por favor renomeie para o seu nome original: Shared. - + The file was renamed but is part of a read only share. The original file was restored. O ficheiro foi renomeado mas faz parte de uma partilha só de leitura. O ficheiro original foi restaurado. @@ -1371,24 +1380,24 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O ficheiro foi editado localmente mas faz parte de uma prtilha só de leitura. Foi restaurado mas a edição está no ficheiro de conflito. - + The local file was removed during sync. - + O arquivo local foi removido durante a sincronização. - + Local file changed during sync. Ficheiro local alterado durante a sincronização. - + The server did not acknowledge the last chunk. (No e-tag were present) - + O servidor não reconheceu o último bloco. (Nenhuma e-tag estava presente) @@ -1414,62 +1423,62 @@ It is not advisable to use it. 4 - + Time Tempo - + File Ficheiro - + Folder Pasta - + Action Acção - + Size Tamanho - + Retry Sync Tentar sincronizar novamente - + Copy Copiar - + Copy the activity list to the clipboard. Copiar lista de actividades para a área de transferência. - + Copied to clipboard Copiado para a área de transferência - + The sync status has been copied to the clipboard. O estado da sincronização foi copiada para a área de transferência. - + Currently no files are ignored because of previous errors. Devido a erros anteriores, nenhum ficheiro é ignorado. - + %1 files are ignored because of previous errors. Try to sync these again. %1 ficheiros ignorados devido a erros anteriore. @@ -1512,27 +1521,27 @@ Por favor tente sincronizar novamente. Mirall::SettingsDialogMac - + %1 %1 - + Account Conta - + Activity Actividade - + General Geral - + Network Rede @@ -1540,12 +1549,12 @@ Por favor tente sincronizar novamente. Mirall::ShibbolethCredentials - + Login Error Erro de login - + You must sign in as user %1 Deve fazer o login como utilizador %1. @@ -1553,22 +1562,22 @@ Por favor tente sincronizar novamente. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticação - + Reauthentication required - + Requerido reautenticação - + Your session has expired. You need to re-login to continue to use the client. - + A sessão expirou. Precisa reiniciar a sessão para poder continuar usando o cliente. - + %1 - %2 %1 - %2 @@ -1648,7 +1657,7 @@ Por favor tente sincronizar novamente. SHA-256: - + SHA-256: @@ -1772,166 +1781,166 @@ Por favor tente sincronizar novamente. Mirall::SyncEngine - + Success. Sucesso - + CSync failed to create a lock file. CSync falhou a criação do ficheiro de lock. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync falhou no carregamento ou criação do ficheiro jornal. Confirme que tem permissões de escrita e leitura no directório de sincronismo local. - + CSync failed to write the journal file. - + CSync falhou a escrever o ficheiro do jornal. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>O plugin %1 para o CSync não foi carregado.<br/>Por favor verifique a instalação!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. A data/hora neste cliente é difere da data/hora do servidor. Por favor utilize um servidor de sincronização horária (NTP), no servidor e nos clientes para garantir que a data/hora são iguais. - + CSync could not detect the filesystem type. Csync não conseguiu detectar o tipo de sistema de ficheiros. - + CSync got an error while processing internal trees. Csync obteve um erro enquanto processava as árvores internas. - + CSync failed to reserve memory. O CSync falhou a reservar memória - + CSync fatal parameter error. Parametro errado, CSync falhou - + CSync processing step update failed. O passo de processamento do CSyn falhou - + CSync processing step reconcile failed. CSync: Processo de reconciliação falhou. - + CSync processing step propagate failed. CSync: O processo de propagação falhou. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>A pasta de destino não existe.</p><p>Por favor verifique a configuração da sincronização.</p> - + A remote file can not be written. Please check the remote access. Não é possivel escrever num ficheiro remoto. Por favor verifique o acesso remoto. - + The local filesystem can not be written. Please check permissions. Não é possivel escrever no sistema de ficheiros local. Por favor verifique as permissões. - + CSync failed to connect through a proxy. CSync: Erro a ligar através do proxy - + CSync could not authenticate at the proxy. CSync: erro ao autenticar-se no servidor proxy. - + CSync failed to lookup proxy or server. CSync: Erro a contactar o proxy ou o servidor. - + CSync failed to authenticate at the %1 server. CSync: Erro a autenticar no servidor %1 - + CSync failed to connect to the network. CSync: Erro na conecção à rede - - A network connection timeout happend. - Houve um erro de timeout de rede (fim de tempo) + + A network connection timeout happened. + Houve um erro de timeout de rede. - + A HTTP transmission error happened. Ocorreu um erro de transmissão HTTP - + CSync failed due to not handled permission deniend. CSync: Erro devido a permissões de negação não tratadas. - + CSync failed to access CSync: falha no acesso - + CSync tried to create a directory that already exists. O CSync tentou criar uma pasta que já existe. - - + + CSync: No space on %1 server available. CSync: Não ha espaço disponível no servidor %1 - + CSync unspecified error. CSync: erro não especificado - + Aborted by the user Cancelado pelo utilizador - + An internal error number %1 happened. - + Ocorreu um erro interno número %1. - + The item is not synced because of previous errors: %1 O item não está sincronizado devido a erros anteriores: %1 Symbolic links are not supported in syncing. - + Hiperligações simbólicas não são suportadas em sincronização. @@ -1944,14 +1953,60 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n O ficheiro contém caracteres inválidos que não podem ser sincronizados pelas várias plataformas. - + Unable to initialize a sync journal. Impossível inicializar sincronização 'journal'. - + Cannot open the sync journal - + Impossível abrir o jornal de sincronismo + + + + Not allowed because you don't have permission to add sub-directories in that directory + Não permitido, porque não tem permissão para adicionar sub-directórios ao directório + + + + Not allowed because you don't have permission to add parent directory + Não permitido, porque não tem permissão para adicionar o directório principal + + + + Not allowed because you don't have permission to add files in that directory + Não permitido, porque não tem permissão para adicionar ficheiros no directório + + + + Not allowed to upload this file because it is read-only on the server, restoring + Não é permitido fazer o envio deste ficheiro porque é só de leitura no servidor, restaurando + + + + + Not allowed to remove, restoring + Não autorizado para remoção, restaurando + + + + Move not allowed, item restored + Mover não foi permitido, item restaurado + + + + Move not allowed because %1 is read-only + Mover não foi autorizado porque %1 é só de leitura + + + + the destination + o destino + + + + the source + a origem @@ -1965,55 +2020,55 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> - + <p>Versão %1 Para mais informações por favor visite <a href='%2'>%3</a>.</p><p>Direitos de autor ownCloud, Inc.<p><p>Distribuido por %4 e licenciado através da versão 2.0 GNU General Public License (GPL) .<br>%5 e os %5 logotipos são marca registada de %4 nos<br>Estados Unidos, outros paises ou em ambos.</p> Mirall::ownCloudGui - + Please sign in Por favor inicie a sessão - + Disconnected from server - + Desligar do servidor - + Folder %1: %2 Pasta %1: %2 - + No sync folders configured. Nenhuma pasta de sincronização configurada. - + None. Nada. - + Recent Changes Alterações recentes - + Open %1 folder Abrir a pasta %1 - + Managed Folders: Pastas Geridas: - + Open folder '%1' Abrir pasta '%1' @@ -2080,12 +2135,12 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Syncing %1 of %2 (%3 left) - + Sincronizar %1 de %2 (%3 faltando) Syncing %1 (%2 left) - + Sincronizando %1 (%2 faltando) @@ -2297,27 +2352,27 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2338,7 +2393,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Se ainda não tem um servidor ownCloud, visite <a href="https://owncloud.com">owncloud.com</a> para mais informações. @@ -2347,12 +2402,12 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p><small>Construído a partir de revisão Git <a href="%1">%2</a> em %3, %4 usando Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Versão %2. Para mais informações visite <a href="%3">%4</a></p><p><small>Desenvolvido por Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Baseado em Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2387,7 +2442,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n Filesystem access error - + Erro ao acesso do sistema de ficheiros @@ -2423,7 +2478,7 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n ignoring - + ignorado @@ -2441,57 +2496,57 @@ Por favor utilize um servidor de sincronização horária (NTP), no servidor e n theme - + Status undefined Estado indefinido - + Waiting to start sync A aguardar o início da sincronização. - + Sync is running A sincronização está a decorrer - + Sync Success A sincronização foi efectuada com sucesso - + Sync Success, some files were ignored. Sincronizado com suceso, alguns ficheiros foram ignorados. - + Sync Error Erro de sincronização - + Setup Error Erro na configuração - + The server is currently unavailable O servidor está indisponível - + Preparing to sync A preparar para sincronizar - + Aborting... A cancelar... - + Sync is paused Sincronização em pausa diff --git a/translations/mirall_pt_BR.ts b/translations/mirall_pt_BR.ts index 849d40f47..5d29e6a5a 100644 --- a/translations/mirall_pt_BR.ts +++ b/translations/mirall_pt_BR.ts @@ -70,7 +70,7 @@ Edit Ignored Files - Editar arquivos ignorados + Editar Arquivos Ignorados @@ -91,7 +91,7 @@ Pause - Pause + Pausa @@ -126,7 +126,7 @@ Confirm Folder Remove - Confirma remoção da pasta + Confirma Remoção da Pasta @@ -141,33 +141,33 @@ <p>Do you really want to reset folder <i>%1</i> and rebuild your client database?</p><p><b>Note:</b> This function is designed for maintenance purposes only. No files will be removed, but this can cause significant data traffic and take several minutes or hours to complete, depending on the size of the folder. Only use this option if advised by your administrator.</p> - <p>Você realmente deseja redefinir a pasta <i>%1</i> e reconstruir seu banco de dados de clientes?</p><p><b>Nota:</b> Esta função é usada somente para manutenção. Nenhum arquivo será removido, mas isso pode causar o tráfego de dados significativo e levar vários minutos ou horas, dependendo do tamanho da pasta. Somente use esta opção se adivertido por seu administrador.</p> + <p>Você realmente deseja redefinir a pasta <i>%1</i> e reconstruir seu banco de dados de clientes?</p><p><b>Nota:</b> Esta função é usada somente para manutenção. Nenhum arquivo será removido, mas isso pode causar significativo tráfego de dados e levar vários minutos ou horas, dependendo do tamanho da pasta. Somente use esta opção se adivertido por seu administrador.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) de %2 do espaço em uso no servidor. - + No connection to %1 at <a href="%2">%3</a>. Nenhuma conexão para %1 em <a href="%2">%3</a>. - + No %1 connection configured. - Sem %1 conexão configurada. + Nenhuma %1 conexão configurada. - + Sync Running - Sincronização acontecendo + Sincronização Acontecendo @@ -175,35 +175,35 @@ Nenhuma conta configurada. - + The syncing operation is running.<br/>Do you want to terminate it? - A operação de sincronização está acontecendo.<br/>deseja finaliza-la? + A operação de sincronização está acontecendo.<br/>Você deseja finaliza-la? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3 de %4) %5 faltando a uma taxa de %6/s - + %1 of %2, file %3 of %4 Total time left %5 %1 de %2, arquivo %3 de %4 Total de tempo que falta 5% - + Connected to <a href="%1">%2</a>. Conectado à <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Conectado a <a href="%1">%2</a> como <i>%3</i>. - + Currently there is no storage usage information available. Atualmente, não há informações de uso de armazenamento disponível. @@ -234,27 +234,27 @@ Total de tempo que falta 5% Mirall::ConnectionValidator - + No ownCloud account configured Nenhuma conta ownCloud configurada - + The configured server for this client is too old O servidor configurado para este cliente é muito antigo - + Please update to the latest server and restart the client. Por favor, atualize para o último servidor e reinicie o cliente. - + Unable to connect to %1 Impossível se conectar a %1 - + The provided credentials are not correct As credenciais fornecidas não estão corretas @@ -262,100 +262,93 @@ Total de tempo que falta 5% Mirall::Folder - + Unable to create csync-context - Não é possível criar csync-contexto + Não é possível criar csync-context - + Local folder %1 does not exist. A pasta local %1 não existe. - + %1 should be a directory but is not. %1 deveria ser uma pasta, mas não é. - + %1 is not readable. %1 não pode ser lido. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 e %2 outros arquivos foram removidos. - + %1 has been removed. %1 names a file. %1 foi removido. - + %1 and %2 other files have been downloaded. %1 names a file. %1 e %2 outros arquivos foram baixados. - + %1 has been downloaded. %1 names a file. %1 foi baixado. - + %1 and %2 other files have been updated. %1 e %2 outros arquivos foram atualizados. - + %1 has been updated. %1 names a file. %1 foi atualizado. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 foi renomeado para %2 e %3 outros três arquivos foram renomeados. - + %1 has been renamed to %2. %1 and %2 name files. %1 foi renomeado para %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 foi movido para %2 e %3 outros arquivos foram movidos. - + %1 has been moved to %2. %1 foi movido para %2. - + Sync Activity Atividade de Sincronização - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Esta sincronização irá remover todos os arquivos na pasta de sincronização local '%1'. -Se você ou o administrador tiver que redefinir a sua conta no servidor, escolha "Manter arquivos". Se você deseja que seus dados sejam removidos, escolha "Remover todos os arquivos". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Isso pode ser porque a pasta foi silenciosamente reconfigurada, ou todos os arqu Você tem certeza que quer executar esta operação? - + Remove All Files? - Deseja remover todos os arquivos? + Deseja Remover Todos os Arquivos? - + Remove all files Remover todos os arquivos - + Keep files Manter arquivos @@ -382,67 +375,67 @@ Você tem certeza que quer executar esta operação? Mirall::FolderMan - + Could not reset folder state Não foi possível redefinir o estado da pasta - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Uma velha revista de sincronização '%1' foi encontrada, mas não pôde ser removida. Por favor, certifique-se de que nenhuma aplicação está a usá-la. - + Undefined State. Estado indefinido. - + Waits to start syncing. Aguardando o inicio da sincronização. - + Preparing for sync. Preparando para sincronização. - + Sync is running. A sincronização está ocorrendo. - + Server is currently not available. Servidor indisponível no momento. - + Last Sync was successful. A última sincronização foi feita com sucesso. - + Last Sync was successful, but with warnings on individual files. A última sincronização foi executada com sucesso, mas com advertências em arquivos individuais. - + Setup Error. - Erro de configuração. + Erro de Configuração. - + User Abort. Usuário Abortou - + Sync is paused. Sincronização pausada. - + %1 (Sync is paused) %1 (Pausa na Sincronização) @@ -469,8 +462,8 @@ Você tem certeza que quer executar esta operação? Mirall::FolderWizard - - + + Add Folder Adicionar Pasta @@ -546,42 +539,42 @@ Você tem certeza que quer executar esta operação? Mirall::FolderWizardRemotePath - + Add Remote Folder Adicionar Pasta Remota - + Enter the name of the new folder: Informe o nome da nova pasta: - + Folder was successfully created on %1. Pasta foi criada com sucesso em %1. - + Failed to create the folder on %1. Please check manually. Falha ao criar a pasta em %1. Por favor, verifique manualmente. - + Choose this to sync the entire account Escolha esta opção para sincronizar a conta inteira - + This folder is already being synced. Esta pasta já está sendo sincronizada. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - Você já está sincronizando <i>%1</i>, que é uma pasta pai de <i>%2</i>. + Você já está sincronizando <i>%1</i>, que é uma pasta mãe de <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Você já está sincronizando todos os seus arquivos. Sincronizar outra pasta <b>não</ b> é possível. Se você deseja sincronizar várias pastas, por favor, remova a sincronização configurada atualmente para a pasta raiz. @@ -598,17 +591,22 @@ Você tem certeza que quer executar esta operação? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Nenhuma E-Tag recebida do servidor, verifique Proxy / gateway - + We received a different E-Tag for resuming. Retrying next time. Recebemos um e-Tag diferente para resumir. Tente uma próxima vez. - + + Server returned wrong content-range + O servidor retornou erro numa série-de-conteúdo + + + Connection Timeout Conexão Finalizada @@ -622,8 +620,8 @@ Você tem certeza que quer executar esta operação? - General Setttings - Configurações Gerais + General Settings + Configuração Geral @@ -638,7 +636,7 @@ Você tem certeza que quer executar esta operação? Use Monochrome Icons - Usar ícones monocromáticos + Usar Ícones Monocromáticos @@ -661,12 +659,12 @@ Você tem certeza que quer executar esta operação? Mirall::HttpCredentials - + Enter Password Entrar Senha - + Please enter %1 password for user '%2': Por favor entrar %1 senha para o usuário '%2': @@ -807,8 +805,8 @@ Itens marcados também serão excluídos se estiverem impedindo a remoção de u - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Uma nova versão do Cliente %1 está disponível.</p><p><b>%2</b> está disponível para baixar. A versão instalada é %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Uma nova versão %1 de Ciente está disponível.</p><p><b>%2</b> está disponível para baixar. A versão instalada é a %3.</p> @@ -856,7 +854,7 @@ Itens marcados também serão excluídos se estiverem impedindo a remoção de u Host - Servidor + Host @@ -871,7 +869,7 @@ Itens marcados também serão excluídos se estiverem impedindo a remoção de u Download Bandwidth - Baixar banda + Baixar Banda @@ -894,7 +892,7 @@ Itens marcados também serão excluídos se estiverem impedindo a remoção de u Upload Bandwidth - Enviar banda + Enviar Banda @@ -938,7 +936,7 @@ Itens marcados também serão excluídos se estiverem impedindo a remoção de u A new update is about to be installed. The updater may ask for additional privileges during the process. - Uma nova atualização está prestes a ser instalado. O atualizador pode pedir por privilégios adicionais durante o processo. + Uma nova atualização está prestes a ser instalada. O atualizador pode pedir por privilégios adicionais durante o processo. @@ -962,8 +960,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - Nova versão %1 disponível. Por favor, use a ferramenta de atualização do sistema para atualizar. + New version %1 available. Please use the system's update tool to install it. + Nova versão %1 disponível. Por favor use a ferramenta de atualização do sistema para instalar. @@ -1034,7 +1032,7 @@ for additional privileges during the process. Enter user credentials - Entre com suas credenciais + Entre com as credenciais do usuário @@ -1076,7 +1074,7 @@ It is not advisable to use it. Conexão falhou - + Update %1 server Atualizar o servidor %1 @@ -1084,134 +1082,134 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Falha no nome da pasta - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Pasta de sincronização local %1 criada com sucesso!</b></font> - + Trying to connect to %1 at %2... Tentando conectar a %1 em %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> - <font color="green">Conectado com sucesso a %1: versão %2 %3 (%4)</font><br/><br/> + <font color="green">Conectado com sucesso a %1: 2% versão %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Erro: Credenciais erradas. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Pasta local de sincronização %1 já existe, configurando para sincronização. <br/><br/> - + Creating local sync folder %1... Criando pasta local de sincronização %1... - + ok ok - + failed. falhou. - + Could not create local folder %1 Não foi possível criar pasta local %1 - - + + Failed to connect to %1 at %2:<br/>%3 Falha ao conectar a %1 em %2:<br/>%3 - + No remote folder specified! Nenhuma pasta remota foi especificada! - + Error: %1 Erro: %1 - + creating folder on ownCloud: %1 criar pasta no ownCloud: %1 - + Remote folder %1 created successfully. Pasta remota %1 criada com sucesso. - + The remote folder %1 already exists. Connecting it for syncing. Pasta remota %1 já existe. Conectando para sincronizar. - - + + The folder creation resulted in HTTP error code %1 - A criação da pasta resultou em um erro HTTP %1 + A criação da pasta resultou em um erro do código HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> A criação da pasta remota falhou porque as credenciais fornecidas estão erradas!<br/>Por favor, volte e verifique suas credenciais.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">A criação remota de pasta falhou provavelmente as causas da falha na criação da pasta remota são credenciais erradas</font><br/>Volte e verifique suas credenciais, por favor.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Falha na criação da pasta remota %1 com erro <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Uma conexão de sincronização de %1 para o diretório remoto %2 foi realizada. - + Successfully connected to %1! Conectado com sucesso a %1! - + Connection to %1 could not be established. Please check again. Conexão à %1 não foi estabelecida. Por favor, verifique novamente. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - Não é possível remover e fazer backup da pasta porque a pasta ou um arquivo em que nesta pasta está aberto em outro programa. Por favor, feche a pasta ou arquivo e clique tentar novamente ou cancelar a operação. + Não é possível remover e fazer backup da pasta porque a pasta ou um arquivo que está nesta pasta está aberto em outro programa. Por favor, feche a pasta ou arquivo e clique tentar novamente ou cancelar a operação. Mirall::OwncloudWizard - + %1 Connection Wizard Assistente de Conexões do %1 @@ -1255,12 +1253,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. A sincronização foi abortada pelo usuário. - + No E-Tag received from server, check Proxy/Gateway Nenhuma E-Tag recebida do servidor, verifique Proxy / gateway @@ -1270,7 +1268,12 @@ It is not advisable to use it. Recebemos um e-Tag diferente para resumir. Tente uma próxima vez. - + + Server returned wrong content-range + O servidor retornou erro numa série-de-conteúdo + + + File %1 can not be downloaded because of a local file name clash! O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! @@ -1278,7 +1281,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! O arquivo %1 não pode ser baixado por causa de um confronto local no nome do arquivo! @@ -1286,7 +1289,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Falha na Restauração: + + + A file or directory was removed from a read only share, but restoring failed: %1 Um arquivo ou diretório foi removido de um compartilhamento somente de leitura, mas a restauração falhou: %1 @@ -1294,12 +1302,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Atenção, possível caso de sensibilidade de minúscula/maiúscula, choque com 1% - + could not create directory %1 Não foi possível criar diretório %1 @@ -1320,7 +1328,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash O arquivo %1 não pode ser renomeado para %2 por causa de um choque com nome de arquivo local @@ -1328,7 +1336,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. O arquivo foi removido de um compartilhamento somente de leitura. Ele foi restaurado. @@ -1336,17 +1344,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - Esta pasta não pode ser renomeada. Ele será renomeado de volta ao seu nome original. + Esta pasta não pode ser renomeada. Ela será renomeado de volta ao seu nome original. - + This folder must not be renamed. Please name it back to Shared. Esta pasta não pode ser renomeada. Por favor, nomeie-a de volta para Compartilhada. - + The file was renamed but is part of a read only share. The original file was restored. O arquivo foi renomeado mas faz parte de compartilhamento só de leitura. O arquivo original foi restaurado. @@ -1373,22 +1381,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. O arquivo foi editado localmente mas faz parte de compartilhamento só de leitura. Ele foi restaurado mas sua edição está em conflito com o arquivo. - + The local file was removed during sync. O arquivo local foi removido durante a sincronização. - + Local file changed during sync. Arquivo local modificado durante a sincronização. - + The server did not acknowledge the last chunk. (No e-tag were present) O servidor não reconheceu o último bloco. (Nenhuma e-tag estava presente) @@ -1416,62 +1424,62 @@ It is not advisable to use it. 4 - + Time Tempo - + File Arquivo - + Folder Pasta - + Action Ação - + Size Tamanho - + Retry Sync Rafazer Sincronização - + Copy Copiar - + Copy the activity list to the clipboard. Copiar a lista de atividades para a área de transferência. - + Copied to clipboard Copiado para área de transferência - + The sync status has been copied to the clipboard. - O estado de sincronização foi copiado para o clipboard. + O estado de sincronização foi copiado para a área de transferência. - + Currently no files are ignored because of previous errors. Correntemente nenhum arquivo será ignorado por causa de erros prévios. - + %1 files are ignored because of previous errors. Try to sync these again. %1 arquivos são ignorados por causa de erros prévios. @@ -1514,27 +1522,27 @@ Tente sincronizar novamente. Mirall::SettingsDialogMac - + %1 %1 - + Account Conta - + Activity Atividade - + General Geral - + Network Rede @@ -1542,12 +1550,12 @@ Tente sincronizar novamente. Mirall::ShibbolethCredentials - + Login Error Erro de Login - + You must sign in as user %1 Você deve entrar como usuário %1 @@ -1555,22 +1563,22 @@ Tente sincronizar novamente. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autenticar - + Reauthentication required Reautenticação necessária - + Your session has expired. You need to re-login to continue to use the client. Sua sessão expirou. É preciso re-login para continuar a usar o cliente. - + %1 - %2 %1 - %2 @@ -1774,158 +1782,158 @@ Tente sincronizar novamente. Mirall::SyncEngine - + Success. Sucesso. - + CSync failed to create a lock file. Falha ao criar o arquivo de trava pelo CSync. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Csync falhou ao carregar ou criar o arquivo jornal. Certifique-se de ter permissão de escrita no diretório de sincronização local. - + CSync failed to write the journal file. Csync falhou ao tentar gravar o arquivo jornal. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>O plugin %1 para csync não foi carregado.<br/>Por favor verifique a instalação!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. - A hora do sistema neste cliente é diferente do que o tempo de sistema no servidor. Por favor, use um serviço de sincronização de tempo (NTP) no servidor e máquinas clientes para que os tempos continuam os mesmos. + A hora do sistema neste cliente é diferente da hora de sistema no servidor. Por favor, use um serviço de sincronização de tempo (NTP) no servidor e máquinas clientes para que as datas continuam as mesmas. - + CSync could not detect the filesystem type. Tipo de sistema de arquivo não detectado pelo CSync. - + CSync got an error while processing internal trees. Erro do CSync enquanto processava árvores internas. - + CSync failed to reserve memory. CSync falhou ao reservar memória. - + CSync fatal parameter error. - Erro fatal permanente do CSync. + Erro fatal de parametro do CSync. - + CSync processing step update failed. Processamento da atualização do CSync falhou. - + CSync processing step reconcile failed. Processamento da conciliação do CSync falhou. - + CSync processing step propagate failed. Processamento da propagação do CSync falhou. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>O diretório de destino não existe.</p> <p>Por favor, verifique a configuração de sincronização. </p> - + A remote file can not be written. Please check the remote access. O arquivo remoto não pode ser escrito. Por Favor, verifique o acesso remoto. - + The local filesystem can not be written. Please check permissions. O sistema de arquivos local não pode ser escrito. Por favor, verifique as permissões. - + CSync failed to connect through a proxy. CSync falhou ao conectar por um proxy. - + CSync could not authenticate at the proxy. Csync não conseguiu autenticação no proxy. - + CSync failed to lookup proxy or server. CSync falhou ao localizar o proxy ou servidor. - + CSync failed to authenticate at the %1 server. CSync falhou ao autenticar no servidor %1. - + CSync failed to connect to the network. CSync falhou ao conectar à rede. - - A network connection timeout happend. - Atingido o tempo limite para conexão à rede. + + A network connection timeout happened. + Ocorreu uma desconexão de rede. - + A HTTP transmission error happened. Houve um erro na transmissão HTTP. - + CSync failed due to not handled permission deniend. CSync falhou devido a uma negativa de permissão não resolvida. - + CSync failed to access Falha no acesso CSync - + CSync tried to create a directory that already exists. CSync tentou criar um diretório que já existe. - - + + CSync: No space on %1 server available. - CSync: sem espaço disponível no servidor %1. + CSync: Sem espaço disponível no servidor %1. - + CSync unspecified error. Erro não especificado no CSync. - + Aborted by the user Abortado pelo usuário - + An internal error number %1 happened. - Um ocorreu um erro interno de número %1. + Ocorreu um erro interno de número %1. - + The item is not synced because of previous errors: %1 O item não está sincronizado devido a erros anteriores: %1 @@ -1945,15 +1953,61 @@ Tente sincronizar novamente. Arquivos que contém caracteres inválidos não podem ser sincronizados através de plataformas. - + Unable to initialize a sync journal. Impossibilitado de iniciar a sincronização. - + Cannot open the sync journal Não é possível abrir o arquivo de sincronização + + + Not allowed because you don't have permission to add sub-directories in that directory + Não permitido porque você não tem permissão de criar sub-pastas nesta pasta + + + + Not allowed because you don't have permission to add parent directory + Não permitido porque você não tem permissão de criar pastas mãe + + + + Not allowed because you don't have permission to add files in that directory + Não permitido porque você não tem permissão de adicionar arquivos a esta pasta + + + + Not allowed to upload this file because it is read-only on the server, restoring + Não é permitido fazer o upload deste arquivo porque ele é somente leitura no servidor, restaurando + + + + + Not allowed to remove, restoring + Não é permitido remover, restaurando + + + + Move not allowed, item restored + Não é permitido mover, item restaurado + + + + Move not allowed because %1 is read-only + Não é permitido mover porque %1 é somente para leitura + + + + the destination + o destino + + + + the source + a fonte + Mirall::Systray @@ -1966,7 +2020,7 @@ Tente sincronizar novamente. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Versão %1 Para mais informações, visite <a href='%2'>%3</a>. </p> Direitos autorais ownCloud, Inc. <p><p> Distribuído por 4% e licenciado sob a GNU General Public License (GPL) Versão 2.0.<br>%5 e o logotipo 5% são marcas comerciais registradas da 4% no de Estados Unidos, outros países, ou ambos. </p> @@ -1974,47 +2028,47 @@ Tente sincronizar novamente. Mirall::ownCloudGui - + Please sign in Favor conectar - + Disconnected from server Desconectado do servidor - + Folder %1: %2 Pasta %1: %2 - + No sync folders configured. Pastas de sincronização não configuradas. - + None. Nenhum. - + Recent Changes Alterações Recentes - + Open %1 folder Abrir pasta %1 - + Managed Folders: Pastas Gerenciadas: - + Open folder '%1' Abrir pasta '%1' @@ -2151,7 +2205,7 @@ Tente sincronizar novamente. Status message - Status da mensagem + Mensagem de status @@ -2298,27 +2352,27 @@ Tente sincronizar novamente. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2339,7 +2393,7 @@ Tente sincronizar novamente. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Se você ainda não tem um servidor ownCloud, acesse <a href="https://owncloud.com">owncloud.com</a> para obter mais informações. @@ -2348,14 +2402,14 @@ Tente sincronizar novamente. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Compilado da revisão Git <a href="%1">%2</a> on %3, %4 usando Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 - <p>Versão %2. Para mais informações visite <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>BAseado em Mirall by Duncan Mac-Vicar P.</small></p>%7 + <p>Versão %2. Para mais informações visite <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Baseado em Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2442,57 +2496,57 @@ Tente sincronizar novamente. theme - + Status undefined Status indefinido - + Waiting to start sync Aguardando para iniciar sincronização - + Sync is running Sincronização em andamento - + Sync Success - Sucesso da Sincronização + Sucesso na Sincronização - + Sync Success, some files were ignored. Sincronizado com Sucesso, alguns arquivos foram ignorados. - + Sync Error Erro de sincronização - + Setup Error Erro na Configuração - + The server is currently unavailable Servidor indisponível no momento. - + Preparing to sync Preparando para sincronização - + Aborting... Abortando... - + Sync is paused Sincronização em pausa diff --git a/translations/mirall_ru.ts b/translations/mirall_ru.ts index bf288cace..c2fc62983 100644 --- a/translations/mirall_ru.ts +++ b/translations/mirall_ru.ts @@ -144,28 +144,28 @@ <p>Вы действительно хотите сбросить папку <i>%1</i> и перестроить клиентскую базу данных?</p><p><b>Важно:</b> Данный функционал предназначен только для технического обслуживания. Файлы не будут удалены, но, в зависимости от размера папки, операция может занять от нескольких минут до нескольких часов и может быть передан большой объем данных. Используйте данную операцию только по рекомендации администратора.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. - + Используется %1 (%3%) из %2 места на сервере. - + No connection to %1 at <a href="%2">%3</a>. - + Нет связи с %1 по адресу <a href="%2">%3</a>. - + No %1 connection configured. Нет настроенного подключения %1. - + Sync Running Синхронизация запущена @@ -175,34 +175,35 @@ Учётная запись не настроена. - + The syncing operation is running.<br/>Do you want to terminate it? Синхронизация запущена.<br/>Вы хотите, остановить ее? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 / %4) Осталось %5 на скорости %6/сек. - + %1 of %2, file %3 of %4 Total time left %5 - + %1 / %2, файл %3 / %4 +Оставшееся время: %5 - + Connected to <a href="%1">%2</a>. Соединились с <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Подключён к <a href="%1">%2</a> как <i>%3</i>. - + Currently there is no storage usage information available. В данный момент информация о заполненности хранилища недоступна. @@ -212,12 +213,12 @@ Total time left %5 Authentication Required - + Требуется аутентификация Enter username and password for '%1' at %2. - + Введите имя пользователя и пароль для '%1' в %2. @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Учётная запись OwnCloud не настроена - + The configured server for this client is too old Настроенный сервер слишком стар для этого клиента - + Please update to the latest server and restart the client. Пожалуйста, обновите сервер до последней версии и перезапустите клиент. - + Unable to connect to %1 Невозможно подключиться к %1 - + The provided credentials are not correct Введённые учётные данные не верны @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Невозможно создать контекст csync - + Local folder %1 does not exist. Локальный каталог %1 не существует. - + %1 should be a directory but is not. %1 должен быть каталогом, но не является таковым. - + %1 is not readable. %1 не читается. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + '%1' и ещё %2 других файлов были удалены. - + %1 has been removed. %1 names a file. - + '%1' был удалён - + %1 and %2 other files have been downloaded. %1 names a file. - + '%1' и ещё %2 других файлов были загружены. - + %1 has been downloaded. %1 names a file. - + %1 был загружен. - + %1 and %2 other files have been updated. - + %1 и ещё %2 других файла были обновлены. - + %1 has been updated. %1 names a file. - + %1 был обновлён. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 был переименован в %2 и ещё %3 других файлов были переименованы. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 был переименован в %2. + + + + %1 has been moved to %2 and %3 other files have been moved. + %1 был перемещён в %2 и ещё %3 других файлов были перемещены. + + + + %1 has been moved to %2. + %1 был перемещён в %2. - %1 has been moved to %2 and %3 other files have been moved. - - - - - %1 has been moved to %2. - - - - Sync Activity Журнал синхронизации - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Это действие может удалить все файлы в локальной папке '%1'. -Если вы или ваш администратор заново создали вашу учётную запись на сервере, выберите "Сохранить файлы". Если вы хотите стереть всё - выберите "Удалить все файлы". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Are you sure you want to perform this operation? Вы уверены, что хотите выполнить операцию? - + Remove All Files? Удалить все файлы? - + Remove all files Удалить все файлы - + Keep files Сохранить файлы @@ -381,67 +375,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state Невозможно сбросить состояние папки - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Найден старый журнал синхронизации '%1', и он не может быть удалён. Пожалуйста убедитесь что он не открыт в каком-либо приложении. - + Undefined State. Неопределенное состояние. - + Waits to start syncing. Ожидает, чтобы начать синхронизацию. - + Preparing for sync. Подготовка к синхронизации. - + Sync is running. Идет синхронизация. - + Server is currently not available. Сервер недоступен. - + Last Sync was successful. Последняя синхронизация прошла успешно. - + Last Sync was successful, but with warnings on individual files. Последняя синхронизация прошла успешно, но были предупреждения о нескольких файлах. - + Setup Error. Ошибка установки. - + User Abort. Отмена пользователем. - + Sync is paused. Синхронизация приостановлена. - + %1 (Sync is paused) %! (синхронизация приостановлена) @@ -468,8 +462,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Добавить папку @@ -514,7 +508,7 @@ Are you sure you want to perform this operation? The selected folder is a symbolic link. An already configured folder is contained in the folder this link is pointing to. - + Выбранная папка является симолической ссылкой. В папке, на которую идет ссылка, присутствует папка, которая синхронизируется. @@ -545,42 +539,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder Добавить удалённую папку - + Enter the name of the new folder: Введите имя новой папки: - + Folder was successfully created on %1. Папка была успешно создана на %1. - + Failed to create the folder on %1. Please check manually. Невозможно создать директорию по адресу %1. Пожалуйста, попробуйте вручную. - + Choose this to sync the entire account Выберите это для синхронизации всей учётной записи - + This folder is already being synced. Директория уже синхронизируется. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Директория <i>%1</i> уже настроена для синхронизации, и она является родительской для директории <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. В данный момент включена синхронизация всех файлов. Синхронизация другой директории в этом режиме <b>не</b> поддерживается. При необходимости синхронизировать несколько локальных директорий, сначала удалите синхронизацию корневой папки сервера. @@ -597,20 +591,25 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway E-Tag от сервера на получен, проверьте сетевые настройки (настройки прокси, шлюз). - + We received a different E-Tag for resuming. Retrying next time. Мы получили другой E-Tag для возобновления. Повторите попытку позже. - - Connection Timeout + + Server returned wrong content-range + + + Connection Timeout + Тайм-аут подключения + Mirall::GeneralSettings @@ -621,8 +620,8 @@ Are you sure you want to perform this operation? - General Setttings - Общие настройки + General Settings + Основные настройки @@ -659,12 +658,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password Введите пароль - + Please enter %1 password for user '%2': Пожалуйста введите пароль от %1 для пользователя '%2': @@ -674,7 +673,7 @@ Are you sure you want to perform this operation? Ignored Files Editor - Редактор игнорирующихся файлов + Редактор игнорированных файлов @@ -806,8 +805,8 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Новая версия программы-клиента %1 доступна.</p><p><b>%2</b> доступна для скачивания. Установленная версия %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>Доступна новая версия приложения %1.</p><p><b>%2</b> доступна для загрузки. Установленная версия: %3.</p> @@ -870,7 +869,7 @@ Checked items will also be deleted if they prevent a directory from being remove Download Bandwidth - Пропускная способность загрузки + Скорость загрузки с сервера @@ -893,7 +892,7 @@ Checked items will also be deleted if they prevent a directory from being remove Upload Bandwidth - Пропускная способность закачки + Скорость закачки на сервер @@ -962,8 +961,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - Доступна новая версия %1. Для её установки перейдите в раздел обновления системы. + New version %1 available. Please use the system's update tool to install it. + Доступна новая версия %1. Чтобы его установить, пожалуйста, воспользуйтесь инструментом обновления системы. @@ -1077,7 +1076,7 @@ It is not advisable to use it. Сбой подключения - + Update %1 server Обновить %1 сервер @@ -1085,134 +1084,134 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed Ошибка переименования папки - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Локальная папка для синхронизации %1 успешно создана!</b></font> - + Trying to connect to %1 at %2... Попытка соединиться с %1 на %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Успешно подключено к %1: %2 версия %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Ошибка: Неверные учётные данные. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Локальная синхронизация папки %1 уже существует, ее настройки для синхронизации.<br/><br/> - + Creating local sync folder %1... Создание локальной папки синхронизации %1... - + ok ок - + failed. не удалось. - + Could not create local folder %1 Не удалось создать локальную папку синхронизации %1 - - + + Failed to connect to %1 at %2:<br/>%3 Не удалось подключиться к %1 в %2:<br/>%3 - + No remote folder specified! Не указана удалённая папка! - + Error: %1 Ошибка: %1 - + creating folder on ownCloud: %1 создание папки на ownCloud: %1 - + Remote folder %1 created successfully. Удалённая папка %1 успешно создана. - + The remote folder %1 already exists. Connecting it for syncing. Удалённая папка %1 уже существует. Подключение к ней для синхронизации. - - + + The folder creation resulted in HTTP error code %1 Создание папки завершилось с HTTP-ошибкой %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Не удалось создать удаленную папку — представленные параметры доступа неверны!<br/>Пожалуйста, вернитесь назад и проверьте параметры доступа.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Удаленное создание папки не удалось, вероятно, потому, что предоставленные учетные данные неверны.</font><br/>Пожалуйста, вернитесь назад и проверьте данные.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Удаленная папка %1 не создана из-за ошибки <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Установлено соединение синхронизации с %1 к удалённой директории %2. - + Successfully connected to %1! Соединение с %1 установлено успешно! - + Connection to %1 could not be established. Please check again. Подключение к %1 не воможно. Пожалуйста, проверьте еще раз. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - + Невозможно стереть папку и создать её резервную копию так как папка или файл в ней открыты в другой программе. Пожалуйста, закройте папку или файл и нажмите "Повторите попытку", либо прервите мастер настройки. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Мастер соединения @@ -1250,18 +1249,18 @@ It is not advisable to use it. Connection Timeout - + Тайм-аут подключения Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Синхронизация прервана пользователем. - + No E-Tag received from server, check Proxy/Gateway E-Tag от сервера на получен, проверьте сетевые настройки (настройки прокси, шлюз). @@ -1271,36 +1270,46 @@ It is not advisable to use it. Мы получили другой E-Tag для возобновления. Повторите попытку позже. - - File %1 can not be downloaded because of a local file name clash! + + Server returned wrong content-range + + + File %1 can not be downloaded because of a local file name clash! + Файл %1 не может быть загружен из-за локальных конфликтов имен! + Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - + Файл %1 не может быть загружен из-за локальных конфликтов имен! Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Восстановление не удалось: + + + A file or directory was removed from a read only share, but restoring failed: %1 - + Файл или каталог был удалён из опубликованной папки с правами только для чтения, но восстановить его не удалось: %1 Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + Внимание, возможен конфликт чувствительности к регистру с %1 - + could not create directory %1 не удалось создать директорию %1 @@ -1310,7 +1319,7 @@ It is not advisable to use it. Could not remove %1 because of a local file name clash - + Файл %1 не может быть удален из-за локальных конфликтов имен @@ -1321,35 +1330,35 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash - + Файл %1 не может быть переименован в %2 из-за локальных конфликтов имен Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. - + Файл был удалён из опубликованной папки с правами только для чтения. Файл был восстановлен. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Эта папка не должна переименовываться. Ей будет присвоено изначальное имя. - + This folder must not be renamed. Please name it back to Shared. Эта папка не должна переименовываться. Пожалуйста, верните ей имя Shared - + The file was renamed but is part of a read only share. The original file was restored. - + Этот файл был переименован но является частью опубликованной папки с правами только для чтения. Оригинальный файл был восстановлен. @@ -1368,30 +1377,30 @@ It is not advisable to use it. The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + Этот файл был изменен локально, но является частью опубликованной папки с правами только для чтения. Он восстановлен и ваши изменения находятся в файле конфликтов. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + Этот файл был изменен локально, но является частью опубликованной папки с правами только для чтения. Он восстановлен и ваши изменения находятся в файле конфликтов. - + The local file was removed during sync. - + Локальный файл был удалён в процессе синхронизации. - + Local file changed during sync. - + Локальный файл изменился в процессе синхронизации. - + The server did not acknowledge the last chunk. (No e-tag were present) - + Сервер не смог подтвердить последний отрезок данных. (Отсутствовали теги e-tag) @@ -1417,62 +1426,62 @@ It is not advisable to use it. 4 - + Time Время - + File Файл - + Folder Папка - + Action Действие - + Size Размер - + Retry Sync Повторить попытку синхронизации - + Copy Копировать - + Copy the activity list to the clipboard. Скопировать журнал синхронизации в буфер обмена. - + Copied to clipboard Скопировано в буфер обмена - + The sync status has been copied to the clipboard. Статус синхронизации скопирован в буфер обмена. - + Currently no files are ignored because of previous errors. На данный момент файлы, игнорируемые из-за ошибок, отсутствуют. - + %1 files are ignored because of previous errors. Try to sync these again. %1 файлов проигнорировано из-за ошибок. @@ -1494,7 +1503,7 @@ It is not advisable to use it. Activity - Действие + Действия @@ -1515,27 +1524,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 %1 - + Account Учётная запись - + Activity - Действие + Действия - + General Основные - + Network Сеть @@ -1543,35 +1552,35 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - + Ошибка входа - + You must sign in as user %1 - + Вы должны войти как пользователь %1 Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Авторизация - + Reauthentication required - + Требуется повторная аутентификация - + Your session has expired. You need to re-login to continue to use the client. - + Срок действия вашей сессии истек. Нужно перезайти, чтобы продолжить пользоваться приложением. - + %1 - %2 %1 - %2 @@ -1775,160 +1784,160 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. Успешно. - + CSync failed to create a lock file. CSync не удалось создать файл блокировки. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync не смог загрузить или создать файл журнала. Убедитесь что вы имеете права чтения и записи в локальной директории. - + CSync failed to write the journal file. CSync не смог записать файл журнала. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>%1 плагин для синхронизации не удается загрузить.<br/>Пожалуйста, убедитесь, что он установлен!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Системное время на этом клиенте отличается от времени на сервере. Воспользуйтесь сервисом синхронизации времени (NTP) на серверной и клиентской машинах для установки точного времени. - + CSync could not detect the filesystem type. CSync не удалось обнаружить тип файловой системы. - + CSync got an error while processing internal trees. CSync получил сообщение об ошибке при обработке внутренних деревьев. - + CSync failed to reserve memory. CSync не удалось зарезервировать память. - + CSync fatal parameter error. Фатальная ошибка параметра CSync. - + CSync processing step update failed. Процесс обновления CSync не удался. - + CSync processing step reconcile failed. Процесс согласования CSync не удался. - + CSync processing step propagate failed. Процесс передачи CSync не удался. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Целевая папка не существует.</p><p>Проверьте настройки синхронизации.</p> - + A remote file can not be written. Please check the remote access. Удаленный файл не может быть записан. Пожалуйста, проверьте удаленный доступ. - + The local filesystem can not be written. Please check permissions. Локальная файловая система не доступна для записи. Пожалуйста, проверьте права пользователя. - + CSync failed to connect through a proxy. CSync не удалось подключиться через прокси. - + CSync could not authenticate at the proxy. CSync не удалось авторизоваться на прокси сервере. - + CSync failed to lookup proxy or server. CSync не удалось найти прокси сервер. - + CSync failed to authenticate at the %1 server. CSync не удалось аутентифицироваться на сервере %1. - + CSync failed to connect to the network. CSync не удалось подключиться к сети. - - A network connection timeout happend. + + A network connection timeout happened. Произошёл таймаут соединения сети. - + A HTTP transmission error happened. Произошла ошибка передачи http. - + CSync failed due to not handled permission deniend. CSync упал в связи с отутствием обработки из-за отказа в доступе. - + CSync failed to access CSync не имеет доступа - + CSync tried to create a directory that already exists. CSync пытался создать директорию, которая уже существует. - - + + CSync: No space on %1 server available. CSync: Нет доступного пространства на сервере %1 server. - + CSync unspecified error. Неизвестная ошибка CSync. - + Aborted by the user Прервано пользователем - + An internal error number %1 happened. - + Произошла внутренняя ошибка номер %1. - + The item is not synced because of previous errors: %1 - + Путь не синхронизируется из-за произошедших ошибок: %1 @@ -1946,14 +1955,60 @@ It is not advisable to use it. Файл содержит недопустимые символы, которые невозможно синхронизировать между платформами. - + Unable to initialize a sync journal. Не удалось инициализировать журнал синхронизации. - + Cannot open the sync journal - + Не удаётся открыть журнал синхронизации + + + + Not allowed because you don't have permission to add sub-directories in that directory + Недопустимо из-за отсутствия у вас разрешений на добавление подпапок в этой папке + + + + Not allowed because you don't have permission to add parent directory + Недопустимо из-за отсутствия у вас разрешений на добавление родительской папки + + + + Not allowed because you don't have permission to add files in that directory + Недопустимо из-за отсутствия у вас разрешений на добавление файлов в эту папку + + + + Not allowed to upload this file because it is read-only on the server, restoring + Недопустимо отправить этот файл поскольку на севрере он помечен только для чтения, восстанавливаем + + + + + Not allowed to remove, restoring + Недопустимо удалить, восстанавливаем + + + + Move not allowed, item restored + Перемещение недопустимо, элемент восстановлен + + + + Move not allowed because %1 is read-only + Перемещение недопустимо, поскольку %1 помечен только для чтения + + + + the destination + Назначение + + + + the source + Источник @@ -1967,55 +2022,55 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> - + <p>Версия %1 Подробнее <a href='%2'>%3</a>.</p><p>Копирайт ownCloud, Inc.<p><p>Распространяется %4 и лицензировано под GNU General Public License (GPL) Версии 2.0.<br>%5 и %5 и логотип являются зарегистрированными торговыми марками %4 в<br>США и других странах,.</p> Mirall::ownCloudGui - + Please sign in Пожалуйста войдите в учётную запись - + Disconnected from server - + Отсоединен от сервера - + Folder %1: %2 Папка %1: %2 - + No sync folders configured. Нет папок для синхронизации. - + None. Пусто - + Recent Changes Недавние изменения - + Open %1 folder Открыть %1 папку - + Managed Folders: Управляемые папки: - + Open folder '%1' Открыть папку '%1' @@ -2052,7 +2107,7 @@ It is not advisable to use it. Quit %1 - Выход %1 + Закрыть %1 @@ -2082,12 +2137,12 @@ It is not advisable to use it. Syncing %1 of %2 (%3 left) - + Синхронизация %1 из %2 (%3 осталось) Syncing %1 (%2 left) - + Синхронизация %1 (%2 осталось) @@ -2299,27 +2354,27 @@ It is not advisable to use it. Utility - + %L1 TB %L1 ТБ - + %L1 GB %L1 ГБ - + %L1 MB %L1 МБ - + %L1 kB %L1 кБ - + %L1 B %L1 Б @@ -2340,7 +2395,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Если у Вас ещё нет сервера ownCloud, обратитесь за дополнительной информацией на <a href="https://owncloud.com">owncloud.com</a> @@ -2349,16 +2404,14 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Собрано из исходников Git <a href="%1">%2</a> %3, %4 используя Qt %5.</small><p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 - <p>Версия %2. Дополнительная информация: <a href="%3">%4</a></p><p><small>Создано Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>За основу взато ПО Mirall. Duncan Mac-Vicar P.</small></p>%7 - - + <p>Версия %2. Дополнительная информация: <a href="%3">%4</a></p><p><small>Авторы: Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Основано на Mirall, автор Duncan Mac-Vicar P.</small></p>%7 @@ -2386,12 +2439,12 @@ It is not advisable to use it. Ignored - + Проигнорирован Filesystem access error - + Ошибка доступа к файловой системе @@ -2445,57 +2498,57 @@ It is not advisable to use it. theme - + Status undefined Статус неопределён - + Waiting to start sync Ожидание начала синхронизации - + Sync is running Синхронизация запущена - + Sync Success Синхронизация прошла успешно - + Sync Success, some files were ignored. Синхронизация прошла успешно, некоторые файлы были проигнорированы. - + Sync Error Ошибка синхронизации - + Setup Error Ошибка установки - + The server is currently unavailable Сервер временно недоступен - + Preparing to sync Подготовка к синхронизации - + Aborting... Прерывание... - + Sync is paused Синхронизация приостановлена diff --git a/translations/mirall_sk.ts b/translations/mirall_sk.ts index 529b316ff..30ef43dca 100644 --- a/translations/mirall_sk.ts +++ b/translations/mirall_sk.ts @@ -144,28 +144,28 @@ <p>Skutočne chcete zresetovať priečinok <i>%1</i> a opätovne zostaviť klientskú databázu?</p><p><b>Poznámka:</b> Táto funkcia je navrhnutá len pre účely údržby. Žiadne súbory nebudú odstránené, ale môže to spôsobiť značnú dátovú prevádzku a vyžiadať si niekoľko minút alebo hodín pre dokončenie, v závislosti od veľkosti priečinka. Použite túto možnosť pokiaľ máte doporučenie od správcu.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) z %2 miesta na disku je použité. - + No connection to %1 at <a href="%2">%3</a>. Žiadne spojenie s %1 na <a href="%2">%3</a>. - + No %1 connection configured. Žiadne nakonfigurované %1 spojenie - + Sync Running Prebiehajúca synchronizácia @@ -175,34 +175,34 @@ Žiadny účet nie je nastavený. - + The syncing operation is running.<br/>Do you want to terminate it? Proces synchronizácie práve prebieha.<br/>Chcete ho ukončiť? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. Pripojené k <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Pripojené k <a href="%1">%2</a> ako <i>%3</i>. - + Currently there is no storage usage information available. Teraz nie sú k dispozícii žiadne informácie o využití úložiska. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Žiadny účet v ownCloude nie je nastavený - + The configured server for this client is too old Server nakonfigurovaný pre tohto klienta je príliš starý - + Please update to the latest server and restart the client. Prosím aktualizujte na najnovšiu verziu servera a reštartujte klienta. - + Unable to connect to %1 Nedá sa pripojiť k %1 - + The provided credentials are not correct Poskytnuté poverenia nie sú správne @@ -261,100 +261,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Nemožno vytvoriť "csync-kontext" - + Local folder %1 does not exist. Lokálny priečinok %1 neexistuje. - + %1 should be a directory but is not. %1 by mal byť priečinok, avšak nie je. - + %1 is not readable. %1 nie je čitateľný. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 a %2 ďalších súborov bolo zmazaných. - + %1 has been removed. %1 names a file. %1 bol zmazaný. - + %1 and %2 other files have been downloaded. %1 names a file. %1 a %2 ďalších súborov bolo stiahnutých. - + %1 has been downloaded. %1 names a file. %1 bol stiahnutý. - + %1 and %2 other files have been updated. %1 a %2 ďalších súborov bolo aktualizovaných. - + %1 has been updated. %1 names a file. %1 bol aktualizovaný. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 bol premenovaný na %2 a %3 ďalších súborov bolo premenovaných. - + %1 has been renamed to %2. %1 and %2 name files. %1 bol premenovaný na %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 bol presunutý do %2 a %3 ďalších súborov bolo presunutých. - + %1 has been moved to %2. %1 bol presunutý do %2. - + Sync Activity Aktivita synchronizácie - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Táto synchronizácia odstráni všetky súbory v lokálnom synchronizačnom priečinku '%1'. -Pokiaľ vy alebo váš správca zresetoval váš účet na serveri, vyberte možnosť "Ponechať súbory". Pokiaľ chcete odstrániť vaše dáta, vyberte možnosť "Odstrániť všetky súbory". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +356,17 @@ Toto môže byť kvôli tichej rekonfigurácii priečinka, prípadne boli všetk Ste si istý, že chcete uskutočniť danú operáciu? - + Remove All Files? Odstrániť všetky súbory? - + Remove all files Odstrániť všetky súbory - + Keep files Ponechať súbory @@ -381,67 +374,67 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::FolderMan - + Could not reset folder state Nemožno resetovať stav priečinka - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Starý synchronizačný žurnál '%1' nájdený, avšak neodstrániteľný. Prosím uistite sa, že žiadna aplikácia ho práve nevyužíva. - + Undefined State. Nedefinovaný stav. - + Waits to start syncing. Čakanie na štart synchronizácie. - + Preparing for sync. Príprava na synchronizáciu. - + Sync is running. Synchronizácia prebieha. - + Server is currently not available. Sever momentálne nie je prístupný. - + Last Sync was successful. Posledná synchronizácia sa úspešne skončila. - + Last Sync was successful, but with warnings on individual files. Posledná synchronizácia bola úspešná, ale z varovaniami pre individuálne súbory. - + Setup Error. Chyba pri inštalácii. - + User Abort. Zrušené používateľom. - + Sync is paused. Synchronizácia je pozastavená. - + %1 (Sync is paused) %1 (Synchronizácia je pozastavená) @@ -468,8 +461,8 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::FolderWizard - - + + Add Folder Pridať priečinok @@ -545,42 +538,42 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::FolderWizardRemotePath - + Add Remote Folder Pridať vzdialený priečinok - + Enter the name of the new folder: Vložiť meno nového priečinka: - + Folder was successfully created on %1. Priečinok bol úspešne vytvorený na %1. - + Failed to create the folder on %1. Please check manually. Na %1 zlyhalo vytvorenie priečinka. Skontrolujte to, prosím, ručne. - + Choose this to sync the entire account Zvoľte pre synchronizáciu celého účtu - + This folder is already being synced. Tento priečinok sa už synchronizuje. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Priečinok <i>%1</i> už synchronizujete a je nadradený priečinku <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Už synchronizujete všetky vaše súbory. Synchronizácia dalšieho priečinka <b>nie je</b> podporovaná. Ak chcete synchronizovať viac priečinkov, odstránte, prosím, synchronizáciu aktuálneho kořenového priečinka. @@ -597,17 +590,22 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Zo servera nebol prijatý E-Tag, skontrolujte proxy/bránu - + We received a different E-Tag for resuming. Retrying next time. Prijali sme iný E-Tag pre pokračovanie. Skúsim to neskôr znovu. - + + Server returned wrong content-range + + + + Connection Timeout Spojenie vypršalo @@ -621,8 +619,8 @@ Ste si istý, že chcete uskutočniť danú operáciu? - General Setttings - Všeobecné nastavenia + General Settings + @@ -659,12 +657,12 @@ Ste si istý, že chcete uskutočniť danú operáciu? Mirall::HttpCredentials - + Enter Password Vložte heslo - + Please enter %1 password for user '%2': Zadajte prosím %1 heslo pre používateľa '%2': @@ -806,8 +804,8 @@ Zaškrtnuté položky budú taktiež zmazané pokiaľ bránia priečinku pri ods - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Nová verzia %1 klienta je dostupná.</p><p><b>%2</b> je dostupný na stiahnutie. Nainštalovaná verzia je %3.</p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -962,8 +960,8 @@ si počas procesu aktualizácie môže vyžiadať dodatočné práva. - New version %1 available. Please use the systems update tool to install it. - Nová verzia %1 je dostupná. Pre inštaláciu použite aktualizačný nástroj systému. + New version %1 available. Please use the system's update tool to install it. + @@ -1077,7 +1075,7 @@ Nie je vhodné ju používať. Spojenie zlyhalo - + Update %1 server Updatovať server %1 @@ -1085,126 +1083,126 @@ Nie je vhodné ju používať. Mirall::OwncloudSetupWizard - + Folder rename failed Premenovanie priečinka zlyhalo - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Lokálny synchronizačný priečinok %1 bol úspešne vytvorený!</b></font> - + Trying to connect to %1 at %2... Pokúšam sa o pripojenie k %1 na %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Úspešne pripojené k %1: %2 verzie %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Chyba: Nesprávne údaje. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Lokálny synchronizačný priečinok %1 už existuje, prebieha jeho nastavovanie pre synchronizáciu.<br/><br/> - + Creating local sync folder %1... Vytváranie lokálneho synchronizačného priečinka %1 ... - + ok v poriadku - + failed. neúspešné. - + Could not create local folder %1 Nemožno vytvoriť lokálny priečinok %1 - - + + Failed to connect to %1 at %2:<br/>%3 Zlyhalo spojenie s %1 o %2:<br/>%3 - + No remote folder specified! Vzdialený priečinok nie je nastavený! - + Error: %1 Chyba: %1 - + creating folder on ownCloud: %1 vytváram priečinok v ownCloude: %1 - + Remote folder %1 created successfully. Vzdialený priečinok %1 bol úspešne vytvorený. - + The remote folder %1 already exists. Connecting it for syncing. Vzdialený priečinok %1 už existuje. Prebieha jeho pripájanie pre synchronizáciu. - - + + The folder creation resulted in HTTP error code %1 Vytváranie priečinka skončilo s HTTP chybovým kódom %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Proces vytvárania vzdialeného priečinka zlyhal, lebo použité prihlasovacie údaje nie sú správne!<br/>Prosím skontrolujte si vaše údaje a skúste to znovu.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Vytvorenie vzdialeného priečinka pravdepodobne zlyhalo kvôli nesprávnym prihlasovacím údajom.</font><br/>Prosím choďte späť a skontrolujte ich.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Vytvorenie vzdialeného priečinka %1 zlyhalo s chybou <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Synchronizačné spojenie z %1 do vzdialeného priečinka %2 bolo práve nastavené. - + Successfully connected to %1! Úspešne pripojené s %1! - + Connection to %1 could not be established. Please check again. Pripojenie k %1 nemohlo byť iniciované. Prosím skontrolujte to znovu. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Nemožno odstrániť a zazálohovať priečinok, pretože priečinok alebo súbor je otvorený v inom programe. Prosím zatvorte priečinok nebo súbor a skúste to znovu alebo zrušte akciu. @@ -1212,7 +1210,7 @@ Nie je vhodné ju používať. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Asistent pripojenia @@ -1256,12 +1254,12 @@ Nie je vhodné ju používať. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synchronizácia zrušená používateľom. - + No E-Tag received from server, check Proxy/Gateway Zo servera nebol prijatý E-Tag, skontrolujte proxy/bránu @@ -1271,7 +1269,12 @@ Nie je vhodné ju používať. Prijali sme iný E-Tag pre pokračovanie. Skúsim to neskôr znovu. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! @@ -1279,7 +1282,7 @@ Nie je vhodné ju používať. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Súbor %1 nie je možné stiahnuť, pretože súbor s rovnakým menom už existuje! @@ -1287,7 +1290,12 @@ Nie je vhodné ju používať. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 Súbor alebo priečinok bol odobratý zo zdieľania len na čítanie, ale jeho obnovenie zlyhalo: %1 @@ -1295,12 +1303,12 @@ Nie je vhodné ju používať. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Pozor, možná kolízia z dôvodu veľkosti písmen s %1 - + could not create directory %1 nepodarilo sa vytvoriť priečinok %1 @@ -1321,7 +1329,7 @@ Nie je vhodné ju používať. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Súbor %1 nemôže byť premenovaný na %2 z dôvodu, že tento názov je už použitý @@ -1329,7 +1337,7 @@ Nie je vhodné ju používať. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Súbor bol odobratý zo zdieľania len na čítanie. Súbor bol obnovený. @@ -1337,17 +1345,17 @@ Nie je vhodné ju používať. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Tento priečinok nemôže byť premenovaný. Prosím, vráťte mu pôvodné meno. - + This folder must not be renamed. Please name it back to Shared. Tento priečinok nemôže byť premenovaný. Prosím, vráťte mu meno Shared. - + The file was renamed but is part of a read only share. The original file was restored. Súbor bol premenovaný, ale je súčasťou zdieľania len na čítanie. Pôvodný súbor bol obnovený. @@ -1374,22 +1382,22 @@ Nie je vhodné ju používať. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Súbor bol zmenený, ale je súčasťou zdieľania len na čítanie. Pôvodný súbor bol obnovený a upravená verzia je uložená v konfliktnom súbore. - + The local file was removed during sync. Lokálny súbor bol odstránený počas synchronizácie. - + Local file changed during sync. Lokálny súbor bol zmenený počas synchronizácie. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1417,62 +1425,62 @@ Nie je vhodné ju používať. 4 - + Time Čas - + File Súbor - + Folder Priečinok - + Action Akcia - + Size Veľkosť - + Retry Sync Zopakovať synchronizáciu - + Copy Kopírovať - + Copy the activity list to the clipboard. Skopírovať zoznam aktivít do schránky. - + Copied to clipboard Skopírované do schránky - + The sync status has been copied to the clipboard. Stav synchronizácie bol nakopírovaný do schránky. - + Currently no files are ignored because of previous errors. V súčastnosti nie sú na čiernej listine žiadne súbory kvôli predchádzajúcim chybovým stavom. - + %1 files are ignored because of previous errors. Try to sync these again. %1 súborov je na čiernej listine kvôli predchádzajúcim chybovým stavom. @@ -1514,27 +1522,27 @@ Nie je vhodné ju používať. Mirall::SettingsDialogMac - + %1 %1 - + Account Účet - + Activity Aktivita - + General Všeobecné - + Network Sieť @@ -1542,12 +1550,12 @@ Nie je vhodné ju používať. Mirall::ShibbolethCredentials - + Login Error Chybné prihlásenie - + You must sign in as user %1 Musíte sa prihlásiť ako používateľ %1 @@ -1555,22 +1563,22 @@ Nie je vhodné ju používať. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - overenie - + Reauthentication required Vyžaduje sa opätovné overenie - + Your session has expired. You need to re-login to continue to use the client. Platnosť relácie uplynula. Musíte sa znovu prihlásiť, ak chcete pokračovať v používaní klienta. - + %1 - %2 %1 - %2 @@ -1774,158 +1782,158 @@ Nie je vhodné ju používať. Mirall::SyncEngine - + Success. Úspech. - + CSync failed to create a lock file. Vytvorenie "zamykacieho" súboru cez "CSync" zlyhalo. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync sa nepodarilo načítať alebo vytvoriť súbor žurnálu. Uistite sa, že máte oprávnenia na čítanie a zápis v lokálnom synchronizovanom priečinku. - + CSync failed to write the journal file. CSync sa nepodarilo zapísať do súboru žurnálu. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>%1 zásuvný modul pre "CSync" nebolo možné načítať.<br/>Prosím skontrolujte inštaláciu!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Systémový čas tohoto klienta je odlišný od systémového času na serveri. Prosím zvážte použitie sieťovej časovej synchronizačnej služby (NTP) na serveri a klientských strojoch, aby bol na nich rovnaký čas. - + CSync could not detect the filesystem type. Detekcia súborového systému vrámci "CSync" zlyhala. - + CSync got an error while processing internal trees. Spracovanie "vnútorných stromov" vrámci "CSync" zlyhalo. - + CSync failed to reserve memory. CSync sa nepodarilo zarezervovať pamäť. - + CSync fatal parameter error. CSync kritická chyba parametrov. - + CSync processing step update failed. CSync sa nepodarilo spracovať krok aktualizácie. - + CSync processing step reconcile failed. CSync sa nepodarilo spracovať krok zladenia. - + CSync processing step propagate failed. CSync sa nepodarilo spracovať krok propagácie. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Cieľový priečinok neexistuje.</p><p>Skontrolujte, prosím, nastavenia synchronizácie.</p> - + A remote file can not be written. Please check the remote access. Vzdialený súbor nie je možné zapísať. Prosím skontrolujte vzdialený prístup. - + The local filesystem can not be written. Please check permissions. Do lokálneho súborového systému nie je možné zapisovať. Prosím skontrolujte povolenia. - + CSync failed to connect through a proxy. CSync sa nepodarilo prihlásiť cez proxy. - + CSync could not authenticate at the proxy. CSync sa nemohol prihlásiť k proxy. - + CSync failed to lookup proxy or server. CSync sa nepodarilo nájsť proxy alebo server. - + CSync failed to authenticate at the %1 server. CSync sa nepodarilo prihlásiť na server %1. - + CSync failed to connect to the network. CSync sa nepodarilo pripojiť k sieti. - - A network connection timeout happend. - Skončil sa časový limit sieťového pripojenia. + + A network connection timeout happened. + - + A HTTP transmission error happened. Chyba HTTP prenosu. - + CSync failed due to not handled permission deniend. CSync zlyhalo. Nedostatočné oprávnenie. - + CSync failed to access CSync nepodaril prístup - + CSync tried to create a directory that already exists. CSync sa pokúsil vytvoriť priečinok, ktorý už existuje. - - + + CSync: No space on %1 server available. CSync: Na serveri %1 nie je žiadne voľné miesto. - + CSync unspecified error. CSync nešpecifikovaná chyba. - + Aborted by the user Zrušené používateľom - + An internal error number %1 happened. Vyskytla sa vnútorná chyba číslo %1. - + The item is not synced because of previous errors: %1 Položka nebola synchronizovaná kvôli predchádzajúcej chybe: %1 @@ -1945,15 +1953,61 @@ Nie je vhodné ju používať. Súbor obsahuje neplatné znaky, ktoré nemôžu byť zosynchronizované medzi platformami. - + Unable to initialize a sync journal. Nemôžem inicializovať synchronizačný žurnál. - + Cannot open the sync journal Nemožno otvoriť sync žurnál + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1966,7 +2020,7 @@ Nie je vhodné ju používať. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Verzia %1. Pre získanie viac informácií navštívte <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distribuované %4 a licencované pod GNU General Public License (GPL) Version 2.0.<br>%5 a logo %5 sú registrované obchodné známky %4 v <br>Spojených štátoch, ostatných krajinách alebo oboje.</p> @@ -1974,47 +2028,47 @@ Nie je vhodné ju používať. Mirall::ownCloudGui - + Please sign in Prihláste sa prosím - + Disconnected from server Odpojený od servera - + Folder %1: %2 Priečinok %1: %2 - + No sync folders configured. Nie sú nastavené žiadne synchronizačné priečinky. - + None. Žiaden. - + Recent Changes Nedávne zmeny - + Open %1 folder Otvoriť %1 priečinok - + Managed Folders: Spravované priečinky: - + Open folder '%1' Otvoriť priečinok '%1' @@ -2298,27 +2352,27 @@ Nie je vhodné ju používať. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2339,7 +2393,7 @@ Nie je vhodné ju používať. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Ak ešte nemáte vlastný ownCloud server, na stránke <a href="https://owncloud.com">owncloud.com</a> nájdete viac informácií. @@ -2348,12 +2402,12 @@ Nie je vhodné ju používať. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Zostavené z Git revízie <a href="%1">%2</a> na %3, %4 pomocou Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Verzia %2. Pre získanie viac informácií navštívte stránku <a href="%3">%4</a></p><p><small>Od Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Založené na Mirall od Duncan Mac-Vicar P.</small></p>%7 @@ -2442,57 +2496,57 @@ Nie je vhodné ju používať. theme - + Status undefined Nedefinovaný status - + Waiting to start sync Čakanie na začiatok synchronizácie - + Sync is running Prebieha synchronizácia - + Sync Success Úspešná synchronizácia - + Sync Success, some files were ignored. Synchronizácia prebehla úspešne, niektoré súbory boli ignorované. - + Sync Error Chyba synchronizácie - + Setup Error Chyba inštalácie - + The server is currently unavailable Server nie je práve dostupný - + Preparing to sync Príprava na synchronizáciu - + Aborting... Ruším... - + Sync is paused Synchronizácia je pozastavená diff --git a/translations/mirall_sl.ts b/translations/mirall_sl.ts index 40216dbcf..813a99591 100644 --- a/translations/mirall_sl.ts +++ b/translations/mirall_sl.ts @@ -144,28 +144,28 @@ <p>Ali ste prepričani, da želite mapo <i>%1</i> ponastaviti in ponovno izgraditi podatkovno zbirko?</p><p><b>Opozorilo:</b> Možnost je zasnovana za vzdrževanje. Datoteke sicer ne bodo spremenjene, vendar pa je opravilo lahko zelo dolgotrajno in lahko traja tudi več ur. Trajanje je odvisno od velikosti mape. Možnost uporabite le, če vam to svetuje skrbnik sistema.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) od %2 prostora strežnika je v uporabi. - + No connection to %1 at <a href="%2">%3</a>. Ni povezave z %1 pri <a href="%2">%3</a>. - + No %1 connection configured. Ni nastavljenih %1 povezav. - + Sync Running Usklajevanje je v teku @@ -175,34 +175,34 @@ Ni nastavljenega računa. - + The syncing operation is running.<br/>Do you want to terminate it? Izvaja se usklajevanje.<br/>Ali želite opravilo prekiniti? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. Vzpostavljena je povezava s strežnikom <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Vzpostavljena je povezava z <a href="%1">%2</a> kot <i>%3</i>. - + Currently there is no storage usage information available. Trenutno ni na voljo nobenih podatkov o porabi prostora. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Ni nastavljenega računa v oblaku ownCloud - + The configured server for this client is too old Nastavljen strežnik tega odjemalca je prestar. - + Please update to the latest server and restart the client. Posodobite strežnik in ponovno zaženite odjemalca. - + Unable to connect to %1 Povezava z %1 ni mogoča. - + The provided credentials are not correct Podana poverila niso pravilna. @@ -261,100 +261,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Ni mogoče ustvariti vsebine csync-context - + Local folder %1 does not exist. Krajevna mapa %1 ne obstaja. - + %1 should be a directory but is not. %1 bi morala biti mapa, vendar ni. - + %1 is not readable. %1 ni mogoče brati. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. Datoteka %1 in %2 drugih datotek je odstranjenih. - + %1 has been removed. %1 names a file. Datoteka %1 je odstranjena. - + %1 and %2 other files have been downloaded. %1 names a file. Datoteka %1 in %2 drugih datotek je prejetih. - + %1 has been downloaded. %1 names a file. Datoteka %1 je prejeta. - + %1 and %2 other files have been updated. %1 in %2 drugih datotek je posodobljenih. - + %1 has been updated. %1 names a file. Datoteka %1 je posodobljena. - + %1 has been renamed to %2 and %3 other files have been renamed. Datoteka %1 je preimenovana v %2. Preimenovanih je bilo še %3 datotek. - + %1 has been renamed to %2. %1 and %2 name files. Datoteka %1 je preimenovana v %2. - + %1 has been moved to %2 and %3 other files have been moved. Datoteka %1 je premaknjena v %2. Premaknjenih je bilo še %3 datotek. - + %1 has been moved to %2. Datoteka %1 je premaknjena v %2. - + Sync Activity Dejavnost usklajevanja - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Z usklajevanjem bodo odstranjene vse krajevne datoteke v mapi '%1'. -Če je bil račun na strežniku kakorkoli ponastavljen, izberite možnost "Ohrani datoteke", če pa želite datoteke res odstraniti, izberite drugo možnost. - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +356,17 @@ Mapa je bila morda odstranjena ali pa so bile nastavitve spremenjene. Ali sta prepričani, da želite izvesti to opravilo? - + Remove All Files? Ali naj bodo odstranjene vse datoteke? - + Remove all files Odstrani vse datoteke - + Keep files Ohrani datoteke @@ -381,67 +374,67 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::FolderMan - + Could not reset folder state Ni mogoče ponastaviti stanja mape - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Obstaja starejši dnevnik usklajevanja '%1', vendar ga ni mogoče odstraniti. Preverite, da datoteka ni v uporabi. - + Undefined State. Nedoločeno stanje. - + Waits to start syncing. V čakanju na začetek usklajevanja. - + Preparing for sync. Poteka priprava za usklajevanje. - + Sync is running. Usklajevanje je v teku. - + Server is currently not available. Strežnik trenutno ni na voljo. - + Last Sync was successful. Zadnje usklajevanje je bilo uspešno končano. - + Last Sync was successful, but with warnings on individual files. Zadnje usklajevanje je bilo sicer uspešno, vendar z opozorili za posamezne datoteke. - + Setup Error. Napaka nastavitve. - + User Abort. Uporabniška prekinitev. - + Sync is paused. Usklajevanje je začasno v premoru. - + %1 (Sync is paused) %1 (usklajevanje je v premoru) @@ -468,8 +461,8 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::FolderWizard - - + + Add Folder Dodaj mapo @@ -514,7 +507,7 @@ Ali sta prepričani, da želite izvesti to opravilo? The selected folder is a symbolic link. An already configured folder is contained in the folder this link is pointing to. - Označena mapa je simbolična povezava. Že vnaprej nastavljena mapa v mapi vsebuje povezavo do nje. + Označena mapa je simbolična povezava. V mapi je povezava do že nastavljene mape s povezavo. @@ -545,42 +538,42 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::FolderWizardRemotePath - + Add Remote Folder Dodaj oddaljeno mapo - + Enter the name of the new folder: Ime nove mape: - + Folder was successfully created on %1. Mapa je uspešno ustvarjena na %1. - + Failed to create the folder on %1. Please check manually. Ustvarjanje mape na %1 je spodletelo. Poskusite jo ustvariti ročno. - + Choose this to sync the entire account Izberite možnost za usklajevanje celotnega računa. - + This folder is already being synced. Ta mapa je že določena za usklajevanje. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Datoteke se že usklajujejo na ravni mape <i>%1</i>, ki je nadrejena mapi <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Trenutno so v usklajevanju vse datoteke korenske mape. Usklajevanje še ene mape <b>ni</b> podprto. Če želite uskladiti več map, je treba odstraniti trenutno nastavljeno korensko mapo in spremeniti nastavitve. @@ -597,19 +590,24 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ni prejete oznake s strežnika. Preveriti je treba podatke posredovalnega strežnika ali prehoda. - + We received a different E-Tag for resuming. Retrying next time. Prejeta je različna oznaka za nadaljevanje opravila. Ponovni poskus bo izveden kasneje. - + + Server returned wrong content-range + + + + Connection Timeout - Povezava prekinjena + Povezava časovno pretekla @@ -621,7 +619,7 @@ Ali sta prepričani, da želite izvesti to opravilo? - General Setttings + General Settings Splošne nastavitve @@ -659,12 +657,12 @@ Ali sta prepričani, da želite izvesti to opravilo? Mirall::HttpCredentials - + Enter Password Vnos gesla - + Please enter %1 password for user '%2': Vpisati je treba geslo %1 za uporabnika '%2': @@ -806,8 +804,8 @@ Izbrani predmeti bodo tudi izbrisani, v kolikor bi sicer onemogočali brisanje m - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>Na voljo je nova različica odjemalca %1.</p><p>Datoteka <b>%2</b> je na voljo za prejem. Trenutno je nameščena različica %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + @@ -962,8 +960,8 @@ zahteva skrbniška dovoljenja za dokončanje opravila. - New version %1 available. Please use the systems update tool to install it. - Na voljo je nova različica %1. Priporočeno je uporabiti sistemsko orodje za nameščanje. + New version %1 available. Please use the system's update tool to install it. + @@ -1077,7 +1075,7 @@ Uporaba ni priporočljiva. Povezava je spodletela - + Update %1 server Posodobi strežnik %1 @@ -1085,134 +1083,134 @@ Uporaba ni priporočljiva. Mirall::OwncloudSetupWizard - + Folder rename failed Preimenovanje mape je spodletelo - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Krajevno usklajena mapa %1 je uspešno ustvarjena!</b></font> - + Trying to connect to %1 at %2... Poteka poskus povezave z %1 na %2 ... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Uspešno vzpostavljena povezava z %1: %2 različica %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Napaka: napačna poverila. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Krajevna mapa %1 že obstaja. Nastavljena bo za usklajevanje.<br/><br/> - + Creating local sync folder %1... Ustvarjanje mape za krajevno usklajevanje %1... - + ok je v redu - + failed. je spodletelo. - + Could not create local folder %1 Krajevne mape %1 ni mogoče ustvariti. - - + + Failed to connect to %1 at %2:<br/>%3 Povezava z %1 pri %2 je spodletela:<br/>%3 - + No remote folder specified! Ni navedenega oddaljenega strežnika! - + Error: %1 Napaka: %1 - + creating folder on ownCloud: %1 ustvarjanje mape v oblaku ownCloud: %1 - + Remote folder %1 created successfully. Oddaljena mapa %1 je uspešno ustvarjena. - + The remote folder %1 already exists. Connecting it for syncing. Oddaljena mapa %1 že obstaja. Vzpostavljena bo povezava za usklajevanje. - - + + The folder creation resulted in HTTP error code %1 Ustvarjanje mape je povzročilo napako HTTP %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Ustvarjanje mape na oddaljenem naslovu je spodletelo zaradi napačnih poveril. <br/>Vrnite se in preverite zahtevana gesla.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Ustvarjanje oddaljene mape je spodletelo. Najverjetneje je vzrok v neustreznih poverilih.</font><br/>Vrnite se na predhodno stran in jih preverite.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Ustvarjanje oddaljene mape %1 je spodletelo z napako <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. Povezava za usklajevanje med %1 in oddaljeno mapo %2 je vzpostavljena. - + Successfully connected to %1! Povezava z %1 je uspešno vzpostavljena! - + Connection to %1 could not be established. Please check again. Povezave z %1 ni mogoče vzpostaviti. Preveriti je treba nastavitve. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. - Mape ni mogoče odstraniti in ustvariti njeno varnostno kopijo, saj je mapa oziroma dokument v njej odprt v drugem programu. Zaprite mapo/dokument ali prekinite namestitev. + Mape ni mogoče odstraniti niti ni mogoče ustvariti varnostne kopije, saj je mapa oziroma dokument v njej odprt v z drugim programom. Zaprite mapo/dokument ali prekinite namestitev. Mirall::OwncloudWizard - + %1 Connection Wizard Čarovnik za povezavo %1 @@ -1250,18 +1248,18 @@ Uporaba ni priporočljiva. Connection Timeout - Povezava je prekinjena + Povezava časovno pretekla Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Usklajevanje je bilo prekinjeno s strani uporabnika - + No E-Tag received from server, check Proxy/Gateway Ni prejete oznake s strežnika. Preveriti je treba podatke posredovalnega strežnika ali prehoda. @@ -1271,23 +1269,33 @@ Uporaba ni priporočljiva. Prejeta je različna oznaka za nadaljevanje opravila. Ponovni poskus bo izveden kasneje. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! - Datoteke %1 ni možno prenesti zaradi nesoglasja z imenom lokalne datoteke! + Datoteke %1 ni možno prejeti, zaradi neskladja z imenom krajevne datoteke! Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! - Datoteke %1 ni možno prenesti zaradi nesoglasja z imenom lokalne datoteke! + Datoteke %1 ni mogoče prejeti zaradi neskladja z imenom krajevne datoteke! Mirall::PropagateItemJob - + + ; Restoration Failed: + ; obnovitev je spodletela: + + + A file or directory was removed from a read only share, but restoring failed: %1 Datoteka ali mapa je bila odstranjena iz mesta v souporabi, ki je nastavljeno le za branje, obnavljanje pa je spodletelo: %1 @@ -1295,12 +1303,12 @@ Uporaba ni priporočljiva. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - Pozor, možno nesoglasje z %1 v razlikovanju med velikimi in malimi črkami + Pozor, mogoče je neskladje v velikosti črk imena %1 - + could not create directory %1 ni mogoče ustvariti mape %1 @@ -1310,7 +1318,7 @@ Uporaba ni priporočljiva. Could not remove %1 because of a local file name clash - Ne morem odstraniti %1 zaradin nesoglasja s krajevnim imenom datoteke + Ni mogoče odstraniti %1 zaradi neskladja s krajevnim imenom datoteke @@ -1321,15 +1329,15 @@ Uporaba ni priporočljiva. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash - Datoteko %1 ne morete preimenovati v %2 zaradin nesoglasja s krajevnim imenom datoteke + Datoteke %1 ni mogoče preimenovati v %2 zaradi že obstoječe datoteke s tem imenom. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Datoteka je bila odstranjena iz mesta v souporabi, vendar je uspešno obnovljena. @@ -1337,17 +1345,17 @@ Uporaba ni priporočljiva. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Te mape ni dovoljeno preimenovati, zato bo samodejno preimenovana v izvorno ime. - + This folder must not be renamed. Please name it back to Shared. Mape ni dovoljeno preimenovati. Preimenujte jo nazaj na privzeto vrednost. - + The file was renamed but is part of a read only share. The original file was restored. Datoteka je preimenovana, vendar je označena za souporabo le za branje. Obnovljena je izvirna datoteka. @@ -1374,24 +1382,24 @@ Uporaba ni priporočljiva. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Datoteka je bila krajevno spremenjena, vendar pa je označena za souporabo le za branje. Izvorna datoteka je obnovljena, vaše spremembe pa so zabeležene v datoteki spora. - + The local file was removed during sync. - + Local file changed during sync. Krajevna datoteka je bila med usklajevanjem spremenjena. - + The server did not acknowledge the last chunk. (No e-tag were present) - Strežnik ni prepoznal zadnjega niza besed. (Ni bilo prisotnih e-značk) + Strežnik ni prepoznal zadnjega niza besed. (ni določenih e-oznak) @@ -1417,62 +1425,62 @@ Uporaba ni priporočljiva. 4 - + Time Čas - + File Datoteka - + Folder Mapa - + Action Dejanje - + Size Velikost - + Retry Sync Ponovno začni usklajevanje - + Copy Kopiraj - + Copy the activity list to the clipboard. Kopiraj seznam opravil v odložišče. - + Copied to clipboard Kopirano v odložišče - + The sync status has been copied to the clipboard. Stanje usklajevanja je kopirano v odložišče. - + Currently no files are ignored because of previous errors. Trenutno zaradi predhodnih napak ni prezrta nobena datoteka. - + %1 files are ignored because of previous errors. Try to sync these again. %1 datotek je prezrtih zaradi predhodnih napak. @@ -1515,27 +1523,27 @@ Te je treba uskladiti znova. Mirall::SettingsDialogMac - + %1 %1 - + Account Račun - + Activity Dejavnosti - + General Splošno - + Network Omrežje @@ -1543,12 +1551,12 @@ Te je treba uskladiti znova. Mirall::ShibbolethCredentials - + Login Error Napaka prijave - + You must sign in as user %1 Prijaviti se je treba kot uporabnik %1 @@ -1556,22 +1564,22 @@ Te je treba uskladiti znova. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Overitev - + Reauthentication required - Zahtevano je vnovično preverjanje pristnosti + Zahtevano je vnovično overjanje istovetnosti - + Your session has expired. You need to re-login to continue to use the client. - Vaša seja je potekla.Ponovno se prijavite za nadaljevanje z uporabo odjemalca. + Seja je potekla. Ponovno se je treba prijaviti in nadaljevati z uporabo odjemalca. - + %1 - %2 %1 - %2 @@ -1775,158 +1783,158 @@ Te je treba uskladiti znova. Mirall::SyncEngine - + Success. Uspešno končano. - + CSync failed to create a lock file. Ustvarjanje datoteke zaklepa s CSync je spodletelo. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Nalaganje ali ustvarjanje dnevniške datoteke s CSync je spodletelo. Za to opravilo so zahtevana posebna dovoljenja krajevne mape za usklajevanje. - + CSync failed to write the journal file. Zapisovanje dnevniške datoteke s CSync je spodletelo. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Vstavka %1 za CSync ni mogoče naložiti.<br/>Preverite namestitev!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Sistemski čas na odjemalcu ni skladen s sistemskim časom na strežniku. Priporočljivo je uporabiti storitev usklajevanja časa (NTP) na strežniku in odjemalcu. S tem omogočimo ujemanje podatkov o času krajevnih in oddaljenih datotek. - + CSync could not detect the filesystem type. Zaznavanje vrste datotečnega sistema s CSync je spodletelo. - + CSync got an error while processing internal trees. Pri obdelavi notranje drevesne strukture s CSync je prišlo do napake. - + CSync failed to reserve memory. Vpisovanje prostora v pomnilniku za CSync je spodletelo. - + CSync fatal parameter error. Usodna napaka parametra CSync. - + CSync processing step update failed. Korak opravila posodobitve CSync je spodletel. - + CSync processing step reconcile failed. Korak opravila poravnave CSync je spodletel. - + CSync processing step propagate failed. Korak opravila razširjanja CSync je spodletel. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Ciljna mapa ne obstaja.</p><p>Preveriti je treba nastavitve usklajevanja.</p> - + A remote file can not be written. Please check the remote access. Oddaljene datoteke ni mogoče zapisati. Najverjetneje je vzrok v oddaljenem dostopu. - + The local filesystem can not be written. Please check permissions. V krajevni datotečni sistem ni mogoče pisati. Najverjetneje je vzrok v neustreznih dovoljenjih. - + CSync failed to connect through a proxy. Povezava CSync preko posredniškega strežnika je spodletel. - + CSync could not authenticate at the proxy. Overitev CSync na posredniškem strežniku je spodletela. - + CSync failed to lookup proxy or server. Poizvedba posredniškega strežnika s CSync je spodletela. - + CSync failed to authenticate at the %1 server. Overitev CSync pri strežniku %1 je spodletela. - + CSync failed to connect to the network. Povezava CSync v omrežje je spodletela. - - A network connection timeout happend. - Poskus vzpostavitve povezave je časovno potekel. + + A network connection timeout happened. + - + A HTTP transmission error happened. Prišlo je do napake med prenosom HTTP. - + CSync failed due to not handled permission deniend. Delovanje CSync je zaradi neustreznih dovoljenj spodletelo. - + CSync failed to access Dostop s CSync je spodletel - + CSync tried to create a directory that already exists. Prišlo je do napake programa CSync zaradi poskusa ustvarjanja mape z že obstoječim imenom. - - + + CSync: No space on %1 server available. Odziv CSync: na strežniku %1 ni razpoložljivega prostora. - + CSync unspecified error. Nedoločena napaka CSync. - + Aborted by the user Opravilo je bilo prekinjeno s strani uporabnika - + An internal error number %1 happened. Prišlo je do notranje napake številka %1. - + The item is not synced because of previous errors: %1 Predmet ni usklajen zaradi predhodne napake: %1 @@ -1946,15 +1954,61 @@ Te je treba uskladiti znova. Ime datoteke vsebuje neveljavne znake, ki niso podprti na vseh okoljih. - + Unable to initialize a sync journal. Dnevnika usklajevanja ni mogoče začeti. - + Cannot open the sync journal Ni mogoče odpreti dnevnika usklajevanja + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + cilj + + + + the source + vir + Mirall::Systray @@ -1967,7 +2021,7 @@ Te je treba uskladiti znova. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Različica %1. Več podrobnosti je zabeleženih na <a href='%2'>%3</a>.</p><p>Avtorske pravice ownCloud, Inc.<p><p>Programski paket objavlja %4 z dovoljenjem GNU General Public License (GPL) Version 2.0.<br>%5 in logotip %5 sta blagovni znamki %4 v <br>Združenih državah, drugih državah ali oboje.</p> @@ -1975,47 +2029,47 @@ Te je treba uskladiti znova. Mirall::ownCloudGui - + Please sign in Pred nadaljevanjem je zahtevana prijava - + Disconnected from server Povezava s strežnikom je prekinjena - + Folder %1: %2 Mapa %1: %2 - + No sync folders configured. Ni nastavljenih map za usklajevanje. - + None. Brez - + Recent Changes Nedavne spremembe - + Open %1 folder Odpri %1 mapo - + Managed Folders: Upravljane mape: - + Open folder '%1' Odpri mapo '%1' @@ -2082,12 +2136,12 @@ Te je treba uskladiti znova. Syncing %1 of %2 (%3 left) - + Poteka usklajevanje %1 od %2 (preostaja %3) Syncing %1 (%2 left) - + Usklajevanje %1 (%2 do konca) @@ -2299,27 +2353,27 @@ Te je treba uskladiti znova. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2340,7 +2394,7 @@ Te je treba uskladiti znova. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! V primeru, da lastnega strežnika ownCloud še nimate, za več podrobnosti o možnostih obiščite spletišče <a href="https://owncloud.com">owncloud.com</a>. @@ -2349,12 +2403,12 @@ Te je treba uskladiti znova. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - <p><small>Zgrajeno s pomočjo Git revizije <a href="%1">%2</a> na %3, %4 uporablja Qt %5.</small></p> + <p><small>Zgrajeno s predelavo Git <a href="%1">%2</a> na %3, %4 s podporo Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Različica %2. Za več podrobnosti obiščite <a href="%3">%4</a></p><p><small>Avtorji Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt in skupina ownCloud Inc.<br>Programski paket je zasnovan na sistemu Mirall avtorja Duncana P. Mac-Vicarja.</small></p>%7 @@ -2443,57 +2497,57 @@ Te je treba uskladiti znova. theme - + Status undefined Stanje je nedoločeno - + Waiting to start sync Čakanje začetek usklajevanja - + Sync is running Usklajevanje v teku - + Sync Success Usklajevanje je uspešno končano - + Sync Success, some files were ignored. Usklajevanje je končano, ostajajo pa nerešene težave s posameznimi datotekami. - + Sync Error Napaka usklajevanja - + Setup Error Napaka nastavitve - + The server is currently unavailable Strežnik trenutno ni na voljo - + Preparing to sync Priprava na usklajevanje - + Aborting... Poteka prekinjanje ... - + Sync is paused Usklajevanje je ustavljeno diff --git a/translations/mirall_sv.ts b/translations/mirall_sv.ts index 30d280720..b5dc931f9 100644 --- a/translations/mirall_sv.ts +++ b/translations/mirall_sv.ts @@ -144,28 +144,28 @@ <p>Vill du verkligen nollställa mappen <i>%1</i> och återställa din databas?</p><p><b>Notera:</b> Denna funktion är endast designad för underhållsuppgifter. Inga filer raderas, men kan skapa mycket datatrafik och ta allt från några minuter till flera timmar att slutföra, beroende på storleken på mappen. Använd endast detta alternativ om du har blivit uppmanad av din systemadministratör.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. %1 (%3%) av %2 server utrymme används. - + No connection to %1 at <a href="%2">%3</a>. Ingen anslutning till %1 vid <a href="%2">%3</a> - + No %1 connection configured. Ingen %1 anslutning konfigurerad. - + Sync Running Synkronisering pågår @@ -175,34 +175,35 @@ Inget konto är konfigurerat. - + The syncing operation is running.<br/>Do you want to terminate it? En synkronisering pågår.<br/>Vill du avbryta den? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 %2 (%3 of %4) %5 återstående. Hastighet %6/s - + %1 of %2, file %3 of %4 Total time left %5 - + %1 av %2, fil %3 av %4 +Tid kvar %5 - + Connected to <a href="%1">%2</a>. Ansluten till <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. Ansluten till <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. Just nu finns ingen utrymmes information tillgänglig @@ -233,27 +234,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured Inget ownCloud konto konfigurerat - + The configured server for this client is too old Den konfigurerade servern är för den här klienten är för gammal - + Please update to the latest server and restart the client. Uppgradera servern och starta sedan om klienten. - + Unable to connect to %1 Kan ej koppla upp till %1 - + The provided credentials are not correct De angivna uppgifterna stämmer ej @@ -261,100 +262,93 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context Kan inte skapa csync-context - + Local folder %1 does not exist. Den lokala mappen %1 finns inte. - + %1 should be a directory but is not. %1 ska vara en mapp, men är inte det. - + %1 is not readable. %1 är inte läsbar. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 och %2 andra filer har tagits bort. - + %1 has been removed. %1 names a file. %1 har tagits bort. - + %1 and %2 other files have been downloaded. %1 names a file. %1 och %2 andra filer har laddats ner. - + %1 has been downloaded. %1 names a file. %1 har laddats ner. - + %1 and %2 other files have been updated. %1 och %2 andra filer har uppdaterats. - + %1 has been updated. %1 names a file. %1 har uppdaterats. - + %1 has been renamed to %2 and %3 other files have been renamed. %1 har döpts om till %2 och %3 andra filer har bytt namn. - + %1 has been renamed to %2. %1 and %2 name files. %1 har döpts om till %2. - + %1 has been moved to %2 and %3 other files have been moved. %1 har flyttats till %2 och %3 andra filer har tagits bort. - + %1 has been moved to %2. %1 har flyttats till %2. - + Sync Activity Synk aktivitet - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Denna synk skulle radera alla filer i den lokala mappen '%1'. -Om systemadministratören har återställt ditt konto på servern, välj "Behåll filer". Om du vill att dina filer ska raderas, välj "Radera alla filer". - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +357,17 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Är du säker på att du vill fortsätta? - + Remove All Files? Ta bort alla filer? - + Remove all files Ta bort alla filer - + Keep files Behåll filer @@ -381,67 +375,67 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::FolderMan - + Could not reset folder state Kunde inte återställa mappens skick - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. En gammal synkroniseringsjournal '%1' hittades, men kunde inte raderas. Vänligen se till att inga program för tillfället använder den. - + Undefined State. Okänt tillstånd. - + Waits to start syncing. Väntar på att starta synkronisering. - + Preparing for sync. Förbereder synkronisering - + Sync is running. Synkronisering pågår. - + Server is currently not available. Servern är för tillfället inte tillgänglig. - + Last Sync was successful. Senaste synkronisering lyckades. - + Last Sync was successful, but with warnings on individual files. Senaste synkning lyckades, men det finns varningar för vissa filer! - + Setup Error. Inställningsfel. - + User Abort. Användare Avbryt - + Sync is paused. Synkronisering är pausad. - + %1 (Sync is paused) %1 (Synk är stoppad) @@ -468,8 +462,8 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::FolderWizard - - + + Add Folder Lägg till mapp @@ -545,42 +539,42 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::FolderWizardRemotePath - + Add Remote Folder Lägg till fjärrmapp - + Enter the name of the new folder: Ange ett namn på den nya mappen: - + Folder was successfully created on %1. Mappen skapades på %1. - + Failed to create the folder on %1. Please check manually. Det gick inte att skapa mappen på %1. Kontrollera manuellt. - + Choose this to sync the entire account Välj detta för att synka allt - + This folder is already being synced. Denna mappen synkas redan. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. Du synkar redan <i>%1</i>, vilket är övermapp till <i>%2</i> - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Du synkroniserar redan alla dina filer. Synkronisering av en annan mapp stöds <b>ej</b>. Om du vill synka flera mappar, ta bort den för tillfället konfigurerade rotmappen från synk. @@ -597,17 +591,22 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Ingen e-tag mottogs från servern, kontrollera proxy/gateway - + We received a different E-Tag for resuming. Retrying next time. Vi mottog en helt annan e-tag för att återuppta. Försök igen nästa gång. - + + Server returned wrong content-range + + + + Connection Timeout Anslutningen avbröts på grund av timeout @@ -621,8 +620,8 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file - General Setttings - Allmänna inställningar + General Settings + Generella Inställningar @@ -659,12 +658,12 @@ Detta kan bero på att konfigurationen för mappen ändrats, eller att alla file Mirall::HttpCredentials - + Enter Password Ange lösenord - + Please enter %1 password for user '%2': Vänligen ange %1 lösenord för användare '%2': @@ -806,8 +805,8 @@ Valda objekt kommer också att raderas om dom hindrar en mapp från att tas bort - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>En ny version av %1 Client är tillgänglig.</p><p><b>%2</b> är tillgänglig för nedladdning. Den installerade versionen är %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>En ny version av %1 klienten är tillgänglig.</p><p><b>%2</b> är tillgänglig för nedladdning. Den installerade versionen är %3.</p> @@ -962,8 +961,8 @@ efter ytterligare privilegier under processen. - New version %1 available. Please use the systems update tool to install it. - Ny version %1 tillgänglig. Använd systemets uppdateringsverktyg för att installera det. + New version %1 available. Please use the system's update tool to install it. + Ny version %1 är tillgänglig. Vänligen använd systemets uppdateringverktyg för att installera den. @@ -1077,7 +1076,7 @@ Det är inte lämpligt använda den. Anslutningen misslyckades - + Update %1 server Uppdaterar %1 server @@ -1085,126 +1084,126 @@ Det är inte lämpligt använda den. Mirall::OwncloudSetupWizard - + Folder rename failed Omdöpning av mapp misslyckades - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Lokal synkmapp %1 skapad!</b></font> - + Trying to connect to %1 at %2... Försöker ansluta till %1 på %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Lyckades ansluta till %1: %2 version %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Fel: Ogiltiga inloggningsuppgifter. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Lokal synkmapp %1 finns redan, aktiverar den för synk.<br/><br/> - + Creating local sync folder %1... Skapar lokal synkmapp %1... - + ok ok - + failed. misslyckades. - + Could not create local folder %1 Kunde inte skapa lokal mapp %1 - - + + Failed to connect to %1 at %2:<br/>%3 Misslyckades att ansluta till %1 vid %2:<br/>%3 - + No remote folder specified! Ingen fjärrmapp specificerad! - + Error: %1 Fel: %1 - + creating folder on ownCloud: %1 skapar mapp på ownCloud: %1 - + Remote folder %1 created successfully. Fjärrmapp %1 har skapats. - + The remote folder %1 already exists. Connecting it for syncing. Fjärrmappen %1 finns redan. Ansluter den för synkronisering. - - + + The folder creation resulted in HTTP error code %1 Skapande av mapp resulterade i HTTP felkod %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Det gick inte att skapa mappen efter som du inte har tillräckliga rättigheter!<br/>Vänligen återvänd och kontrollera dina rättigheter. - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Misslyckades skapa fjärrmappen, troligen p.g.a felaktiga inloggningsuppgifter.</font><br/>Kontrollera dina inloggningsuppgifter.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Misslyckades skapa fjärrmapp %1 med fel <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. En synkroniseringsanslutning från %1 till fjärrmappen %2 har skapats. - + Successfully connected to %1! Ansluten till %1! - + Connection to %1 could not be established. Please check again. Anslutningen till %1 kunde inte etableras. Var god kontrollera och försök igen. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Kan inte ta bort och göra en säkerhetskopia av mappen på grund av att mappen eller en fil i den används av ett annat program. Vänligen stäng mappen eller filen och försök igen eller avbryt installationen. @@ -1212,7 +1211,7 @@ Det är inte lämpligt använda den. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Anslutningsguiden @@ -1256,12 +1255,12 @@ Det är inte lämpligt använda den. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Synkningen avbröts av användare. - + No E-Tag received from server, check Proxy/Gateway Ingen E-Tag mottogs från servern, kontrollera proxy/gateway @@ -1271,7 +1270,12 @@ Det är inte lämpligt använda den. Vi mottog en helt annan E-Tag för att återuppta. Försöker igen nästa gång. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! @@ -1279,7 +1283,7 @@ Det är inte lämpligt använda den. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! Fil %1 kan inte laddas ner på grund av namnkonflikt med en lokal fil! @@ -1287,7 +1291,12 @@ Det är inte lämpligt använda den. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Restaurering Misslyckades: + + + A file or directory was removed from a read only share, but restoring failed: %1 En fil eller katalog togs bort från en endast-läsbar delning, men återställning misslyckades: %1 @@ -1295,12 +1304,12 @@ Det är inte lämpligt använda den. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Observera, eventuell skiftlägeskänslig konflikt med %1 - + could not create directory %1 kunde ej skapa katalogen %1 @@ -1321,7 +1330,7 @@ Det är inte lämpligt använda den. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Filen %1 kan inte döpas om till %2 på grund av ett lokalt filnamn @@ -1329,7 +1338,7 @@ Det är inte lämpligt använda den. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Den här filen har tagits bort från en endast-läsbar delning. Den återställdes. @@ -1337,17 +1346,17 @@ Det är inte lämpligt använda den. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Denna mapp får inte byta namn. Den kommer att döpas om till sitt ursprungliga namn. - + This folder must not be renamed. Please name it back to Shared. Denna mapp får ej döpas om. Vänligen döp den till Delad igen. - + The file was renamed but is part of a read only share. The original file was restored. En fil döptes om men är en del av en endast-läsbar delning. Original filen återställdes. @@ -1374,22 +1383,22 @@ Det är inte lämpligt använda den. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Filen ändrades lokalt men är en del av en endast-läsbar delning. Den återställdes och din editering är i konflikt filen. - + The local file was removed during sync. - + Den lokala filen togs bort under synkronisering. - + Local file changed during sync. Lokal fil ändrades under synk. - + The server did not acknowledge the last chunk. (No e-tag were present) Servern bekräftade inte det sista fil-fragmentet (Ingen e-tag fanns tillgänglig) @@ -1417,62 +1426,62 @@ Det är inte lämpligt använda den. 4 - + Time Tid - + File Fil - + Folder Mapp - + Action Ågärd - + Size Storlek - + Retry Sync Försök synka igen - + Copy Kopiera - + Copy the activity list to the clipboard. Kopiera aktivitetslistan till urklipp. - + Copied to clipboard Kopierat till urklipp - + The sync status has been copied to the clipboard. Synkroniseringsstatus har kopierats till urklipp. - + Currently no files are ignored because of previous errors. För närvarande ignoreras inga filer på grund av föregående fel. - + %1 files are ignored because of previous errors. Try to sync these again. %1 filer ignoreras på grund av föregående fel. @@ -1515,27 +1524,27 @@ Försök att synka dessa igen. Mirall::SettingsDialogMac - + %1 %1 - + Account Konto - + Activity Aktivitet - + General Allmänt - + Network Nätverk @@ -1543,12 +1552,12 @@ Försök att synka dessa igen. Mirall::ShibbolethCredentials - + Login Error Login fel - + You must sign in as user %1 Du måste logga in som en användare %1 @@ -1556,22 +1565,22 @@ Försök att synka dessa igen. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Autentisera - + Reauthentication required Autentisering krävs - + Your session has expired. You need to re-login to continue to use the client. Din session har gått ut. Du måste logga in på nytt för att kunna fortsätta använda klienten. - + %1 - %2 %1 - %2 @@ -1775,158 +1784,158 @@ Försök att synka dessa igen. Mirall::SyncEngine - + Success. Lyckades. - + CSync failed to create a lock file. CSync misslyckades med att skapa en låsfil. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync misslyckades att skapa en journal fil. Se till att du har läs och skriv rättigheter i den lokala synk katalogen. - + CSync failed to write the journal file. CSynk misslyckades att skriva till journal filen. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Plugin %1 för csync kunde inte laddas.<br/>Var god verifiera installationen!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Systemtiden på denna klientdator är annorlunda än systemtiden på servern. Använd en tjänst för tidssynkronisering (NTP) på servern och alla klientdatorer så att tiden är lika. - + CSync could not detect the filesystem type. CSync kunde inte upptäcka filsystemtyp. - + CSync got an error while processing internal trees. CSYNC fel vid intern bearbetning. - + CSync failed to reserve memory. CSync misslyckades att reservera minne. - + CSync fatal parameter error. CSync fatal parameter fel. - + CSync processing step update failed. CSync processteg update misslyckades. - + CSync processing step reconcile failed. CSync processteg reconcile misslyckades. - + CSync processing step propagate failed. CSync processteg propagate misslyckades. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Målmappen finns inte</p><p>Vänligen, kontroller inställningen för sync.</p> - + A remote file can not be written. Please check the remote access. En fil på servern kan inte skapas. Kontrollera åtkomst till fjärranslutningen. - + The local filesystem can not be written. Please check permissions. Kan inte skriva till det lokala filsystemet. Var god kontrollera rättigheterna. - + CSync failed to connect through a proxy. CSync misslyckades att ansluta genom en proxy. - + CSync could not authenticate at the proxy. CSync kunde inte autentisera mot proxy. - + CSync failed to lookup proxy or server. CSync misslyckades att hitta proxy eller server. - + CSync failed to authenticate at the %1 server. CSync misslyckades att autentisera mot %1 servern. - + CSync failed to connect to the network. CSync misslyckades att ansluta mot nätverket. - - A network connection timeout happend. - Ett anslutningsfel mot nätverket uppstod. + + A network connection timeout happened. + En timeout på nätverksanslutningen har inträffat. - + A HTTP transmission error happened. Ett HTTP överföringsfel inträffade. - + CSync failed due to not handled permission deniend. CSYNC misslyckades på grund av att nekad åtkomst inte hanterades. - + CSync failed to access CSynk misslyckades att tillträda - + CSync tried to create a directory that already exists. CSync försökte skapa en mapp som redan finns. - - + + CSync: No space on %1 server available. CSync: Ingen plats på %1 server tillgänglig. - + CSync unspecified error. CSync ospecificerat fel. - + Aborted by the user Avbruten av användare - + An internal error number %1 happened. Ett internt fel hände. nummer %1 - + The item is not synced because of previous errors: %1 Objektet kunde inte synkas på grund av tidigare fel: %1 @@ -1946,15 +1955,61 @@ Försök att synka dessa igen. Filen innehåller ogiltiga tecken som inte kan synkas oberoende av plattform. - + Unable to initialize a sync journal. Kan inte initialisera en synk journal. - + Cannot open the sync journal Kunde inte öppna synk journalen + + + Not allowed because you don't have permission to add sub-directories in that directory + Går ej att genomföra då du saknar rättigheter att lägga till underkataloger i den katalogen + + + + Not allowed because you don't have permission to add parent directory + Går ej att genomföra då du saknar rättigheter att lägga till någon moderkatalog + + + + Not allowed because you don't have permission to add files in that directory + Går ej att genomföra då du saknar rättigheter att lägga till filer i den katalogen + + + + Not allowed to upload this file because it is read-only on the server, restoring + Inte behörig att ladda upp denna fil då den är skrivskyddad på servern, återställer + + + + + Not allowed to remove, restoring + Inte behörig att radera, återställer + + + + Move not allowed, item restored + Det gick inte att genomföra flytten, objektet återställs + + + + Move not allowed because %1 is read-only + Det gick inte att genomföra flytten då %1 är skrivskyddad + + + + the destination + destinationen + + + + the source + källan + Mirall::Systray @@ -1967,7 +2022,7 @@ Försök att synka dessa igen. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Version %1 För mer information besök <a href='%2'>%3</a>.</p><p>Upphovsrätt ownCloud, Inc.<p><p>Distribuerad av %4 och licensierad under GNU General Public License (GPL) version 2.0.<br>%5 och %5 logotypen är registrerade varumärken som tillhör %4 i <br>USA, andra länder, eller både och.</p> @@ -1975,47 +2030,47 @@ Försök att synka dessa igen. Mirall::ownCloudGui - + Please sign in Vänliga logga in - + Disconnected from server Bortkopplad från servern - + Folder %1: %2 Mapp %1: %2 - + No sync folders configured. Ingen synkroniseringsmapp är konfigurerad. - + None. Ingen. - + Recent Changes Senaste ändringar - + Open %1 folder Öppna %1 mappen - + Managed Folders: Hanterade mappar: - + Open folder '%1' Öppna mapp '%1' @@ -2082,12 +2137,12 @@ Försök att synka dessa igen. Syncing %1 of %2 (%3 left) - + Synkroniserar %1 av %2 (%3 kvar) Syncing %1 (%2 left) - + Synkroniserar %1 (%2 kvar) @@ -2299,27 +2354,27 @@ Försök att synka dessa igen. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2340,7 +2395,7 @@ Försök att synka dessa igen. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Om du inte har en ownCloud-server ännu, besök <a href="https://owncloud.com">owncloud.com</a> för mer info. @@ -2349,12 +2404,12 @@ Försök att synka dessa igen. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small>Byggd på Git revision <a href="%1">%2</a> på %3, %4 med användning utav Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Version %2. För mer information besök <a href="%3">%4</a></p><p><small>Skriven av Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Baserad på Mirall av Duncan Mac-Vicar P.</small></p>%7 @@ -2443,57 +2498,57 @@ Försök att synka dessa igen. theme - + Status undefined Odefinierad status - + Waiting to start sync Väntar på att starta synkronisering - + Sync is running Synkronisering är aktiv - + Sync Success Lyckad synkronisering - + Sync Success, some files were ignored. Synk lyckades, men vissa filer ignorerades. - + Sync Error Synkfel - + Setup Error Inställningsfel - + The server is currently unavailable Servern är för närvarande inte tillgänglig - + Preparing to sync Förbereder synkronisering - + Aborting... Avbryter - + Sync is paused Synk är pausad diff --git a/translations/mirall_th.ts b/translations/mirall_th.ts index 25c269930..57e6647c6 100644 --- a/translations/mirall_th.ts +++ b/translations/mirall_th.ts @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. ยังไม่มีการเชื่อมต่อ %1 ที่ถูกกำหนดค่า - + Sync Running การซิงค์ข้อมูลกำลังทำงาน @@ -175,34 +175,34 @@ - + The syncing operation is running.<br/>Do you want to terminate it? การดำเนินการเพื่อถ่ายโอนข้อมูลกำลังทำงานอยู่ <br/>คุณต้องการสิ้นสุดการทำงานหรือไม่? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + The provided credentials are not correct @@ -261,116 +261,110 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. โฟลเดอร์ในเครื่อง %1 ไม่มีอยู่ - + %1 should be a directory but is not. %1 ควรเป็นไดเร็กทอรี่แต่ไม่ได้เป็น - + %1 is not readable. ไม่สามารถอ่านข้อมูล %1 ได้ - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + Remove all files - + Keep files @@ -378,67 +372,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. สถานะที่ยังไม่ได้ถูกกำหนด - + Waits to start syncing. รอการเริ่มต้นซิงค์ข้อมูล - + Preparing for sync. - + Sync is running. การซิงค์ข้อมูลกำลังทำงาน - + Server is currently not available. - + Last Sync was successful. การซิงค์ข้อมูลครั้งล่าสุดเสร็จเรียบร้อยแล้ว - + Last Sync was successful, but with warnings on individual files. - + Setup Error. เกิดข้อผิดพลาดในการติดตั้ง - + User Abort. - + Sync is paused. การซิงค์ข้อมูลถูกหยุดไว้ชั่วคราว - + %1 (Sync is paused) @@ -465,8 +459,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder เพิ่มโฟลเดอร์ @@ -542,42 +536,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder - + Enter the name of the new folder: - + Folder was successfully created on %1. โฟลเดอร์ถูกสร้างขึ้นเรียบร้อยแล้วเมื่อ %1... - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -594,17 +588,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,7 +617,7 @@ Are you sure you want to perform this operation? - General Setttings + General Settings @@ -656,12 +655,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password - + Please enter %1 password for user '%2': @@ -801,7 +800,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> @@ -956,7 +955,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1070,7 +1069,7 @@ It is not advisable to use it. - + Update %1 server @@ -1078,126 +1077,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>โฟลเดอร์ภายในเครื่องสำหรับผสานข้อมูล %1 ได้ถูกสร้างขึ้นเรียบร้อยแล้ว!</b></font> - + Trying to connect to %1 at %2... กำลังพยายามเชื่อมต่อไปที่ %1 ที่ %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">เชื่อมต่อกับ %1: %2 รุ่น %3 (%4) เสร็จเรียบร้อยแล้ว</font><br/><br/> - + Error: Wrong credentials. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> โฟลเดอร์สำหรับถ่ายโอนข้อมูลภายในเครื่อง %1 มีอยู่แล้ว กรุณาตั้งค่าเพื่อถ่ายข้อมูล <br/<br/> - + Creating local sync folder %1... กำลังสร้างโฟลเดอร์สำหรับโอนถ่ายข้อมูลภายในเครื่อง %1 ... - + ok ตกลง - + failed. ล้มเหลว - + Could not create local folder %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 ข้อผิดพลาด: %1 - + creating folder on ownCloud: %1 กำลังสร้างโฟลเดอร์ใหม่บน ownCloud: %1 - + Remote folder %1 created successfully. โฟลเดอร์ระยะไกล %1 ถูกสร้างเรียบร้อยแล้ว - + The remote folder %1 already exists. Connecting it for syncing. โฟลเดอร์ระยะไกล %1 มีอยู่แล้ว กำลังเชื่อมต่อเพื่อถ่ายโอนข้อมูล - - + + The folder creation resulted in HTTP error code %1 การสร้างโฟลเดอร์ดังกล่าวส่งผลให้เกิดรหัสข้อผิดพลาด HTTP error code %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">การสร้างโฟลเดอร์ระยะไกลล้มเหลว ซึ่งอาจมีสาเหตุมาจากการกรอกข้อมูลส่วนตัวเพื่อเข้าใช้งานไม่ถูกต้อง.</font><br/>กรุณาย้อนกลับไปแล้วตรวจสอบข้อมูลส่วนตัวของคุณอีกครั้ง.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. การสร้างโฟลเดอร์ระยะไกล %1 ล้มเหลวเนื่องข้อผิดพลาด <tt>%2</tt> - + A sync connection from %1 to remote directory %2 was set up. การเชื่อมต่อเผื่อผสานข้อมูลจาก %1 ไปที่ไดเร็กทอรี่ระยะไกล %2 ได้ถูกติดตั้งแล้ว - + Successfully connected to %1! เชื่อมต่อไปที่ %1! สำเร็จ - + Connection to %1 could not be established. Please check again. การเชื่อมต่อกับ %1 ไม่สามารถดำเนินการได้ กรุณาตรวจสอบอีกครั้ง - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1205,7 +1204,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 ตัวช่วยสร้างการเชื่อมต่อ @@ -1249,12 +1248,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1264,7 +1263,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1272,7 +1276,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1280,7 +1284,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1288,12 +1297,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1314,7 +1323,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1322,7 +1331,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1330,17 +1339,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1367,22 +1376,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1410,62 +1419,62 @@ It is not advisable to use it. - + Time - + File - + Folder แฟ้มเอกสาร - + Action - + Size ขนาด - + Retry Sync - + Copy คัดลอก - + Copy the activity list to the clipboard. - + Copied to clipboard - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1507,27 +1516,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 - + Account - + Activity - + General ทั่วไป - + Network @@ -1535,12 +1544,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1548,22 +1557,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 @@ -1765,158 +1774,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. เสร็จสิ้น - + CSync failed to create a lock file. CSync ล้มเหลวในการสร้างไฟล์ล็อคข้อมูล - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>ปลั๊กอิน %1 สำหรับ csync could not be loadeไม่สามารถโหลดได้.<br/>กรุณาตรวจสอบความถูกต้องในการติดตั้ง!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. เวลาในระบบของโปรแกรมไคลเอนต์นี้แตกต่างจากเวลาในระบบของเซิร์ฟเวอร์ กรุณาใช้บริการผสานข้อมูลของเวลา (NTP) บนเซิร์ฟเวอร์และเครื่องไคลเอนต์เพื่อปรับเวลาให้ตรงกัน - + CSync could not detect the filesystem type. CSync ไม่สามารถตรวจพบประเภทของไฟล์ในระบบได้ - + CSync got an error while processing internal trees. CSync เกิดข้อผิดพลาดบางประการในระหว่างประมวลผล internal trees - + CSync failed to reserve memory. การจัดสรรหน่วยความจำ CSync ล้มเหลว - + CSync fatal parameter error. พบข้อผิดพลาดเกี่ยวกับ CSync fatal parameter - + CSync processing step update failed. การอัพเดทขั้นตอนการประมวลผล CSync ล้มเหลว - + CSync processing step reconcile failed. การปรับปรุงขั้นตอนการประมวลผล CSync ล้มเหลว - + CSync processing step propagate failed. การถ่ายทอดขั้นตอนการประมวลผล CSync ล้มเหลว - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> - + A remote file can not be written. Please check the remote access. ไม่สามารถเขียนข้อมูลไปยังไฟล์ระยะไกลได้ กรุณาตรวจสอบการเข้าถึงข้อมูลระยะไกล - + The local filesystem can not be written. Please check permissions. ระบบไฟล์ในพื้นที่ไม่สามารถเขียนข้อมูลได้ กรุณาตรวจสอบสิทธิ์การเข้าใช้งาน - + CSync failed to connect through a proxy. CSync ล้มเหลวในการเชื่อมต่อผ่านทางพร็อกซี่ - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. CSync ไม่สามารถค้นหาพร็อกซี่บนเซิร์ฟเวอร์ได้ - + CSync failed to authenticate at the %1 server. CSync ล้มเหลวในการยืนยันสิทธิ์การเข้าใช้งานที่เซิร์ฟเวอร์ %1 - + CSync failed to connect to the network. CSync ล้มเหลวในการเชื่อมต่อกับเครือข่าย - - A network connection timeout happend. - หมดเวลาการเชื่อมต่อเครือข่าย + + A network connection timeout happened. + - + A HTTP transmission error happened. เกิดข้อผิดพลาดเกี่ยวกับ HTTP transmission - + CSync failed due to not handled permission deniend. CSync ล้มเหลว เนื่องจากไม่สามารถจัดการกับการปฏิเสธให้เข้าใช้งานได้ - + CSync failed to access - + CSync tried to create a directory that already exists. CSync ได้พยายามที่จะสร้างไดเร็กทอรี่ที่มีอยู่แล้ว - - + + CSync: No space on %1 server available. CSync: ไม่มีพื้นที่เหลือเพียงพอบนเซิร์ฟเวอร์ %1 - + CSync unspecified error. CSync ไม่สามารถระบุข้อผิดพลาดได้ - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1936,15 +1945,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1957,7 +2012,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1965,47 +2020,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in - + Disconnected from server - + Folder %1: %2 - + No sync folders configured. ยังไม่มีการกำหนดค่าโฟลเดอร์ที่ต้องการซิงค์ข้อมูล - + None. - + Recent Changes - + Open %1 folder เปิดโฟลเดอร์ %1 - + Managed Folders: โฟลเดอร์ที่มีการจัดการแล้ว: - + Open folder '%1' @@ -2289,27 +2344,27 @@ It is not advisable to use it. Utility - + %L1 TB - + %L1 GB - + %L1 MB - + %L1 kB - + %L1 B @@ -2330,7 +2385,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! @@ -2339,12 +2394,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2433,57 +2488,57 @@ It is not advisable to use it. theme - + Status undefined สถานะไม่สามารถระบุได้ - + Waiting to start sync กำลังรอการเริ่มต้นเชื่อมข้อมูล - + Sync is running การเชื่อมข้อมูลกำลังทำงาน - + Sync Success การเชื่อมข้อมูลเสร็จสิ้น - + Sync Success, some files were ignored. - + Sync Error - + Setup Error เกิดข้อผิดพลาดในการตั้งค่า - + The server is currently unavailable - + Preparing to sync - + Aborting... - + Sync is paused diff --git a/translations/mirall_tr.ts b/translations/mirall_tr.ts index 1e45da34d..f752bf6e3 100644 --- a/translations/mirall_tr.ts +++ b/translations/mirall_tr.ts @@ -144,28 +144,28 @@ <p>Gerçekten <i>%1</i> klasörünü sıfırlamak ve istemci veritabanını yeniden inşa etmek istiyor musunuz?</p><p><b>Not:</b> Bu işlev sadece bakım amaçlı tasarlandı. Hiçbir dosya kaldırılmayacak, fakat bu işlem büyük veri trafiğine sebep olabilir ve klasör boyutuna bağlı olarak tamamlanması birkaç dakikadan birkaç saate kadar sürebilir. Bu seçeneği sadece yöneticiniz tarafından istenmişse kullanın.</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. Sunucudaki %2'lık kotanın %1'ı (%%3) kullanılıyor. - + No connection to %1 at <a href="%2">%3</a>. <a href="%2">%3</a> üzerinde %1 bağlantısı yok. - + No %1 connection configured. Hiç %1 bağlantısı yapılandırılmamış. - + Sync Running Eşitleme Çalışıyor @@ -175,35 +175,35 @@ Hiçbir hesap yapılandırılmamış. - + The syncing operation is running.<br/>Do you want to terminate it? Eşitleme işlemi devam ediyor.<br/>Durdurmak istiyor musunuz? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" %1 %2 (%3/%4) %6/s aktarım hızında kalan %5 - + %1 of %2, file %3 of %4 Total time left %5 %1/%2, dosya %3/%4 Toplam kalan süre %5 - + Connected to <a href="%1">%2</a>. <a href="%1">%2</a> ile bağlı. - + Connected to <a href="%1">%2</a> as <i>%3</i>. <a href="%1">%2</a> bağlantısı <i>%3</i> olarak yapıldı. - + Currently there is no storage usage information available. Şu anda depolama kullanım bilgisi mevcut değil. @@ -234,27 +234,27 @@ Toplam kalan süre %5 Mirall::ConnectionValidator - + No ownCloud account configured Hiçbir ownCloud hesabı yapılandırılmamış - + The configured server for this client is too old Yapılandırılmış sunucu, bu istemci için çok eski - + Please update to the latest server and restart the client. Lütfen en son sunucuya güncelleyin veya istemciyi yeniden başlatın - + Unable to connect to %1 %1 bağlantısı yapılamadı - + The provided credentials are not correct Sağlanan kimlik bilgileri doğru değil @@ -262,100 +262,93 @@ Toplam kalan süre %5 Mirall::Folder - + Unable to create csync-context csync-context oluşturma başarısız - + Local folder %1 does not exist. %1 yerel klasörü mevcut değil. - + %1 should be a directory but is not. %1 bir dizin olmalı, ancak değil. - + %1 is not readable. %1 okunabilir değil. - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. %1 ve diğer %2 dosya kaldırıldı. - + %1 has been removed. %1 names a file. %1 kaldırıldı. - + %1 and %2 other files have been downloaded. %1 names a file. %1 ve diğer %2 dosya indirildi. - + %1 has been downloaded. %1 names a file. %1 indirildi. - + %1 and %2 other files have been updated. %1 ve diğer %2 dosya güncellendi. - + %1 has been updated. %1 names a file. %1 güncellendi. - + %1 has been renamed to %2 and %3 other files have been renamed. %1, %2 olarak ve diğer %3 dosya adlandırıldı. - + %1 has been renamed to %2. %1 and %2 name files. %1, %2 olarak adlandırıldı. - + %1 has been moved to %2 and %3 other files have been moved. %1, %2 konumuna ve diğer %3 dosya taşındı. - + %1 has been moved to %2. %1, %2 konumuna taşındı. - + Sync Activity Eşitleme Etkinliği - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - Bu eşitleme, yerel eşitleme klasörü '%1' içindeki tüm dosyaları kaldıracak. -Eğer siz veya yöneticiniz sunucudaki hesabınızı sıfırlamışsa, "Dosyaları koru" seçin. Eğer verinizin kaldırılmasını istiyorsanız, "Tüm dosyaları kaldır" seçin. - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -364,17 +357,17 @@ Bu, klasörün sessizce yeniden yapılandırılması veya tüm dosyaların el il Bu işlemi gerçekleştirmek istediğinize emin misiniz? - + Remove All Files? Tüm Dosyalar Kaldırılsın mı? - + Remove all files Tüm dosyaları kaldır - + Keep files Dosyaları koru @@ -382,67 +375,67 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::FolderMan - + Could not reset folder state Klasör durumu sıfırılanamadı - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. Eski eşitleme günlüğü '%1' bulundu ancak kaldırılamadı. Başka bir uygulama tarafından kullanılmadığından emin olun. - + Undefined State. Tanımlanmamış Durum. - + Waits to start syncing. Eşitleme başlatmak için bekleniyor. - + Preparing for sync. Eşitleme için hazırlanıyor. - + Sync is running. Eşitleme çalışıyor. - + Server is currently not available. Sunucu şu an kullanılabilir değil. - + Last Sync was successful. Son Eşitleme başarılı oldu. - + Last Sync was successful, but with warnings on individual files. Son eşitleme başarılıydı, ancak tekil dosyalarda uyarılar vardı. - + Setup Error. Kurulum Hatası. - + User Abort. Kullanıcı İptal Etti. - + Sync is paused. Eşitleme duraklatıldı. - + %1 (Sync is paused) %1 (Eşitleme duraklatıldı) @@ -469,8 +462,8 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::FolderWizard - - + + Add Folder Klasör Ekle @@ -546,42 +539,42 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::FolderWizardRemotePath - + Add Remote Folder Uzak Klasör Ekle - + Enter the name of the new folder: Yeni klasörün adını girin: - + Folder was successfully created on %1. Klasör %1 üzerinde başarıyla oluşturuldu. - + Failed to create the folder on %1. Please check manually. %1 üzerinde klasör oluşturma başarısız. Lütfen elle denetleyin. - + Choose this to sync the entire account Tüm hesabı eşitlemek için bunu seçin - + This folder is already being synced. Bu klasör zaten eşitleniyor. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. <i>%1</i> zaten eşitleniyor. Bu, <i>%2</i> klasörünün üst klasörü. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. Zaten tüm dosyalarınızı eşitliyorsunuz. Farklı bir klasör eşitlemek <b>desteklenmiyor</b>. Eğer çoklu klasörleri eşitlemek isterseniz, lütfen şu anda yapılandırılmış kök klasör eşitlemesini kaldırın. @@ -598,17 +591,22 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway Sunucudan E-Etiket alınamadı, Vekil sunucu/Ağ geçidini denetleyin. - + We received a different E-Tag for resuming. Retrying next time. Devam etmek üzere farklı bir E-Etiket aldık. Sonraki işlemde yeniden denenecek. - + + Server returned wrong content-range + Sunucu yanlış içerik aralığı döndürdü + + + Connection Timeout Bağlantı Zaman Aşımı @@ -622,7 +620,7 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? - General Setttings + General Settings Genel Ayarlar @@ -660,12 +658,12 @@ Bu işlemi gerçekleştirmek istediğinize emin misiniz? Mirall::HttpCredentials - + Enter Password Parolayı Girin - + Please enter %1 password for user '%2': Lütfen '%2' kullanıcısı için %1 parolasını girin: @@ -807,8 +805,8 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>%1 İstemcisi yeni sürümü mevcut.</p><p><b>%2</b> artık indirilebilir. Kurulu sürüm %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>%1 İstemcisi yeni sürümü mevcut.</p><p><b>%2</b> artık indirilebilir. Kurulu sürüm %3.</p> @@ -963,7 +961,7 @@ bu süreç sırasında ek yetki talebinde bulunabilir. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. Yeni %1 sürüm mevcut. Lütfen kurulum için sistem güncelleştirme aracını kullanın. @@ -1078,7 +1076,7 @@ Kullanmanız önerilmez. Bağlantı başarısız - + Update %1 server %1 sunucusunu güncelle @@ -1086,126 +1084,126 @@ Kullanmanız önerilmez. Mirall::OwncloudSetupWizard - + Folder rename failed Klasör adlandırma başarısız - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Yerel eşitleme klasörü %1 başarıyla oluşturuldu!</b></font> - + Trying to connect to %1 at %2... %2 üzerinde %1 bağlantısı deneniyor... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">%1 bağlantısı başarılı: %2 sürüm %3 (%4)</font><br/><br/> - + Error: Wrong credentials. Hata: Hatalı kimlik bilgileri. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Yerel eşitleme klasörü %1 zaten mevcut, eşitlemek için ayarlanıyor.<br/><br/> - + Creating local sync folder %1... Yerel eşitleme klasörü %1 oluşturuluyor... - + ok tamam - + failed. başarısız. - + Could not create local folder %1 %1 yerel klasörü oluşturulamadı - - + + Failed to connect to %1 at %2:<br/>%3 %2 üzerinde %1 bağlantısı yapılamadı:<br/>%3 - + No remote folder specified! Uzak klasör belirtilmemiş! - + Error: %1 Hata: %1 - + creating folder on ownCloud: %1 ownCloud üzerinde klasör oluşturuluyor: %1 - + Remote folder %1 created successfully. %1 uzak klasörü başarıyla oluşturuldu. - + The remote folder %1 already exists. Connecting it for syncing. Uzak klasör %1 zaten mevcut. Eşitlemek için bağlanılıyor. - - + + The folder creation resulted in HTTP error code %1 Klasör oluşturma %1 HTTP hata kodu ile sonuçlandı - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> Uzak klasör oluşturması, geçersiz kimlik bilgileri nedeniyle başarısız!<br/>Lütfen geri gidin ve bilgileri denetleyin.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Uzak klasör oluşturma muhtemelen hatalı kimlik bilgilerinden dolayı başarısız oldu.</font><br/>Lütfen geri gidip kimlik bilgilerini doğrulayın.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Uzak klasör %1 oluşturma işlemi <tt>%2</tt> hatası ile başarısız oldu. - + A sync connection from %1 to remote directory %2 was set up. %1 kaynaklı %2 uzak dizinine bir eşitleme bağlantısı ayarlandı. - + Successfully connected to %1! %1 bağlantısı başarılı! - + Connection to %1 could not be established. Please check again. %1 bağlantısı kurulamadı. Lütfen tekrar denetleyin. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. Klasör veya içerisindeki bir dosya farklı bir program içerisinde açık olduğundan, kaldırma ve yedekleme işlemi yapılamıyor. Lütfen klasör veya dosyayı kapatıp yeniden deneyin veya kurulumu iptal edin. @@ -1213,7 +1211,7 @@ Kullanmanız önerilmez. Mirall::OwncloudWizard - + %1 Connection Wizard %1 Bağlantı Sihirbazı @@ -1257,12 +1255,12 @@ Kullanmanız önerilmez. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. Eşitleme kullanıcı tarafından iptal edildi. - + No E-Tag received from server, check Proxy/Gateway Sunucudan E-Etiket alınamadı, Vekil sunucu/Ağ geçidini denetleyin. @@ -1272,7 +1270,12 @@ Kullanmanız önerilmez. Devam etmek üzere farklı bir E-Etiket aldık. Sonraki işlemde yeniden denenecek. - + + Server returned wrong content-range + Sunucu yanlış içerik aralığı döndürdü + + + File %1 can not be downloaded because of a local file name clash! %1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! @@ -1280,7 +1283,7 @@ Kullanmanız önerilmez. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! %1 dosyası, yerel dosya adı çakışması nedeniyle indirilemiyor! @@ -1288,7 +1291,12 @@ Kullanmanız önerilmez. Mirall::PropagateItemJob - + + ; Restoration Failed: + ; Geri Yükleme Başarısız: + + + A file or directory was removed from a read only share, but restoring failed: %1 Bir dosya veya dizin bir salt okunur paylaşımdan kaldırılmıştı, ancak geri yükleme başarısız oldu: %1 @@ -1296,12 +1304,12 @@ Kullanmanız önerilmez. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 Uyarı, %1 ile muhtemel harf duyarlılığı çatışması - + could not create directory %1 %1 dizini oluşturulamadı @@ -1322,7 +1330,7 @@ Kullanmanız önerilmez. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash Yerel bir dosya adı çakışması nedeniyle %1 dosyası %2 olarak adlandırılamadı @@ -1330,7 +1338,7 @@ Kullanmanız önerilmez. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. Dosya salt okunur bir paylaşımdan kaldırılmıştı. Geri yüklendi. @@ -1338,17 +1346,17 @@ Kullanmanız önerilmez. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. Bu klasörün adı değiştirilmemelidir. Özgün adına geri dönüştürüldü. - + This folder must not be renamed. Please name it back to Shared. Bu klasörün adı değiştirilmemelidir. Lütfen Shared olarak geri adlandırın. - + The file was renamed but is part of a read only share. The original file was restored. Dosya adlandırıldı ancak salt okunur paylaşımın bir parçası. Özgün dosya geri yüklendi. @@ -1375,22 +1383,22 @@ Kullanmanız önerilmez. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. Dosya yerel olarak düzenlendi ancak salt okunur paylaşımın bir parçası. Geri yüklendi ve düzenlemeniz çakışan dosyada. - + The local file was removed during sync. Eşitleme sırasında yerel dosya kaldırıldı. - + Local file changed during sync. Eşitleme sırasında yerel dosya değişti. - + The server did not acknowledge the last chunk. (No e-tag were present) Sunucu son yığını onaylamadı. (Mevcut e-etiket bulunamadı) @@ -1418,62 +1426,62 @@ Kullanmanız önerilmez. 4 - + Time Zaman - + File Dosya - + Folder Klasör - + Action Eylem - + Size Boyut - + Retry Sync Yeniden Eşitlemeyi Dene - + Copy Kopyala - + Copy the activity list to the clipboard. Etkinlik listesini panoya kopyala. - + Copied to clipboard Panoya kopyalandı - + The sync status has been copied to the clipboard. Eşitleme durumu panoya kopyalandı. - + Currently no files are ignored because of previous errors. Önceki hata koşullarından dolayı yoksayılmış dosya yok. - + %1 files are ignored because of previous errors. Try to sync these again. Önceki hata koşullarından dolayı %1 dosya yoksayıldı. @@ -1516,27 +1524,27 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::SettingsDialogMac - + %1 %1 - + Account Hesap - + Activity Etkinlik - + General Genel - + Network @@ -1544,12 +1552,12 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::ShibbolethCredentials - + Login Error Oturum Açma Hatası - + You must sign in as user %1 %1 kullanıcısı olarak oturum açmalısınız @@ -1557,22 +1565,22 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::ShibbolethWebView - + %1 - Authenticate %1 - Kimlik Doğrulaması - + Reauthentication required Yeniden kimlik doğrulama gerekli - + Your session has expired. You need to re-login to continue to use the client. Oturumunuzun süresi doldu. İstemciyi kullanmaya devam etmek için yeniden oturum açmanız gerekiyor. - + %1 - %2 %1 - %2 @@ -1776,158 +1784,158 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::SyncEngine - + Success. Başarılı. - + CSync failed to create a lock file. CSync bir kilit dosyası oluşturamadı. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. CSync, günlük dosyası yükleyemedi veya oluşturamadı. Lütfen yerel eşitleme dizininde okuma ve yazma izinleriniz olduğundan emin olun. - + CSync failed to write the journal file. CSync günlük dosyasına yazamadı. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>Csync için %1 eklentisi yüklenemedi.<br/>Lütfen kurulumu doğrulayın!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Bu istemci üzerinde sistem saati sunucudaki sistem saati ile farklı. Sunucu ve istemci makinelerde bir zaman eşitleme hizmeti (NTP) kullanırsanız zaman aynı kalır. - + CSync could not detect the filesystem type. CSync dosya sistemi türünü tespit edemedi. - + CSync got an error while processing internal trees. CSync dahili ağaçları işlerken bir hata ile karşılaştı. - + CSync failed to reserve memory. CSync bellek ayıramadı. - + CSync fatal parameter error. CSync ciddi parametre hatası. - + CSync processing step update failed. CSync güncelleme süreç adımı başarısız. - + CSync processing step reconcile failed. CSync uzlaştırma süreç adımı başarısız. - + CSync processing step propagate failed. CSync yayma süreç adımı başarısız. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>Hedef dizin mevcut değil.</p><p>Lütfen eşitleme ayarını denetleyin.</p> - + A remote file can not be written. Please check the remote access. Bir uzak dosya yazılamıyor. Lütfen uzak erişimi denetleyin. - + The local filesystem can not be written. Please check permissions. Yerel dosya sistemine yazılamıyor. Lütfen izinleri kontrol edin. - + CSync failed to connect through a proxy. CSync bir vekil sunucu aracılığıyla bağlanırken hata oluştu. - + CSync could not authenticate at the proxy. CSync vekil sunucuda kimlik doğrulayamadı. - + CSync failed to lookup proxy or server. CSync bir vekil veya sunucu ararken başarısız oldu. - + CSync failed to authenticate at the %1 server. CSync %1 sunucusunda kimlik doğrularken başarısız oldu. - + CSync failed to connect to the network. CSync ağa bağlanamadı. - - A network connection timeout happend. + + A network connection timeout happened. Bir ağ zaman aşımı meydana geldi. - + A HTTP transmission error happened. Bir HTTP aktarım hatası oluştu. - + CSync failed due to not handled permission deniend. CSync ele alınmayan izin reddinden dolayı başarısız. - + CSync failed to access CSync erişemedi: - + CSync tried to create a directory that already exists. CSync, zaten mevcut olan bir dizin oluşturmaya çalıştı. - - + + CSync: No space on %1 server available. CSync: %1 sunucusunda kullanılabilir alan yok. - + CSync unspecified error. CSync belirtilmemiş hata. - + Aborted by the user Kullanıcı tarafından iptal edildi - + An internal error number %1 happened. %1 numaralı bir hata oluştu. - + The item is not synced because of previous errors: %1 Bu öge önceki hatalar koşullarından dolayı eşitlenemiyor: %1 @@ -1947,15 +1955,61 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Dosya, çapraz platform arasında eşitlenemeyecek karakterler içeriyor. - + Unable to initialize a sync journal. Bir eşitleme günlüğü başlatılamadı. - + Cannot open the sync journal Eşitleme günlüğü açılamıyor + + + Not allowed because you don't have permission to add sub-directories in that directory + Bu dizine alt dizin ekleme yetkiniz olmadığından izin verilmedi + + + + Not allowed because you don't have permission to add parent directory + Üst dizin ekleme yetkiniz olmadığından izin verilmedi + + + + Not allowed because you don't have permission to add files in that directory + Bu dizine dosya ekleme yetkiniz olmadığından izin verilmedi + + + + Not allowed to upload this file because it is read-only on the server, restoring + Sunucuda salt okunur olduğundan, bu dosya yüklenemedi, geri alınıyor + + + + + Not allowed to remove, restoring + Kaldırmaya izin verilmedi, geri alınıyor + + + + Move not allowed, item restored + Taşımaya izin verilmedi, öge geri alındı + + + + Move not allowed because %1 is read-only + %1 salt okunur olduğundan taşımaya izin verilmedi + + + + the destination + hedef + + + + the source + kaynak + Mirall::Systray @@ -1968,7 +2022,7 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> <p>Sürüm %1 Daha fazla bilgi için lütfen <a href='%2'>%3</a> adresini ziyaret edin.</p><p>Telif hakkı ownCloud, Inc.<p><p>Dağıtım %4 ve GNU Genel Kamu Lisansı (GPL) Sürüm 2.0 ile lisanslanmıştır.<br>%5 ve %5 logoları <br>ABD ve/veya diğer ülkelerde %4 tescili markalarıdır.</p> @@ -1976,47 +2030,47 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Mirall::ownCloudGui - + Please sign in Lütfen oturum açın - + Disconnected from server Sunucu bağlantısı kesildi - + Folder %1: %2 Klasör %1: %2 - + No sync folders configured. Yapılandırılmış eşitleme klasörü yok. - + None. Hiçbir şey. - + Recent Changes Son Değişiklikler - + Open %1 folder %1 klasörünü aç - + Managed Folders: Yönetilen Klasörler: - + Open folder '%1' '%1' klasörünü aç @@ -2300,27 +2354,27 @@ Bu dosyaları tekrar eşitlemeyi deneyin. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2341,7 +2395,7 @@ Bu dosyaları tekrar eşitlemeyi deneyin. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! Eğer hala bir ownCloud sunucunuz yoksa, daha fazla bilgi için <a href="https://owncloud.com">owncloud.com</a> adresine bakın. @@ -2350,12 +2404,12 @@ Bu dosyaları tekrar eşitlemeyi deneyin. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> <p><small><a href="%1">%2</a> Git gözden geçirmesi ile %3, %4 tarihinde, Qt %5 kullanılarak derlendi.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>Sürüm %2. Daha fazla bilgi için <a href="%3">%4</a> sitesini ziyaret edin.</p><p><small>Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Anonim.<br>Duncan Mac-Vicar P tarafından yazılan Mirall tabanlıdır.</small></p>%7 @@ -2444,57 +2498,57 @@ Bu dosyaları tekrar eşitlemeyi deneyin. theme - + Status undefined Tanımsız durum - + Waiting to start sync Eşitlemenin başlanması bekleniyor - + Sync is running Eşitleme çalışıyor - + Sync Success Eşitleme Başarılı - + Sync Success, some files were ignored. Eşitleme Başarılı, bazı dosyalar yoksayıldı. - + Sync Error Eşitleme Hatası - + Setup Error Kurulum Hatası - + The server is currently unavailable Sunucu şu anda kullanılamıyor - + Preparing to sync Eşitleme için hazırlanıyor - + Aborting... İptal ediliyor... - + Sync is paused Eşitleme duraklatıldı diff --git a/translations/mirall_uk.ts b/translations/mirall_uk.ts index 69956d7bf..323ac61b9 100644 --- a/translations/mirall_uk.ts +++ b/translations/mirall_uk.ts @@ -47,7 +47,7 @@ Folders - + Теки @@ -65,17 +65,17 @@ Account Maintenance - + Управління обліковим записом Edit Ignored Files - + Ігноровані файли Modify Account - + Редагувати запис @@ -106,12 +106,12 @@ Storage Usage - + Використання сховища Retrieving usage information... - + Отримання інформації по використання... @@ -131,7 +131,7 @@ <p>Do you really want to stop syncing the folder <i>%1</i>?</p><p><b>Note:</b> This will not remove the files from your client.</p> - + <p>Дійсно бажаєте зупинити синхронізацію теки <i>%1</i>?</p><p><b>Примітка:</b> Файли у вашому клієнті не будуть видалені.</p> @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. Жодного %1 підключення не налаштовано. - + Sync Running Виконується синхронізація @@ -175,34 +175,34 @@ - + The syncing operation is running.<br/>Do you want to terminate it? Виконується процедура синхронізації.<br/>Бажаєте відмінити? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + The provided credentials are not correct @@ -261,184 +261,180 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. Локальна тека %1 не існує. - + %1 should be a directory but is not. %1 повинна бути текою, але нею не є. - + %1 is not readable. %1 не читається. - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Ця синхронізація видалить усі файли з теки синхронізації '%1'. +Це може бути через те, що тека була переналаштована або усі файли були видалені з неї вручну. +Ви дійсно бажаєте продовжити цю операцію? - + Remove All Files? - + Видалити усі файли? - + Remove all files - + Видалити усі файли - + Keep files - + Зберегти файли Mirall::FolderMan - + Could not reset folder state - + Не вдалося скинути стан теки - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. - + Undefined State. Невизначений стан. - + Waits to start syncing. Очікування початку синхронізації. - + Preparing for sync. - + Підготовка до синхронізації - + Sync is running. Синхронізація запущена. - + Server is currently not available. - + Сервер наразі недоступний. - + Last Sync was successful. Остання синхронізація була успішною. - + Last Sync was successful, but with warnings on individual files. - + Setup Error. Помилка установки. - + User Abort. - + Sync is paused. - + %1 (Sync is paused) @@ -449,12 +445,12 @@ Are you sure you want to perform this operation? File - + Файл Syncing all files in your account with - + Синхронізація усіх ваших файлів з @@ -465,8 +461,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder Додати Теку @@ -542,42 +538,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder - + Enter the name of the new folder: - + Folder was successfully created on %1. Теку успішно створено на %1. - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -594,17 +590,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,23 +619,23 @@ Are you sure you want to perform this operation? - General Setttings + General Settings Launch on System Startup - + Запускати при старті системи Show Desktop Notifications - + Показувати сповіщення Use Monochrome Icons - + Монохромні значки @@ -656,12 +657,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password - + Please enter %1 password for user '%2': @@ -671,7 +672,7 @@ Are you sure you want to perform this operation? Ignored Files Editor - + Редактор ігнорованих файлів @@ -693,22 +694,22 @@ Checked items will also be deleted if they prevent a directory from being remove Could not open file - + Не вдалося відкрити файл Cannot write changes to '%1'. - + Неможливо запиасати зміни до '%1'. Add Ignore Pattern - + Додати шаблон ігнорування Add a new ignore pattern: - + Додати новий шаблон ігнорування: @@ -801,7 +802,7 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> @@ -845,7 +846,7 @@ Checked items will also be deleted if they prevent a directory from being remove Specify proxy manually as - + Вказати проксі вручну @@ -855,17 +856,17 @@ Checked items will also be deleted if they prevent a directory from being remove : - + : Proxy server requires authentication - + Проксі-сервер вимагає пароль Download Bandwidth - + Швидкість завантаження @@ -913,12 +914,12 @@ Checked items will also be deleted if they prevent a directory from being remove HTTP(S) proxy - + HTTP(S) проксі SOCKS5 proxy - + SOCKS5 проксі @@ -956,7 +957,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -1057,7 +1058,7 @@ It is not advisable to use it. This url is secure. You can use it. - + Ця адреса безпечна. Її можна використовувати. @@ -1070,7 +1071,7 @@ It is not advisable to use it. - + Update %1 server @@ -1078,126 +1079,126 @@ It is not advisable to use it. Mirall::OwncloudSetupWizard - + Folder rename failed - + Не вдалося перейменувати теку - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>Локальна тека синхронізації %1 успішно створена!</b></font> - + Trying to connect to %1 at %2... Спроба підключення до %1 на %2... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">Успішно підключено до %1: %2 версія %3 (%4)</font><br/><br/> - + Error: Wrong credentials. - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> Локальна тека синхронізації %1 вже існує, налаштування її для синхронізації.<br/><br/> - + Creating local sync folder %1... Створення локальної теки для синхронізації %1... - + ok ok - + failed. не вдалося. - + Could not create local folder %1 - + Не вдалося створити локальну теку $1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 - + Помилка: %1 - + creating folder on ownCloud: %1 - + створення теки на ownCloud: %1 - + Remote folder %1 created successfully. Віддалена тека %1 успішно створена. - + The remote folder %1 already exists. Connecting it for syncing. Віддалена тека %1 вже існує. Під'єднання для синхронізації. - - + + The folder creation resulted in HTTP error code %1 Створення теки завершилось HTTP помилкою %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> - + Створити віддалену теку не вдалося через невірно вказані облікові дані.<br/>Поверніться назад та перевірте облікові дані.</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">Створити віддалену теку не вдалося, можливо, через невірно вказані облікові дані.</font><br/>Будь ласка, поверніться назад та перевірте облікові дані.</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. Не вдалося створити віддалену теку %1 через помилку <tt>%2</tt>. - + A sync connection from %1 to remote directory %2 was set up. З'єднання для синхронізації %1 з віддаленою текою %2 було встановлено. - + Successfully connected to %1! Успішно під'єднано до %1! - + Connection to %1 could not be established. Please check again. Підключення до %1 встановити не вдалося. Будь ласка, перевірте ще раз. - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1205,7 +1206,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard Майстер з'єднання %1 @@ -1215,22 +1216,22 @@ It is not advisable to use it. Open %1 - + Відкрити %1 Open Local Folder - + Відкрити локальну теку Everything set up! - + Усе налаштовано! Your entire account is synced to the local folder <i>%1</i> - + Ваш запис цілком синхронізовано із локальною текою <i>%1</i> @@ -1249,12 +1250,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1264,7 +1265,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1272,7 +1278,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1280,7 +1286,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1288,12 +1299,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1314,7 +1325,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1322,7 +1333,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1330,17 +1341,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1367,22 +1378,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1410,62 +1421,62 @@ It is not advisable to use it. - + Time Час - + File - + Файл - + Folder Тека - + Action - + Size Розмір - + Retry Sync - + Copy Копіювати - + Copy the activity list to the clipboard. - + Copied to clipboard Скопійовано в буфер обміну - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1496,51 +1507,51 @@ It is not advisable to use it. Network - + Мережа Account - + Обліковий запис Mirall::SettingsDialogMac - + %1 - + Account - + Обліковий запис - + Activity Активність - + General Загалом - + Network - + Мережа Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1548,22 +1559,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 @@ -1765,158 +1776,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. Успішно. - + CSync failed to create a lock file. CSync не вдалося створити файл блокування. - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p> %1 плагін для синхронізації не вдалося завантажити.<br/>Будь ласка, перевірте його інсталяцію!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. Системний час цього клієнта відрізняється від системного часу на сервері. Будь ласка, використовуйте сервіс синхронізації часу (NTP) на сервері та клієнті, аби час був однаковий. - + CSync could not detect the filesystem type. CSync не вдалося визначити тип файлової системи. - + CSync got an error while processing internal trees. У CSync виникла помилка під час сканування внутрішньої структури каталогів. - + CSync failed to reserve memory. CSync не вдалося зарезервувати пам'ять. - + CSync fatal parameter error. У CSync сталася фатальна помилка параметра. - + CSync processing step update failed. CSync не вдалася зробити оновлення . - + CSync processing step reconcile failed. CSync не вдалася зробити врегулювання. - + CSync processing step propagate failed. CSync не вдалася зробити розповсюдження. - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> - + A remote file can not be written. Please check the remote access. Не можливо проводити запис у віддалену файлову систему. Будь ласка, перевірте повноваження доступу. - + The local filesystem can not be written. Please check permissions. Не можливо проводити запис у локальну файлову систему. Будь ласка, перевірте повноваження. - + CSync failed to connect through a proxy. CSync не вдалося приєднатися через Проксі. - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. CSync не вдалося знайти Проксі або Сервер. - + CSync failed to authenticate at the %1 server. CSync не вдалося аутентифікуватися на %1 сервері. - + CSync failed to connect to the network. CSync не вдалося приєднатися до мережі. - - A network connection timeout happend. - Час під'єднання до мережі вичерпався. + + A network connection timeout happened. + - + A HTTP transmission error happened. Сталася помилка передачі даних по HTTP. - + CSync failed due to not handled permission deniend. CSync завершився неуспішно через порушення прав доступу. - + CSync failed to access - + CSync tried to create a directory that already exists. CSync намагалася створити каталог, який вже існує. - - + + CSync: No space on %1 server available. CSync: на сервері %1 скінчилося місце. - + CSync unspecified error. Невизначена помилка CSync. - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1936,15 +1947,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1957,7 +2014,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1965,47 +2022,47 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in - + Disconnected from server - + Folder %1: %2 - + No sync folders configured. Жодна тека не налаштована для синхронізації. - + None. - + Recent Changes - + Недавні зміни - + Open %1 folder Відкрити %1 каталог - + Managed Folders: Керовані теки: - + Open folder '%1' @@ -2249,12 +2306,12 @@ It is not advisable to use it. Server &Address - + &Адреса сервера https://... - + https://... @@ -2277,7 +2334,7 @@ It is not advisable to use it. Your entire account is synced to the local folder - + Ваш запис цілком синхронізовано із локальною текою @@ -2289,27 +2346,27 @@ It is not advisable to use it. Utility - + %L1 TB - + %L1 GB - + %L1 MB - + %L1 kB - + %L1 B @@ -2330,21 +2387,21 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! - + Якщо ви ще не маєте власного сервера ownCloud, подивіться <a href="https://owncloud.com">owncloud.com</a> з цього приводу. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2433,57 +2490,57 @@ It is not advisable to use it. theme - + Status undefined Статус не визначено - + Waiting to start sync Очікування початку синхронізації - + Sync is running Проводиться синхронізація - + Sync Success Синхронізація успішно виконана - + Sync Success, some files were ignored. - + Sync Error - + Setup Error Помилка налаштування - + The server is currently unavailable - + Preparing to sync - + Aborting... - + Sync is paused diff --git a/translations/mirall_zh_CN.ts b/translations/mirall_zh_CN.ts index bb423fd70..c2f75dc8f 100644 --- a/translations/mirall_zh_CN.ts +++ b/translations/mirall_zh_CN.ts @@ -141,70 +141,70 @@ <p>Do you really want to reset folder <i>%1</i> and rebuild your client database?</p><p><b>Note:</b> This function is designed for maintenance purposes only. No files will be removed, but this can cause significant data traffic and take several minutes or hours to complete, depending on the size of the folder. Only use this option if advised by your administrator.</p> - + <p>您真希望重置文件夹 <i>%1</i> 并重新构建您的客户端数据库吗?</p><p><b>注意:</b>此功能设计仅用作维护操作。没有文件将被移除,但这将导致大量的数据传输。根据文件夹的大小,这一过程将持续几分钟到几小时。请仅在管理员指导的情况下使用此功能。</p> - + %1 %2 Example text: "uploading foobar.png" %1 %2 - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. 没有 %1 连接配置。 - + Sync Running 同步正在运行 No account configured. - + 没有配置的帐号。 - + The syncing operation is running.<br/>Do you want to terminate it? 正在执行同步。<br />您确定要关闭它吗? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + 已连接到<a href="%1">%2</a>。 - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + 已作为 <i>%3</i> 连接到 <a href="%1">%2</a>。 - + Currently there is no storage usage information available. - + 目前没有储存使用量信息可用。 @@ -233,128 +233,121 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + 没有已经配置的 ownCloud 帐号 + + + + The configured server for this client is too old + 此客户端连接到的服务器版本过旧 - The configured server for this client is too old - - - - Please update to the latest server and restart the client. - + 请更新到最新的服务器版本然后重启客户端。 - + Unable to connect to %1 - + 无法连接到 %1 - + The provided credentials are not correct - + 提供的证书不正确 Mirall::Folder - + Unable to create csync-context 不能生成 csync-context - + Local folder %1 does not exist. 本地文件夹 %1 不存在。 - + %1 should be a directory but is not. %1 应为目录但并不是。 - + %1 is not readable. %1 不可读。 - + %1: %2 %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. %1 已移除。 - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. %1 已下载。 - + %1 and %2 other files have been updated. %1 和 %2 个其它文件已更新。 - + %1 has been updated. %1 names a file. %1 已更新。 - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. %1 已移动至 %2。 - + Sync Activity 同步活动 - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - 这个同步将会移除本地同步文件夹 %1 下的所有文件。 -如果你或者你的管理员在服务器上重置了你的帐号,请选择“保持文件”。如果你想移除你的数据,请选择“移除全部文件”。 - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? @@ -363,17 +356,17 @@ Are you sure you want to perform this operation? 你确定执行该操作吗? - + Remove All Files? 删除所有文件? - + Remove all files 删除所有文件 - + Keep files 保持所有文件 @@ -381,67 +374,67 @@ Are you sure you want to perform this operation? Mirall::FolderMan - + Could not reset folder state 不能重置文件夹状态 - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. 一个旧的同步日志 '%1' 被找到,但是不能被移除。请确定没有应用程序正在使用它。 - + Undefined State. 未知状态。 - + Waits to start syncing. 等待启动同步。 - + Preparing for sync. 准备同步。 - + Sync is running. 同步正在运行。 - + Server is currently not available. 服务器当前是不可用的。 - + Last Sync was successful. 最后一次同步成功。 - + Last Sync was successful, but with warnings on individual files. 上次同步已成功,不过一些文件出现了警告。 - + Setup Error. 安装失败 - + User Abort. 用户撤销。 - + Sync is paused. 同步已暂停。 - + %1 (Sync is paused) %1 (同步已暂停) @@ -468,8 +461,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder 增加目录 @@ -545,42 +538,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder 增加远程文件夹 - + Enter the name of the new folder: - + Folder was successfully created on %1. 文件夹在您的 %1 上不可用。<br/>请点此创建它。 - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. 文件夹已在同步中。 - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -597,17 +590,22 @@ Are you sure you want to perform this operation? Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + 未能收到来自服务器的 E-Tag,请检查代理/网关 - + We received a different E-Tag for resuming. Retrying next time. + 我们收到了不同的恢复 E-Tag,将在下次尝试。 + + + + Server returned wrong content-range - + Connection Timeout 连接超时 @@ -621,7 +619,7 @@ Are you sure you want to perform this operation? - General Setttings + General Settings 常规设置 @@ -659,12 +657,12 @@ Are you sure you want to perform this operation? Mirall::HttpCredentials - + Enter Password 输入密码 - + Please enter %1 password for user '%2': @@ -806,8 +804,8 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>新版本的 %1 客户端可用。</p><p><b>%2</b> 已经开放下载。已安装的版本是 %3。<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + <p>新版本的 %1 客户端可用。</p><p><b>%2</b> 已经开放下载。已安装的版本是 %3。</p> @@ -931,28 +929,28 @@ Checked items will also be deleted if they prevent a directory from being remove New Update Ready - + 新的更新已经准备就绪 A new update is about to be installed. The updater may ask for additional privileges during the process. - + 更新将会安装。安装过程可能会要求额外的权限。 Downloading version %1. Please wait... - + 正在下载版本 %1,请稍后.... Version %1 available. Restart application to start the update. - + 版本 %1 现在可用,请重启应用以开始更新。 Could not download update. Please click <a href='%1'>here</a> to download the update manually. - + 无法下载更新,请点击<a href='%1'>此处</a>手动下载更新。 @@ -961,8 +959,8 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. - 有 %1 新版本了.请使用系统更新工具升级。 + New version %1 available. Please use the system's update tool to install it. + 新版本 %1 已经可用,使用系统更新工具升级。 @@ -1075,134 +1073,134 @@ It is not advisable to use it. 连接失败 - + Update %1 server - + 更新 %1 服务器 Mirall::OwncloudSetupWizard - + Folder rename failed 文件夹更名失败 - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>本地同步目录 %1 已成功创建</b></font> - + Trying to connect to %1 at %2... 尝试连接位于 %2 的 %1... - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">成功连接到 %1:%2 版本 %3 (%4)</font><br/><br/> - + Error: Wrong credentials. 错误:密码错误。 - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> 本地同步文件夹 %1 已存在,将使用它来同步。<br/><br/> - + Creating local sync folder %1... 正在创建本地同步文件夹 %1... - + ok 成功 - + failed. 失败 - + Could not create local folder %1 不能创建本地文件夹 %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 错误:%1 - + creating folder on ownCloud: %1 在 ownCloud 创建文件夹:%1 - + Remote folder %1 created successfully. 远程目录%1成功创建。 - + The remote folder %1 already exists. Connecting it for syncing. 远程文件夹 %1 已存在。连接它以供同步。 - - + + The folder creation resulted in HTTP error code %1 创建文件夹出现 HTTP 错误代码 %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> 远程文件夹创建失败,因为提供的凭证有误!<br/>请返回并检查您的凭证。</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">远程文件夹创建失败,可能是由于提供的用户名密码不正确。</font><br/>请返回并检查它们。</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. 创建远程文件夹 %1 失败,错误为 <tt>%2</tt>。 - + A sync connection from %1 to remote directory %2 was set up. 已经设置了一个 %1 到远程文件夹 %2 的同步连接 - + Successfully connected to %1! 成功连接到了 %1! - + Connection to %1 could not be established. Please check again. 无法建立到 %1的链接,请稍后重试 - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1210,7 +1208,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1 链接向导 @@ -1240,7 +1238,7 @@ It is not advisable to use it. %1 folder <i>%1</i> is synced to local folder <i>%2</i> - + %1 文件夹 <i>%1</i> 已同步到本地文件夹 <i>%2</i> @@ -1254,22 +1252,27 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. 同步被用户撤销。 - + No E-Tag received from server, check Proxy/Gateway - + 未能收到来自服务器的 E-Tag,请检查代理/网关 We received a different E-Tag for resuming. Retrying next time. + 我们收到了不同的恢复 E-Tag,将在下次尝试。 + + + + Server returned wrong content-range - + File %1 can not be downloaded because of a local file name clash! @@ -1277,7 +1280,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1285,7 +1288,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1293,12 +1301,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1319,7 +1327,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1327,7 +1335,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1335,17 +1343,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1372,22 +1380,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. 本地文件在同步时已修改。 - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1415,62 +1423,62 @@ It is not advisable to use it. 4 - + Time 时间 - + File 文件 - + Folder 文件夹 - + Action - + 动作 - + Size 大小 - + Retry Sync 重试同步 - + Copy 复制 - + Copy the activity list to the clipboard. - + Copied to clipboard 复制到剪贴板 - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1512,27 +1520,27 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 %1 - + Account 账户 - + Activity 动态 - + General 常规 - + Network 网络 @@ -1540,12 +1548,12 @@ It is not advisable to use it. Mirall::ShibbolethCredentials - + Login Error 登录错误 - + You must sign in as user %1 @@ -1553,22 +1561,22 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 %1 - %2 @@ -1578,17 +1586,17 @@ It is not advisable to use it. <h3>Certificate Details</h3> - + <h3>证书信息</h3> Common Name (CN): - + 常用名 (CN): Subject Alternative Names: - + 主体备用名称: @@ -1598,7 +1606,7 @@ It is not advisable to use it. Organizational Unit (OU): - + 单位 (OU): @@ -1613,22 +1621,22 @@ It is not advisable to use it. Serial: - + 序列号: <h3>Issuer</h3> - + <h3>颁发者</h3> Issuer: - + 颁发者: Issued on: - + 颁发于: @@ -1638,7 +1646,7 @@ It is not advisable to use it. <h3>Fingerprints</h3> - + <h3>证书指纹</h3> @@ -1658,12 +1666,12 @@ It is not advisable to use it. <p><b>Note:</b> This certificate was manually approved</p> - + <p><b>注意:</b>此证书经手动批准</p> %1 (self-signed) - + %1 (自签署) @@ -1674,7 +1682,8 @@ It is not advisable to use it. This connection is encrypted using %1 bit %2. - + 此连接通过 %1 位的 %2 加密。 + @@ -1685,7 +1694,8 @@ It is not advisable to use it. This connection is NOT secure as it is not encrypted. - + 此连接未经过加密。 + @@ -1770,170 +1780,170 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. 成功。 - + CSync failed to create a lock file. CSync 无法创建文件锁。 - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. Csync同步失败,请确定是否有本地同步目录的读写权 - + CSync failed to write the journal file. CSync写日志文件失败 - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>csync 的 %1 插件不能加载。<br/>请校验安装!</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. 本客户端的系统时间和服务器的系统时间不一致。请在服务器和客户机上使用时间同步服务 (NTP)以让时间一致。 - + CSync could not detect the filesystem type. CSync 无法检测文件系统类型。 - + CSync got an error while processing internal trees. CSync 在处理内部文件树时出错。 - + CSync failed to reserve memory. CSync 失败,内存不足。 - + CSync fatal parameter error. CSync 致命参数错误。 - + CSync processing step update failed. CSync 处理步骤更新失败。 - + CSync processing step reconcile failed. CSync 处理步骤调和失败。 - + CSync processing step propagate failed. CSync 处理步骤传播失败。 - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>目标目录不存在。</p><p>请检查同步设置。</p> - + A remote file can not be written. Please check the remote access. 远程文件不可写,请检查远程权限。 - + The local filesystem can not be written. Please check permissions. 本地文件系统不可写。请检查权限。 - + CSync failed to connect through a proxy. CSync 未能通过代理连接。 - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. CSync 无法查询代理或服务器。 - + CSync failed to authenticate at the %1 server. CSync 于 %1 服务器认证失败。 - + CSync failed to connect to the network. CSync 联网失败。 - - A network connection timeout happend. + + A network connection timeout happened. 网络连接超时。 - + A HTTP transmission error happened. HTTP 传输错误。 - + CSync failed due to not handled permission deniend. 出于未处理的权限拒绝,CSync 失败。 - + CSync failed to access - + 访问 CSync 失败 - + CSync tried to create a directory that already exists. CSync 尝试创建了已有的文件夹。 - - + + CSync: No space on %1 server available. CSync:%1 服务器空间已满。 - + CSync unspecified error. CSync 未定义错误。 - + Aborted by the user 用户撤销 - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 Symbolic links are not supported in syncing. - + 符号链接不被同步支持。 File is listed on the ignore list. - + 文件在忽略列表中。 @@ -1941,15 +1951,61 @@ It is not advisable to use it. - + Unable to initialize a sync journal. 无法初始化同步日志 - + Cannot open the sync journal 无法打开同步日志 + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray @@ -1962,7 +2018,7 @@ It is not advisable to use it. Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1970,49 +2026,49 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in 请登录 - + Disconnected from server 已从服务器断开 - + Folder %1: %2 文件夹 %1: %2 - + No sync folders configured. 没有已配置的同步文件夹。 - + None. 无。 - + Recent Changes 最近修改 - + Open %1 folder 打开 %1 目录 - + Managed Folders: 管理的文件夹: - + Open folder '%1' - + 打开文件夹“%1” @@ -2022,7 +2078,7 @@ It is not advisable to use it. Calculating quota... - + 计算配额.... @@ -2294,27 +2350,27 @@ It is not advisable to use it. Utility - + %L1 TB %L1 TB - + %L1 GB %L1 GB - + %L1 MB %L1 MB - + %L1 kB %L1 kB - + %L1 B %L1 B @@ -2335,7 +2391,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! 如果您还没有一个 ownCloud 服务器,请到 <a href="https://owncloud.com"> 获取更多信息。 @@ -2344,12 +2400,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 <p>版本 %2。更多信息请登录 <a href="%3">%4</a></p><p><small>由 Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc 制作。<br>基于 Duncan Mac-Vicar P 的 Mirall。</small></p>%7 @@ -2438,57 +2494,57 @@ It is not advisable to use it. theme - + Status undefined 状态未定义 - + Waiting to start sync 等待同步启动 - + Sync is running 同步运行中 - + Sync Success 同步成功 - + Sync Success, some files were ignored. - + Sync Error 同步错误 - + Setup Error 关闭 - + The server is currently unavailable - + 服务器当前不可用 - + Preparing to sync 正在准备同步 - + Aborting... 正在撤销... - + Sync is paused 同步被暂停 diff --git a/translations/mirall_zh_TW.ts b/translations/mirall_zh_TW.ts index 7cc0008da..41aaf4769 100644 --- a/translations/mirall_zh_TW.ts +++ b/translations/mirall_zh_TW.ts @@ -47,7 +47,7 @@ Folders - + 資料夾 @@ -101,7 +101,7 @@ Add Folder... - + 新增資料夾… @@ -144,28 +144,28 @@ - + %1 %2 Example text: "uploading foobar.png" - + %1 (%3%) of %2 server space in use. - + No connection to %1 at <a href="%2">%3</a>. - + No %1 connection configured. 無%1連線設定 - + Sync Running 同步中 @@ -175,34 +175,34 @@ - + The syncing operation is running.<br/>Do you want to terminate it? 正在同步中<br/>你真的想要中斷? - + %1 %2 (%3 of %4) %5 left at a rate of %6/s Example text: "uploading foobar.png (1MB of 2MB) time left 2 minutes at a rate of 24Kb/s" - + %1 of %2, file %3 of %4 Total time left %5 - + Connected to <a href="%1">%2</a>. - + Connected to <a href="%1">%2</a> as <i>%3</i>. - + Currently there is no storage usage information available. @@ -233,27 +233,27 @@ Total time left %5 Mirall::ConnectionValidator - + No ownCloud account configured - + The configured server for this client is too old - + Please update to the latest server and restart the client. - + Unable to connect to %1 - + 無法連線到 %1 - + The provided credentials are not correct @@ -261,186 +261,180 @@ Total time left %5 Mirall::Folder - + Unable to create csync-context - + Local folder %1 does not exist. 本地資料夾 %1 不存在 - + %1 should be a directory but is not. 資料夾不存在, %1 必須是資料夾 - + %1 is not readable. %1 是不可讀的 - + %1: %2 - + %1: %2 - + %1 and %2 other files have been removed. %1 names a file. - + %1 has been removed. %1 names a file. - + %1 and %2 other files have been downloaded. %1 names a file. - + %1 has been downloaded. %1 names a file. - + %1 and %2 other files have been updated. - + %1 has been updated. %1 names a file. - + %1 has been renamed to %2 and %3 other files have been renamed. - + %1 has been renamed to %2. %1 and %2 name files. - + %1 has been moved to %2 and %3 other files have been moved. - + %1 has been moved to %2. - + Sync Activity - + 同步啟用 - - This sync would remove all the files in the local sync folder '%1'. -If you or your administrator have reset your account on the server, choose "Keep files". If you want your data to be removed, choose "Remove all files". - - - - + This sync would remove all the files in the sync folder '%1'. This might be because the folder was silently reconfigured, or that all the file were manually removed. Are you sure you want to perform this operation? - + Remove All Files? - + 移除所有檔案? - + Remove all files - + 移除所有檔案 - + Keep files - + 保留檔案 Mirall::FolderMan - + Could not reset folder state 無法重置資料夾狀態 - + An old sync journal '%1' was found, but could not be removed. Please make sure that no application is currently using it. 發現較舊的同步處理日誌'%1',但無法移除。請確認沒有應用程式正在使用它。 - + Undefined State. 未知狀態 - + Waits to start syncing. 等待啟動同步 - + Preparing for sync. - + 正在準備同步。 - + Sync is running. 同步執行中 - + Server is currently not available. - + Last Sync was successful. 最後一次同步成功 - + Last Sync was successful, but with warnings on individual files. - + Setup Error. 安裝失敗 - + User Abort. - + 使用者中斷。 - + Sync is paused. 同步已暫停 - + %1 (Sync is paused) - + %1 (同步暫停) @@ -449,7 +443,7 @@ Are you sure you want to perform this operation? File - + 檔案 @@ -465,8 +459,8 @@ Are you sure you want to perform this operation? Mirall::FolderWizard - - + + Add Folder 新增資料夾 @@ -542,42 +536,42 @@ Are you sure you want to perform this operation? Mirall::FolderWizardRemotePath - + Add Remote Folder - + 新增遠端資料夾 - + Enter the name of the new folder: - + Folder was successfully created on %1. 資料夾成功建立在%1 - + Failed to create the folder on %1. Please check manually. - + Choose this to sync the entire account - + This folder is already being synced. - + You are already syncing <i>%1</i>, which is a parent folder of <i>%2</i>. - + You are already syncing all your files. Syncing another folder is <b>not</b> supported. If you want to sync multiple folders, please remove the currently configured root folder sync. @@ -588,23 +582,28 @@ Are you sure you want to perform this operation? <b>Warning:</b> - + <b>警告:</b> Mirall::GETFileJob - + No E-Tag received from server, check Proxy/Gateway - + We received a different E-Tag for resuming. Retrying next time. - + + Server returned wrong content-range + + + + Connection Timeout @@ -618,23 +617,23 @@ Are you sure you want to perform this operation? - General Setttings + General Settings Launch on System Startup - + 當系統開機時啟用 Show Desktop Notifications - + 顯示桌面通知 Use Monochrome Icons - + 使用單色圖示 @@ -645,25 +644,25 @@ Are you sure you want to perform this operation? Updates - + 更新 &Restart && Update - + 重新啟動並更新 Mirall::HttpCredentials - + Enter Password - + 輸入密碼 - + Please enter %1 password for user '%2': - + 請輸入使用者 %2 的密碼 %1 : @@ -693,12 +692,12 @@ Checked items will also be deleted if they prevent a directory from being remove Could not open file - + 無法開啟檔案 Cannot write changes to '%1'. - + %1 無法寫入變更。 @@ -801,13 +800,13 @@ Checked items will also be deleted if they prevent a directory from being remove - <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.<p> - <p>%1 客戶端有新版本了。</p><p><b>%2</b> 可供下載,目前安裝的版本是 %3 。<p> + <p>A new version of the %1 Client is available.</p><p><b>%2</b> is available for download. The installed version is %3.</p> + Skip this version - + 跳過這個版本 @@ -855,7 +854,7 @@ Checked items will also be deleted if they prevent a directory from being remove : - + : @@ -865,35 +864,35 @@ Checked items will also be deleted if they prevent a directory from being remove Download Bandwidth - + 下載頻寬 Limit to - + 限制到 KBytes/s - + KBytes/s No limit - + 沒有限制 Upload Bandwidth - + 上傳頻寬 Limit automatically - + 自動限制 @@ -913,12 +912,12 @@ Checked items will also be deleted if they prevent a directory from being remove HTTP(S) proxy - + HTTP(S) 代理伺服器 SOCKS5 proxy - + SOCKS5 代理伺服器 @@ -956,7 +955,7 @@ for additional privileges during the process. - New version %1 available. Please use the systems update tool to install it. + New version %1 available. Please use the system's update tool to install it. @@ -975,17 +974,17 @@ for additional privileges during the process. Connect to %1 - + 連線到 %1 Setup local folder options - + 設定本地資料夾選項 Connect... - + 連線中... @@ -1010,12 +1009,12 @@ for additional privileges during the process. Local Sync Folder - + 本地同步資料夾 Update advanced setup - + 更新進階設定 @@ -1023,17 +1022,17 @@ for additional privileges during the process. Connect to %1 - + 連線到 %1 Enter user credentials - + 請輸入使用者憑證 Update user credentials - + 更新使用者憑證 @@ -1041,12 +1040,12 @@ for additional privileges during the process. Connect to %1 - + 連線到 %1 Setup %1 server - + 設定 %1 伺服器 @@ -1070,134 +1069,134 @@ It is not advisable to use it. - + Update %1 server - + 更新 %1 伺服器 Mirall::OwncloudSetupWizard - + Folder rename failed 重新命名資料夾失敗 - - + + <font color="green"><b>Local sync folder %1 successfully created!</b></font> <font color="green"><b>本地同步資料夾 %1 建立成功!</b></font> - + Trying to connect to %1 at %2... 嘗試連線到%1從%2 - + <font color="green">Successfully connected to %1: %2 version %3 (%4)</font><br/><br/> <font color="green">成功連線到 %1: %2 版本 %3 (%4)</font><br/><br/> - + Error: Wrong credentials. - + 錯誤: 錯誤的憑證。 - + Local sync folder %1 already exists, setting it up for sync.<br/><br/> 本地同步資料夾%1已存在, 將其設置為同步<br/><br/> - + Creating local sync folder %1... 建立本地同步資料夾 %1 - + ok ok - + failed. 失敗 - + Could not create local folder %1 無法建立本地資料夾 %1 - - + + Failed to connect to %1 at %2:<br/>%3 - + No remote folder specified! - + Error: %1 錯誤: %1 - + creating folder on ownCloud: %1 在 ownCloud 建立資料夾: %1 - + Remote folder %1 created successfully. 遠端資料夾%1建立成功! - + The remote folder %1 already exists. Connecting it for syncing. 遠端資料夾%1已存在,連線同步中 - - + + The folder creation resulted in HTTP error code %1 在HTTP建立資料夾失敗, error code %1 - + The remote folder creation failed because the provided credentials are wrong!<br/>Please go back and check your credentials.</p> 由於帳號或密碼錯誤,遠端資料夾建立失敗<br/>請檢查您的帳號密碼。</p> - + <p><font color="red">Remote folder creation failed probably because the provided credentials are wrong.</font><br/>Please go back and check your credentials.</p> <p><font color="red">遠端資料夾建立失敗,也許是因為所提供的帳號密碼錯誤</font><br/>請重新檢查您的帳號密碼</p> - - + + Remote folder %1 creation failed with error <tt>%2</tt>. 建立遠端資料夾%1發生錯誤<tt>%2</tt>失敗 - + A sync connection from %1 to remote directory %2 was set up. 從%1到遠端資料夾%2的連線已建立 - + Successfully connected to %1! 成功連接到 %1 ! - + Connection to %1 could not be established. Please check again. 無法建立連線%1, 請重新檢查 - + Can't remove and back up the folder because the folder or a file in it is open in another program. Please close the folder or file and hit retry or cancel the setup. @@ -1205,7 +1204,7 @@ It is not advisable to use it. Mirall::OwncloudWizard - + %1 Connection Wizard %1連線精靈 @@ -1249,12 +1248,12 @@ It is not advisable to use it. Mirall::PropagateDownloadFileLegacy - + Sync was aborted by user. - + No E-Tag received from server, check Proxy/Gateway @@ -1264,7 +1263,12 @@ It is not advisable to use it. - + + Server returned wrong content-range + + + + File %1 can not be downloaded because of a local file name clash! @@ -1272,7 +1276,7 @@ It is not advisable to use it. Mirall::PropagateDownloadFileQNAM - + File %1 can not be downloaded because of a local file name clash! @@ -1280,7 +1284,12 @@ It is not advisable to use it. Mirall::PropagateItemJob - + + ; Restoration Failed: + + + + A file or directory was removed from a read only share, but restoring failed: %1 @@ -1288,12 +1297,12 @@ It is not advisable to use it. Mirall::PropagateLocalMkdir - + Attention, possible case sensitivity clash with %1 - + could not create directory %1 @@ -1314,7 +1323,7 @@ It is not advisable to use it. Mirall::PropagateLocalRename - + File %1 can not be renamed to %2 because of a local file name clash @@ -1322,7 +1331,7 @@ It is not advisable to use it. Mirall::PropagateRemoteRemove - + The file has been removed from a read only share. It was restored. @@ -1330,17 +1339,17 @@ It is not advisable to use it. Mirall::PropagateRemoteRename - + This folder must not be renamed. It is renamed back to its original name. - + This folder must not be renamed. Please name it back to Shared. - + The file was renamed but is part of a read only share. The original file was restored. @@ -1367,22 +1376,22 @@ It is not advisable to use it. Mirall::PropagateUploadFileQNAM - + The file was edited locally but is part of a read only share. It is restored and your edit is in the conflict file. - + The local file was removed during sync. - + Local file changed during sync. - + The server did not acknowledge the last chunk. (No e-tag were present) @@ -1397,75 +1406,75 @@ It is not advisable to use it. Sync Activity - + 同步啟用 3 - + 3 4 - + 4 - + Time 時間 - + File - + 檔案 - + Folder 資料夾 - + Action - + 動作 - + Size 大小 - + Retry Sync - + 重試同步 - + Copy 複製 - + Copy the activity list to the clipboard. - + Copied to clipboard 複製至剪貼簿中 - + The sync status has been copied to the clipboard. - + Currently no files are ignored because of previous errors. - + %1 files are ignored because of previous errors. Try to sync these again. @@ -1481,7 +1490,7 @@ It is not advisable to use it. %1 - + %1 @@ -1496,7 +1505,7 @@ It is not advisable to use it. Network - + 網路 @@ -1507,40 +1516,40 @@ It is not advisable to use it. Mirall::SettingsDialogMac - + %1 - + %1 - + Account 帳號 - + Activity 活動 - + General 一般 - + Network - + 網路 Mirall::ShibbolethCredentials - + Login Error - + You must sign in as user %1 @@ -1548,24 +1557,24 @@ It is not advisable to use it. Mirall::ShibbolethWebView - + %1 - Authenticate - + Reauthentication required - + Your session has expired. You need to re-login to continue to use the client. - + %1 - %2 - + %1 - %2 @@ -1598,7 +1607,7 @@ It is not advisable to use it. State/Province: - + 州或省: @@ -1608,7 +1617,7 @@ It is not advisable to use it. Serial: - + 序號: @@ -1628,7 +1637,7 @@ It is not advisable to use it. Expires on: - + 過期於: @@ -1638,7 +1647,7 @@ It is not advisable to use it. MD 5: - + MD 5: @@ -1648,7 +1657,7 @@ It is not advisable to use it. SHA-1: - + SHA-1: @@ -1663,7 +1672,7 @@ It is not advisable to use it. %1 - + %1 @@ -1674,7 +1683,7 @@ It is not advisable to use it. Certificate information: - + 憑證資訊: @@ -1765,158 +1774,158 @@ It is not advisable to use it. Mirall::SyncEngine - + Success. 成功。 - + CSync failed to create a lock file. CSync 無法建立文件鎖 - + CSync failed to load or create the journal file. Make sure you have read and write permissions in the local sync directory. - + CSync failed to write the journal file. - + <p>The %1 plugin for csync could not be loaded.<br/>Please verify the installation!</p> <p>用於csync的套件%1</p> - + The system time on this client is different than the system time on the server. Please use a time synchronization service (NTP) on the server and client machines so that the times remain the same. 本客戶端的系統時間和伺服器系統時間不一致,請在伺服器與客戶端上使用時間同步服務(NTP)讓時間保持一致 - + CSync could not detect the filesystem type. CSync 無法偵測檔案系統的類型 - + CSync got an error while processing internal trees. CSync 處理內部資料樹時發生錯誤 - + CSync failed to reserve memory. CSync 無法取得記憶體空間。 - + CSync fatal parameter error. CSync 參數錯誤。 - + CSync processing step update failed. CSync 處理步驟 "update" 失敗。 - + CSync processing step reconcile failed. CSync 處理步驟 "reconcile" 失敗。 - + CSync processing step propagate failed. CSync 處理步驟 "propagate" 失敗。 - + <p>The target directory does not exist.</p><p>Please check the sync setup.</p> <p>目標資料夾不存在</p><p>請檢查同步設定</p> - + A remote file can not be written. Please check the remote access. 遠端檔案無法寫入,請確認遠端存取權限。 - + The local filesystem can not be written. Please check permissions. 本地檔案系統無法寫入,請確認權限。 - + CSync failed to connect through a proxy. CSync 透過代理伺服器連線失敗。 - + CSync could not authenticate at the proxy. - + CSync failed to lookup proxy or server. CSync 查詢代理伺服器或伺服器失敗。 - + CSync failed to authenticate at the %1 server. CSync 於伺服器 %1 認證失敗。 - + CSync failed to connect to the network. CSync 無法連接到網路。 - - A network connection timeout happend. - 網路連線逾時。 + + A network connection timeout happened. + - + A HTTP transmission error happened. HTTP 傳輸錯誤。 - + CSync failed due to not handled permission deniend. CSync 失敗,由於未處理的存取被拒。 - + CSync failed to access - + CSync tried to create a directory that already exists. CSync 試圖建立一個已經存在的目錄。 - - + + CSync: No space on %1 server available. CSync:伺服器 %1 沒有可用空間。 - + CSync unspecified error. CSync 未知的錯誤。 - + Aborted by the user - + An internal error number %1 happened. - + The item is not synced because of previous errors: %1 @@ -1936,28 +1945,74 @@ It is not advisable to use it. - + Unable to initialize a sync journal. - + Cannot open the sync journal + + + Not allowed because you don't have permission to add sub-directories in that directory + + + + + Not allowed because you don't have permission to add parent directory + + + + + Not allowed because you don't have permission to add files in that directory + + + + + Not allowed to upload this file because it is read-only on the server, restoring + + + + + + Not allowed to remove, restoring + + + + + Move not allowed, item restored + + + + + Move not allowed because %1 is read-only + + + + + the destination + + + + + the source + + Mirall::Systray %1: %2 - + %1: %2 Mirall::Theme - + <p>Version %1 For more information please visit <a href='%2'>%3</a>.</p><p>Copyright ownCloud, Inc.<p><p>Distributed by %4 and licensed under the GNU General Public License (GPL) Version 2.0.<br>%5 and the %5 logo are registered trademarks of %4 in the<br>United States, other countries, or both.</p> @@ -1965,54 +2020,54 @@ It is not advisable to use it. Mirall::ownCloudGui - + Please sign in - + 請登入 - + Disconnected from server - + Folder %1: %2 資料夾 %1: %2 - + No sync folders configured. 尚未指定同步資料夾 - + None. - + 無。 - + Recent Changes - + Open %1 folder 開啟%1資料夾 - + Managed Folders: 管理的資料夾: - + Open folder '%1' - + 開啟 %1 資料夾 Open %1 in browser - + 瀏覽器中開啟 %1 @@ -2022,17 +2077,17 @@ It is not advisable to use it. Unknown status - + 未知狀態 Settings... - + 設定… Details... - + 細節… @@ -2042,22 +2097,22 @@ It is not advisable to use it. Quit %1 - + 離開 %1 Sign in... - + 登入中... Sign out - + 登出 Quota n/a - + 無配額 @@ -2107,7 +2162,7 @@ It is not advisable to use it. &Local Folder - + 本地資料夾(&L) @@ -2117,12 +2172,12 @@ It is not advisable to use it. &Keep local data - + 保留本地資料(&K) <small>Syncs your existing data to new location.</small> - + <small>將現有的資料同步至新地點。</small> @@ -2132,7 +2187,7 @@ It is not advisable to use it. &Start a clean sync - + 開始一個全新的同步 @@ -2142,7 +2197,7 @@ It is not advisable to use it. Status message - + 狀態訊息 @@ -2155,17 +2210,17 @@ It is not advisable to use it. &Username - + 使用者名稱 &Password - + 密碼 Error Label - + 錯誤標籤 @@ -2289,29 +2344,29 @@ It is not advisable to use it. Utility - + %L1 TB - + %L1 TB - + %L1 GB - + %L1 GB - + %L1 MB - + %L1 MB - + %L1 kB - + %L1 kB - + %L1 B - + %L1 B @@ -2330,7 +2385,7 @@ It is not advisable to use it. ownCloudTheme - + If you don't have an ownCloud server yet, see <a href="https://owncloud.com">owncloud.com</a> for more info. Top text in setup wizard. Keep short! 若您尚未擁有ownCloud伺服器,可參閱<a href="https://owncloud.com">owncloud.com</a> 來獲得更多資訊。 @@ -2339,12 +2394,12 @@ It is not advisable to use it. ownCloudTheme::about() - + <p><small>Built from Git revision <a href="%1">%2</a> on %3, %4 using Qt %5.</small></p> - + <p>Version %2. For more information visit <a href="%3">%4</a></p><p><small>By Klaas Freitag, Daniel Molkentin, Jan-Christoph Borchardt, ownCloud Inc.<br>Based on Mirall by Duncan Mac-Vicar P.</small></p>%7 @@ -2369,7 +2424,7 @@ It is not advisable to use it. Moved to %1 - + 搬移到 %1 @@ -2395,12 +2450,12 @@ It is not advisable to use it. downloading - + 下載中 uploading - + 上傳中 @@ -2433,59 +2488,59 @@ It is not advisable to use it. theme - + Status undefined 未定義的狀態 - + Waiting to start sync 等待開始同步 - + Sync is running 同步中 - + Sync Success 同步完成 - + Sync Success, some files were ignored. - + Sync Error - + 同步失敗 - + Setup Error 安裝錯誤 - + The server is currently unavailable - + 伺服器目前無法使用。 - + Preparing to sync - + 正在準備同步。 - + Aborting... - + 中斷中… - + Sync is paused - + 同步已暫停 \ No newline at end of file