🛠️ add renexmoe-tw527e-edition v1.1.1, improve Chinese translate

🛠️ add renexmoe-tw527e-edition v1.1.1, improve Chinese translate
pull/590/head
TW527E 2022-05-18 05:36:38 +08:00
parent be07cced24
commit 0d7fbe9973
3 changed files with 1717 additions and 76 deletions

View File

@ -117,7 +117,7 @@ $constStr = [
'hideFunctionalityFile' => 'a switch, 0 or 1. if 1, some file will not show in list to guest, like readme.md',
'passfile' => 'The password of folder(& its childrens) will save in this file.',
'domainforproxy' => 'Will replace the https://xxxxx-my.sharepoint.com with this value.Add &Origindomain=xxxxx-my.sharepoint.com at last',
'public_path' => 'Show this Onedrive dir when through the long url of API Gateway.',
'public_path' => 'Show this OneDrive dir when through the long url of API Gateway.',
'sitename' => 'sitename',
],
'zh-cn' => [
@ -127,8 +127,8 @@ $constStr = [
'customScript' => '<script>,在所有页都会存在,例如放一个http跳转https',
'customCss' => '<style>,在<head>最后面',
'customTheme' => 'html格式的主题的url',
'referrer' => '只有这些域名能引用本站资源。格式为a1.com|b1.com',
'domain_path' => '使用多个自定义域名时,指定每个域名看到的目录。格式为a1.com:/dirto/path1|b1.com:/path2。',
'referrer' => '只有这些域名能引用本站资源。格式为 a1.com|b1.com',
'domain_path' => '使用多个自定义域名时,指定每个域名看到的目录。格式为 a1.com:/dirto/path1|b1.com:/path2。',
'diskname' => '这个盘你想显示什么名称。',
'diskDescription' => '对这个盘的一些描述,随便写,代码不引用这个。',
'disktag' => '一个标签用于保存配置多盘时会显示在url中。',
@ -142,7 +142,7 @@ $constStr = [
'useBasicAuth' => '一个开关,如果为 1加密目录将弹出用户名密码窗口不会显示主题自带的输入密码页面。',
'background' => '设置一个url作为背景。',
'backgroundm' => '设置一个url作为手机端用的背景。',
'forceHttps' => '一个开关0或1。如果设置为1会强制跳https',
'forceHttps' => '一个开关0或1。如果设置为1会强制跳 https',
'fileConduitCacheTime' => '填数字单位是小时如果设置小于1M(或fileConduitSize)的小文件会从程序通过然后缓存在浏览器不然默认302跳微软',
'fileConduitSize' => '填数字单位是M(建议4M以下)如果设置小于这个值的小文件会从程序通过然后缓存在浏览器不然默认302跳微软',
'theme' => '为游客选择一个主题。',
@ -150,33 +150,42 @@ $constStr = [
'guestup_path' => '设置游客上传路径(图床路径),不设置这个值时该目录内容会正常列文件出来,设置后只有上传界面,不显示其中文件(登录后显示)。',
'hideFunctionalityFile' => '一个开关0 或 1。如果 1, 功能文件不列表给游客看但它的功能正常比如readme.md',
'passfile' => '自定义密码文件的名字,可以是\'pppppp\',也可以是\'aaaa.txt\'等等;列目录时不会显示,只有知道密码才能查看或下载此文件。密码是这个文件的内容,可以空格、可以中文;',
'domainforproxy' => '会将https://xxxxx-my.sharepoint.com替换成这个值在目标需要自己设置反代。会加上&Origindomain=原域名',
'domainforproxy' => '会将 \'https://xxxxx-my.sharepoint.com\' 替换成这个值,在目标需要自己设置反代。会加上&Origindomain=原域名',
'public_path' => '使用API长链接访问时显示网盘文件的路径不设置时默认为根目录。',
'sitename' => '网站的名称',
],
'zh-tw' => [
'admin' => '管理密碼,不設定密碼將不顯示登入頁面且無法登入。',
'adminloginpage' => '如果設定,登入按鈕及頁面隱藏。管理登入的頁面不再是\'?login=admin\',而是\'?login=此設置的值\'。',
'autoJumpFirstDisk' => '用於多盤如果設1將會自動跳到第一個盤。',
'customScript' => '<script>,在所有頁都會存在,例如放一個http跳轉https',
'customCss' => '<style>,在<head>最後面',
'customTheme' => 'html格式的主題的url',
'referrer' => '',
'domain_path' => '使用多個自訂域名時指定每個域名看到的目錄。格式為a1.com:/dirto/path1|b1.com:/path2。',
'diskname' => '這個盤你想顯示什麼名稱。',
'disktag' => '一個標籤用於儲存配置多盤時會顯示在url中。',
'disableShowThumb' => '如果填 1, ‘顯示縮略’按鈕將被隱藏。',
'disableChangeTheme' => '如果填 1, 主題選擇切換將被隱藏',
'downloadencrypt' => '0 或 1。如果 1, 那加密目錄內的文件可以不需要密碼就能下載。',
'background' => '設定一個url作為背景。',
'backgroundm' => '設定一個url作為手機用的背景。',
'theme' => '为遊客選擇一個主題。',
'timezone' => '設定預設時區。',
'guestup_path' => '設定遊客上傳路徑(圖床路徑),不設定這個值時該目錄內容會正常列文件出來,設定後只有上傳介面,不顯示其中文件(登入後顯示)。',
'hideFunctionalityFile' => '0 或 1。如果 1, 某些文件不列表給遊客看但它的功能正常比如readme.md',
'passfile' => '自訂密碼文件的名字,可以是\'pppppp\',也可以是\'aaaa.txt\'等等;列目錄時不會顯示,只有知道密碼才能查看或下載此文件。密碼是這個文件的內容,可以空格、可以中文;',
'domainforproxy' => '會將https://xxxxx-my.sharepoint.com取代成這個值在目標需要自己設定反代。會加上&Origindomain=原域名',
'public_path' => '使用API長連結訪問時顯示網路硬碟檔案的路徑不設定時預設為根目錄。',
'admin' => '管理密碼,不設定密碼將不顯示登入頁面且無法登入',
'adminloginpage' => '如果設定,登入按鈕及頁面隱藏。管理登入的頁面不再是 \'?login=admin\',而是 \'?login=此設置的值\'',
'autoJumpFirstDisk' => '用於多盤如果設1將會自動跳到第一個盤',
'customScript' => '<script>,自訂 Javascript在所有頁都會存在例如: http 跳轉 https',
'customCss' => '<style>,自訂 CSS在 <head> 最後面',
'customTheme' => 'html 格式主題的網址',
'referrer' => '只有這些域名能引用本站資源,格式為 a1.com|b1.com',
'domain_path' => '使用多個自定義域名時,指定每個域名看到的目錄,格式為 a1.com:/dirto/path1|b1.com:/path2',
'diskname' => '這個盤你想顯示什麼名稱',
'diskDescription' => '對這個盤的一些描述,隨便寫,代碼不引用這個',
'disktag' => '用於保存配置,多盤時會顯示在網址中',
'disableShowThumb' => '如果填 1 \'顯示縮略\' 按鈕將被隱藏',
'disableChangeTheme' => '如果填 1則不會顯示主題選擇按鈕',
'downloadencrypt' => '如果填 1, 那加密目錄內的檔案可以不需要密碼就能下載',
'globalHeadOmfUrl' => '從網址獲取文本,當成 head.omf 顯示在每一頁',
'globalHeadMdUrl' => '從網址獲取文本,當成 head.md 顯示在每一頁',
'globalReadmeMdUrl' => '從網址獲取文本,當成 readme.md 顯示在每一頁',
'globalFootOmfUrl' => '從網址獲取文本,當成 foot.omf 顯示在每一頁',
'useBasicAuth' => '如果填 1加密目錄將彈出用戶名密碼窗口不會顯示主題自帶的輸入密碼頁面',
'background' => '設置一個網址作為背景',
'backgroundm' => '設置一個網址作為手機端用的背景',
'forceHttps' => '如果填 1會強制跳 https',
'fileConduitCacheTime' => '填數字,單位為小時,如果設置,小於 fileConduitSize之設定值 的檔案會透過程序緩存在瀏覽器,否則默認跳 302錯誤 並跳轉至 Microsoft',
'fileConduitSize' => '預設 1MB填數字單位是 MB (建議 4MB 以下),如果設置,小於這個值的檔案會透過程序緩存在瀏覽器,否則默認跳 302錯誤 並跳轉至 Microsoft',
'theme' => '為遊客選擇一個主題',
'timezone' => '設置默認時區',
'guestup_path' => '設置遊客上傳路徑(圖床路徑),不設置這個值時該目錄內容會正常列文件出來,設置後只有上傳界面,不顯示其中文件(登入後顯示)',
'hideFunctionalityFile' => '如果填 1遊客將無法於列表內查看到帶功能檔案但被隱藏檔案功能正常例如: README.md',
'passfile' => '自定義密碼檔案的名字,可以是 \'pppppp\',也可以是 \'aaaa.txt\'等等,列表將不顯示此檔案,只有知道密碼才能查看或下載此文件,密碼為此檔案內容,可空格、中文;',
'domainforproxy' => '會將 \'https://xxxxx-my.sharepoint.com\' 替換成這個值,在目標需要自己設置反代。會加上 \'&Origindomain=原域名\'',
'public_path' => '使用 API 長連接訪問時,顯示網盤文件的路徑,不設置時默認為根目錄。',
'sitename' => '網站的名稱',
],
'ja' => [
@ -199,7 +208,7 @@ $constStr = [
'timezone' => 'プリセットタイムゾーンを設定します。',
'guestup_path' => 'マップベッドのパスを設定します。この値が設定されていない場合、ディレクトリの内容は通常ファイルにリストされ、設定後はアップロードインターフェイスのみが表示されます。',
'hideFunctionalityFile' => '0または1です。もし1ならば、いくつかの書類はリストで観光客に見せませんが、その機能は正常です。readme.md',
'passfile' => 'カスタムパスワードファイルの名前は、\'pppppp \'、\'aaaa.txt \'などの場合があります。ディレクトリをリストするときには表示されません。パスワードを知っている場合にのみ、このファイルを表示またはダウンロードできます。 パスワードはこのファイルの内容であり、スペースまたは漢字を使用できます。',
'passfile' => 'カスタムパスワードファイルの名前は、\'pppppp \'、\'aaaa.txt \'などの場合があります。ディレクトリをリストするときには表示されません。パスワードを知っている場合にのみ、このファイルを表示またはダウンロードできます。パスワードはこのファイルの内容であり、スペースまたは漢字を使用できます。',
'domainforproxy' => '会将https://xxxy-my.sharepoint.comこの値に代えて、目標には自分で反世代を設定する必要があります。に加えて&amp;Originndomain=元のドメイン名',
'public_path' => 'APIのロングリンクアクセスを使用する場合、ネットワークディスクファイルのパスが表示されますが、設定されていない場合はデフォルトでルートディレクトリになり。',
'sitename' => 'ウェブサイト名',
@ -240,7 +249,7 @@ $constStr = [
'background' => 'تنظیم عکس پشت زمینه به صورت url یا قرار دادن بک گراند به صورت دستی در مسیر نشان داده شده.',
'guestup_path' => 'قبل از تنظیم این گزینه ، فایل آپلود guest را تنظیم کنید ، پرونده های موجود در این حالت به صورت عادی نشان داده می شوند.',
'passfile' => 'رمز عبور dir در این فایل ذخیره می شود.',
'public_path' => 'این مسیر Onedrive را هنگامی که از طریق آدرس طولانی API Gateway استفاده می کنید ، نشان دهید. فایل های نمایش عمومی کمتر از خصوصی.',
'public_path' => 'این مسیر OneDrive را هنگامی که از طریق آدرس طولانی API Gateway استفاده می کنید ، نشان دهید. فایل های نمایش عمومی کمتر از خصوصی.',
'sitename' => 'نام سایت',
],
'ar-sa' => [
@ -334,8 +343,8 @@ $constStr = [
],
'SetpassfileBfEncrypt' => [
'en-us' => 'Set \'passfile\' in Environments before encrypt',
'zh-cn' => '先设置passfile才能加密',
'zh-tw' => '先設定passfile才能加密',
'zh-cn' => '先设置 passfile 才能加密',
'zh-tw' => '先設定 passfile 才能加密',
'ja' => '最初に暗号化する変数にパスファイルを設定します',
'ko-kr' => '암호화하기 전에 환경 변수에 패스 파일을 설정하십시오',
'fa' => 'قبل از رمزگذاری \"passfile \" را در محیط تنظیم کنید',
@ -426,6 +435,7 @@ $constStr = [
'CopyDisk' => [
'en-us' => 'Copy this Disk',
'zh-cn' => '复制此盘',
'zh-tw' => '複製此盤',
],
'RenameDisk' => [
'en-us' => 'Rename Disk Tag',
@ -436,6 +446,7 @@ $constStr = [
'ChangeDrivetype' => [
'en-us' => 'Change',
'zh-cn' => '切换',
'zh-tw' => '切換',
],
'AddDisk' => [
'en-us' => 'Add Disk',
@ -538,8 +549,8 @@ $constStr = [
],
'FileNotSupport' => [
'en-us' => 'File not support preview.',
'zh-cn' => '文件格式不支持预览',
'zh-tw' => '檔案格式不支援預覽',
'zh-cn' => '此种文件格式不支持预览',
'zh-tw' => '此種檔案格式不支援預覽',
'ja' => 'ファイル形式はプレビューをサポートしていません',
'ko-kr' => '파일 형식은 미리보기를 지원하지 않습니다',
'fa' => 'پیش نمایش برای این فایل پشتیبانی نمی شود.',
@ -638,7 +649,7 @@ $constStr = [
'CannotMove' => [
'en-us' => 'Can not Move!',
'zh-cn' => '不能移动!',
'zh-tw' => '不能移動!',
'zh-tw' => '無法移動!',
'ja' => '動かない!',
'ko-kr' => '움직일 수 없어!',
'fa' => 'نمی‌تواند منتقل شود!',
@ -683,7 +694,7 @@ $constStr = [
'UploadFile' => [
'en-us' => 'Upload File(s)',
'zh-cn' => '上传文件',
'zh-tw' => '上傳文件',
'zh-tw' => '上傳檔案',
'ja' => 'ファイルをアップロード',
'ko-kr' => '문건 을 업로드 하 다',
'fa' => 'بارگذاری پرونده',
@ -701,7 +712,7 @@ $constStr = [
'FileSelected' => [
'en-us' => 'Select File',
'zh-cn' => '选择文件',
'zh-tw' => '選擇文件',
'zh-tw' => '選擇檔案',
'ja' => 'ファイルを選択',
'ko-kr' => '파일 선택',
'fa' => 'انتخاب فایل',
@ -710,7 +721,7 @@ $constStr = [
'NoFileSelected' => [
'en-us' => 'Not Select File',
'zh-cn' => '没有选择文件',
'zh-tw' => '沒有選擇文件',
'zh-tw' => '沒有選擇檔案',
'ja' => 'ファイルが選択されていません',
'ko-kr' => '선택된 파일이 없습니다',
'fa' => 'فایل را انتخاب نکنید',
@ -735,7 +746,7 @@ $constStr = [
'ar-sa' => 'مغلق',
],
'InputPasswordUWant' => [
'en-us' => 'Input Password you Want',
'en-us' => 'Input Password you want',
'zh-cn' => '输入想要设置的密码',
'zh-tw' => '輸入想要設置的密碼',
'ja' => '設定するパスワードを入力してください',
@ -818,7 +829,7 @@ $constStr = [
'UpFileTooLarge' => [
'en-us' => 'The File is too Large!',
'zh-cn' => '文件过大,终止上传。',
'zh-tw' => '文件過大,終止上傳。',
'zh-tw' => '檔案過大,停止上傳。',
'ja' => '超えると、アップロードは終了します。',
'ko-kr' => '파일이 너무 커서 업로드가 종료되었습니다.',
'fa' => 'فایل خیلی بزرگ است!',
@ -937,8 +948,8 @@ $constStr = [
],
'MayinEnv' => [
'en-us' => 'The \'Drive_ver\' may in Config',
'zh-cn' => 'Drive_ver应该已经写入',
'zh-tw' => 'Drive_ver應該已經寫入',
'zh-cn' => 'Drive_ver 应该已经写入',
'zh-tw' => 'Drive_ver 應該已經寫入',
'ja' => 'Drive_verは環境変数に書き込まれている必要があります',
'ko-kr' => 'Drive_verが書き込まれている必要があります',
'fa' => 'The \'Drive_ver\' may in Config',
@ -955,7 +966,7 @@ $constStr = [
],
'WaitJumpIndex' => [
'en-us' => 'Wait 5s jump to Home page',
'zh-cn' => '等5s跳到首页',
'zh-cn' => '等5跳到首页',
'zh-tw' => '等5秒跳到首頁',
'ja' => '5秒待ってホームページにジャンプします',
'ko-kr' => '5 초 동안 홈페이지로 이동',
@ -964,8 +975,8 @@ $constStr = [
],
'JumptoOffice' => [
'en-us' => 'Login Office and Get a refresh_token',
'zh-cn' => '跳转到Office登录获取refresh_token',
'zh-tw' => '跳轉到Office登入獲取refresh_token',
'zh-cn' => '跳转到 Office登录获取 refresh_token',
'zh-tw' => '跳轉到 Office登入獲取 refresh_token',
'ja' => 'Officeにジャンプしてログインし、refresh_tokenを取得します',
'ko-kr' => '사무실로 이동하여 로그인하여 refresh_token을 받으십시오.',
'fa' => 'وارد Office شوید و یک refresh_token دریافت کنید',
@ -990,7 +1001,7 @@ $constStr = [
'ar-sa' => 'عرض الاسم',
],
'DriveVerMS' => [
'en-us' => 'Onedrive, Onedrive for business',
'en-us' => 'OneDrive, OneDrive for business',
'zh-cn' => '国际版(商业版与个人版)',
'zh-tw' => '國際版(商業版與個人版)',
'ja' => '国際版(商業版と個人版)',
@ -999,13 +1010,13 @@ $constStr = [
'ar-sa' => 'الأعمال التجارية الدولية الطبعة الطبعة الشخصية',
],
'DriveVerCN' => [
'en-us' => 'Onedrive in China',
'en-us' => 'OneDrive in China',
'zh-cn' => '世纪互联版',
'zh-tw' => '世紀互聯版(中國版Onedrive',
'ja' => '中国のOnedrive',
'ko-kr' => '중국 Onedrive',
'fa' => 'Onedrive در چین',
'ar-sa' => 'Onedrive النسخة الصينية',
'zh-tw' => '世紀互聯版(中國版 OneDrive',
'ja' => '中国のOneDrive',
'ko-kr' => '중국 OneDrive',
'fa' => 'OneDrive در چین',
'ar-sa' => 'OneDrive النسخة الصينية',
],
'DriveVerShareurl' => [
'en-us' => 'A share link of a folder',
@ -1013,14 +1024,14 @@ $constStr = [
'zh-tw' => '共享連結',
],
'UseShareLink' => [
'en-us' => 'Share a folder in Onedrive (enable EDIT for everyone), input the link url below.',
'zh-cn' => '<font color="red">只有国际版能用,</font>对一个Onedrive文件夹共享,允许所有人编辑,然后将共享链接填在下方',
'zh-tw' => '對一個Onedrive資料夾共享,允許所有人編輯,然後將共享連結填在下方',
'en-us' => 'Share a folder in OneDrive (enable EDIT for everyone), input the link url below.',
'zh-cn' => '<font color="red">只有国际版能用,</font>对一个 OneDrive 文件夹共享,允许所有人编辑,然后将共享链接填在下方',
'zh-tw' => '對一個 OneDrive 資料夾共享,允許所有人編輯,然後將共享連結填在下方',
],
'CustomIdSecret' => [
'en-us' => 'Use custom client id & secret instead of OneManager default',
'zh-cn' => '用自己申请的应用ID与机密不用OneManager默认的',
'zh-tw' => '用自己申請的應用ID與機密不用OneManager預設的',
'zh-cn' => '用自己申请的应用ID与机密不用 OneManager 默认的',
'zh-tw' => '用自己申請的應用ID與機密不用 OneManager 預設的',
'ja' => 'アプリケーションIDとシークレットを自分で申請する',
'ko-kr' => '응용 프로그램 ID 및 비밀 신청',
'fa' => 'به طور پیش فرض اما از شناسه برنامه و سکرت استفاده کنید',
@ -1035,20 +1046,20 @@ $constStr = [
'ar-sa' => 'تطبيق الهوية والسرية',
],
'UseSharepointInstead' => [
'en-us' => 'Use space in Sharepoint website instead of Onedrive',
'zh-cn' => '使用Sharepoint网站的空间不使用Onedrive',
'zh-tw' => '使用Sharepoint網站的空間不使用Onedrive',
'en-us' => 'Use space in Sharepoint website instead of OneDrive',
'zh-cn' => '使用 Sharepoint 网站的空间,不使用 OneDrive',
'zh-tw' => '使用 Sharepoint 網站的空間,不使用 OneDrive',
],
'GetSharepointSiteAddress' => [
'en-us' => 'Login office.com and click the SharePoint, create a website or find an exist website, input the Site address below',
'zh-cn' => '登录office.com点击Sharepoint创建一个网站或使用原有网站然后将它的站点地址填在下方',
'zh-tw' => '登入office.com點擊Sharepoint建立一個網站或使用原有網站然後將它的站點地址填在下方',
'zh-cn' => '登录 office.com点击 Sharepoint创建一个网站或使用原有网站然后将它的站点地址填在下方',
'zh-tw' => '登入 office.com點擊 Sharepoint建立一個網站或使用原有網站然後將它的站點地址填在下方',
],
'InputSharepointSiteAddress' => [
'en-us' => 'https://xxxxx.sharepoint.com/sites(teams)/{name}',
],
'TagFormatAlert' => [
'en-us' => 'Tag must start with a letter, end with a letter or digit and can only contain lowercase letters, digits, and dashes at least 2 letters!',
'en-us' => 'Tag must start with a letter, end with a letter or digit and can only contain lowercase letters, digits, and dashes at least 2 letters!',
'zh-cn' => '标签只能以字母开头以字母或数字结尾至少2位',
'zh-tw' => '標籤只能以字母開頭以字母或數字結尾至少2位',
'ja' => 'タグは、文字で始まり、文字または数字で終わる必要があります。少なくとも2つ',
@ -1066,18 +1077,18 @@ $constStr = [
'ar-sa' => 'انقر فوق بدء الإعداد',
],
'LogintoBind' => [
'en-us' => 'then login and bind your onedrive in setup',
'zh-cn' => '然后登录后在设置中绑定你的onedrive。',
'zh-tw' => '然後登入後在設定中綁定你的onedrive。',
'ja' => '次に、ログインして、設定でonedriveをバインドします。',
'ko-kr' => '그런 다음 로그인하여 onedrive를 설정에 바인딩하십시오.',
'fa' => 'پس از آن وارد سیستم شوید و تنظیمات خود را در onedrive متصل کنید',
'en-us' => 'then login and bind your OneDrive in setup',
'zh-cn' => '然后登录后在设置中绑定你的 OneDrive。',
'zh-tw' => '然後登入後在設定中綁定你的 OneDrive。',
'ja' => '次に、ログインして、設定でOneDriveをバインドします。',
'ko-kr' => '그런 다음 로그인하여 OneDrive를 설정에 바인딩하십시오.',
'fa' => 'پس از آن وارد سیستم شوید و تنظیمات خود را در OneDrive متصل کنید',
'ar-sa' => 'ثم قم بتسجيل الدخول بعد ربط أحد السائقين في الإعدادات',
],
'MakesuerWriteable' => [
'en-us' => 'Plase make sure the config.php is writeable. run writeable.sh.',
'zh-cn' => '确认config.php可写。',
'zh-tw' => '確認config.php可寫。',
'zh-cn' => '确认 config.php 可写。',
'zh-tw' => '確認 config.php 可寫。',
'ja' => 'config.phpが書き込み可能であることを確認してください。',
'ko-kr' => 'config.php가 쓰기 가능한지 확인하십시오.',
'fa' => 'اطمینان حاصل کنید که config.php قابل نوشتن است. writeable.sh را اجرا کنید.',
@ -1136,7 +1147,7 @@ $constStr = [
'RefreshCache' => [
'en-us' => 'Refresh Cache of Current Folder',
'zh-cn' => '刷新当前目录的缓存',
'zh-tw' => '重新整理前資料夾快取',
'zh-tw' => '重新整理前資料夾快取',
'ja' => 'キャッシュを再構築',
'ko-kr' => '캐시 플러시',
'fa' => 'رفرش cache',
@ -1144,8 +1155,8 @@ $constStr = [
],
'CannotOneKeyUpate' => [
'en-us' => 'Can not update by a click! run update.sh',
'zh-cn' => '不能一键更新,可以运行update.sh',
'zh-tw' => '不能一鍵更新,可以執行update.sh',
'zh-cn' => '不能一键更新,可以运行 update.sh',
'zh-tw' => '不能一鍵更新,可以執行 update.sh',
],
'QueryBranchs' => [
'en-us' => 'Query Branchs',
@ -1155,7 +1166,7 @@ $constStr = [
'OldPassword' => [
'en-us' => 'Old Password',
'zh-cn' => '旧密码',
'zh-tw' => '密碼',
'zh-tw' => '密碼',
],
'NewPassword' => [
'en-us' => 'New Password',
@ -1180,7 +1191,7 @@ $constStr = [
'export' => [
'en-us' => 'export',
'zh-cn' => '导出',
'zh-tw' => '出',
'zh-tw' => '出',
],
'config' => [
'en-us' => 'config',
@ -1190,7 +1201,7 @@ $constStr = [
'import' => [
'en-us' => 'import',
'zh-cn' => '导入',
'zh-tw' => '入',
'zh-tw' => '入',
],
'ONEMANAGER_CONFIG_SAVE_ENV' => [
'en-us' => 'Config save in Environments',

View File

@ -0,0 +1,815 @@
<!--IconValuesStart-->
{
"music":"audiotrack",
"video":"ondemand_video",
"img":"image",
"pdf":"picture_as_pdf",
"txt":"description",
"apk":"android",
"exe":"desktop_windows",
"default":"insert_drive_file"
}
<!--IconValuesEnd-->
<!DOCTYPE html>
<html lang="<!--constStr@language-->">
<head>
<link rel="preconnect" href="//originfastly.jsdelivr.net" />
<meta charset="utf-8" />
<meta http-equiv="" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1.0, user-scalable=no" />
<meta name="theme-color" content="#fff" />
<!--BackgroundMStart-->
<link rel="icon" href="<!--BackgroundMUrl-->" type="image/x-icon" />
<!--BackgroundMEnd-->
<title><!--Title--></title>
<meta name="keywords" content="<!--Keywords-->" />
<meta name="description" content="<!--Description-->" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/css/app1@uw34ru4ehdn4pywddmebm79dnnb2jyei.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/css/app2@eqge353pwpgivauvcvzejwrki4mdissj.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/@fontsource/noto-sans-tc/500.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/@fontsource/noto-sans-sc/500.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/@fontsource/noto-sans-hk/500.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/mdui@1.0.1/dist/css/mdui.min.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/@fontsource/fira-code@4.2.2/400.css" />
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/@highlightjs/cdn-assets/styles/github.min.css" />
<script src="//originfastly.jsdelivr.net/npm/dplayer/dist/DPlayer.min.js"></script>
<link rel="stylesheet" href="//originfastly.jsdelivr.net/npm/aplayer/dist/APlayer.min.css" />
<script src="//originfastly.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"></script>
<script src="//originfastly.jsdelivr.net/npm/jsmediatags/dist/jsmediatags.min.js"></script>
<script>
window.disableddarkmode = true;
</script>
<style>
html {
background-color: #222222;
<!--BackgroundStart-->
background: url("<!--BackgroundUrl-->") fixed no-repeat, #222222;
<!--BackgroundEnd-->
margin: 0;
background-size: cover;
}
body {
background: inherit;
margin: 0;
background-attachment: fixed;
background-size: cover;
background-repeat: no-repeat;
}
.mdui-theme-layout-dark {
background-color: #222222 !important;
}
*{
color: #ffd2b3;
font-family: 'Noto Sans TC','Noto Sans SC','Noto Sans HK',sans-serif;
}
#footer {
color: #fff;
}
.mdui-typo code,.mdui-typo kbd {
color: #7787ff;
background-color: #dfdfdf;
border-radius: 6px
}
.mdui-theme-layout-dark .mdui-list-item-active {
--color-active: #ff4081 !important;
}
.mdui-icon {
color: #fff8f3;
}
.mdui-menu {
background-color: rgb(22 22 22 / 43%);
}
.mdui-dialog {
background-color: rgb(38 38 38);
}
.mdui-chip .mdui-chip-title {
color: #fff;
font-weight: 600;
}
div#file {
background-color: rgb(22 22 22 / 43%);
}
.mdui-typo p {
margin: 0 0 0 0;
}
.markdown p {
margin: 0 0 1.2em 0;
}
.mdui-typo {
line-height: 1.8;
}
.markdown code, .mdui-typo code {
padding: 2px 4px !important;
color: #e3adff !important;
background-color: #464646 !important;
}
.markdown a *, .mdui-typo a * {
color: #ff4d7e !important;
}
.mdui-theme-layout-dark .mdui-list-item {
color: #ffd2b3;
}
.mdui-list-item:hover {
background-color: #ffffff29;
}
div#aplayer * {
color: #666;
}
input#url-input {
color: rgb(103 95 217);
}
label.mdui-textfield-label {
color: #e91e63 !important;
}
.clp {
margin: 0.25rem;
color: #1A202C;
font-weight: bold;
border-radius: 0.375rem;
height: 2.5rem;
width: auto;
line-height: 1.2;
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
}
#openiina {
background: #D6BCFA;
}
#openpot {
background: #FAF089;
}
#openvlc {
background: #FBD38D;
}
#opennp {
background: #81E6D9;
}
#openmxfree {
background: #90cdf4;
}
#openmxpro {
background: #90cdf4;
}
#clpp {
line-height: 1.2rem;
display: flex;
flex-wrap: wrap;
justify-content: center;
-webkit-box-pack: center;
list-style-type: none;
align-items: center;
padding: 0px;
margin: -0.25rem;
}
.blur{
z-index: 0;
position: fixed;
width: 100%;
height: 100%;
left: 0;
filter: blur(0px);
}
ul.mdui-menu{
position: fixed !important;
}
.aplayer, .aplayer-pic {
padding: inherit;
border-radius: 10px;
}
.mdui-menu{
width: auto;
}
</style>
<!--customCss-->
</head>
<body>
<div class="blur"></div>
</body>
<body class="mdui-appbar-with-toolbar mdui-theme-layout-auto mdui-drawer-body-left mdui-theme-accent-pink">
<header class="mdui-appbar mdui-appbar-fixed">
<div class="mdui-toolbar">
<span class="mdui-btn mdui-btn-icon mdui-ripple mdui-ripple-white"
onclick='mdui.$(".mdui-appbar-with-toolbar").toggleClass("mdui-drawer-body-left");' id="toggle-drawer"><i
class="mdui-icon material-icons">menu</i></span>
<a class="mdui-btn mdui-btn-icon mdui-ripple mdui-ripple-white" onclick="window.history.back()">
<i class="mdui-icon material-icons">arrow_back</i>
</a>
<a href="<!--base_path-->" class="mdui-typo-headline">
<!--Sitename-->
</a>
<!--DiskPathArrayStart-->
<i class="mdui-icon material-icons mdui-hidden-xs" style="margin: 0">chevron_right</i><a
href="<!--PathArrayLink-->" class="mdui-typo-subheading mdui-hidden-xs">
<!--PathArrayName-->
</a>
<!--DiskPathArrayEnd-->
<div class="mdui-toolbar-spacer"></div>
</div>
</header>
<div class="mdui-drawer" id="main-drawer">
<div class="mdui-list" mdui-collapse="{accordion: true}">
<!--LoginStart-->
<li class="mdui-list-item mdui-ripple" mdui-dialog="{target: '#login_input'}" >
<a class="mdui-list-item-icon mdui-icon material-icons">account_circle</a>
<a class="mdui-list-item-content" mdui-dialog="{target: '#login_input'}"><!--constStr@Login--></a>
</li>
<!--LoginEnd-->
<li class="mdui-list-item mdui-ripple" onclick="renexmoe.toggle_theme();">
<a class="mdui-list-item-icon mdui-icon material-icons">brightness_4</a><a
class="mdui-list-item-content">深色背景模式</a>
</li>
<li class="mdui-list-item mdui-ripple">
<a href="<!--base_path-->" class="mdui-list-item-icon mdui-icon material-icons">home</a><a
href="<!--base_path-->" class="mdui-list-item-content" id="home">
<!--constStr@Home-->
</a>
</li>
<!--MultiDiskAreaStart-->
<div class="mdui-divider"></div>
<!--MultiDisksStart-->
<li class="mdui-list-item mdui-ripple">
<a href="<!--MultiDisksUrl-->" class="mdui-list-item-icon mdui-icon material-icons">cloud</a>
<a href="<!--MultiDisksUrl-->" class="mdui-list-item-content mdui-text-truncate disk_name">
<!--MultiDisksName-->
</a>
</li>
<!--MultiDisksEnd-->
<div class="mdui-divider"></div>
<!--MultiDiskAreaEnd-->
<a target="_blank" href="https://github.com/qkqpttgf/OneManager-php" class="mdui-list-item mdui-ripple">
<i class="mdui-list-item-icon mdui-icon material-icons">code</i>
<div class="mdui-list-item-content">Github</div>
</a>
<li class="mdui-list-item mdui-ripple" id="about_theme">
<i class="mdui-list-item-icon mdui-icon material-icons">info</i>
<div class="mdui-list-item-content">關於主題</div>
</li>
<div class="mdui-divider"></div>
<li class="mdui-list-item mdui-ripple" id="select_language" style="overflow: visible;">
<i class="mdui-list-item-icon mdui-icon material-icons">language</i>
<div class="mdui-list-item-content" style="padding-top: 10px;padding-bottom: 10px;">
<select class="mdui-select" name="language" mdui-select onchange="changelanguage(this.options[this.options.selectedIndex].value)">
<!--SelectLanguageStart-->
<option value="<!--SelectLanguageKey-->" <!--SelectLanguageSelected-->><!--SelectLanguageValue--></option>
<!--SelectLanguageEnd-->
</select>
</div>
</li>
<script>
function changelanguage(str)
{
if (str=='Language') str = '';
var expd = new Date();
expd.setTime(expd.getTime()+(2*60*60*1000));
var expires = "expires="+expd.toGMTString();
document.cookie='language='+str+'; path=/; '+expires;
location.href = location.href;
}
</script>
</div>
</div>
<div class="mdui-container" style="position: relative;">
<ul class="mdui-menu" id="admin-menu">
<li class="mdui-menu-item">
<a href="javascript:;" class="mdui-ripple back">
<i class="mdui-menu-item-icon mdui-icon material-icons">arrow_back</i>
返回上一頁
</a>
</li>
</ul>
<i id="mouseplace" style="position: fixed"></i>
<!--LoginStart-->
<div class="mdui-dialog" id="login_input">
<div class="mdui-dialog-title"><!--constStr@Login--></div>
<div class="mdui-dialog-content" style="height: 108px">
<form action="<!--IsPreview?-->login=admin" method="post" onsubmit="return sha1loginpass(this);">
<div class="mdui-textfield mdui-textfield-floating-label">
<i class="mdui-icon material-icons">lock</i><label class="mdui-textfield-label"><!--constStr@InputPassword--></label>
<input class="mdui-textfield-input" id="login_input" name="password1" type="password">
<input name="timestamp" type="hidden" value="">
</div>
</div>
<div class="mdui-dialog-actions">
<button class="mdui-btn mdui-ripple" mdui-dialog-close="" id="login_close">取消</button>
<button id="login_btn_bak" class="mdui-btn mdui-ripple" type="submit" value="<!--constStr@Login-->">
<!--constStr@Login-->
</button>
</form>
</div>
</div>
<!--LoginEnd-->
<!--EncryptedStart-->
<div class="mdui-center" style="margin: 20px auto;max-width: 600px;">
<br />
<center>
<div class="mdui-typo-title">
這是一個受保護的資料夾,您需要提供訪問密碼才能檢視。
</div>
</center>
<form action="" method="post">
<div class="mdui-textfield mdui-textfield-floating-label">
<i class="mdui-icon material-icons">https</i>
<label class="mdui-textfield-label">
<!--constStr@InputPassword-->
</label>
<input name="password1" class="mdui-textfield-input" type="password" />
</div>
<br />
<button type="submit" class="mdui-center mdui-btn mdui-btn-raised mdui-ripple mdui-color-theme">
<i class="mdui-icon material-icons">fingerprint</i>
<!--constStr@Submit-->
</button>
</form>
</div>
<!--EncryptedEnd-->
<!--IsFolderStart-->
<!--HeadomfStart-->
<div class="mdui-typo mdui-shadow-3" style="padding: 20px; margin: 20px 0">
<!--HeadomfContent-->
</div>
<!--HeadomfEnd-->
<!--HeadmdStart-->
<div class="mdui-chip mdui-ripple mdui-hidden-xs" style="margin-top: 20px;">
<span class="mdui-chip-icon">
<i class="mdui-icon material-icons">face</i>
</span>
<span class="mdui-chip-title">HEAD.md</span>
</div>
<div class="mdui-typo mdui-shadow-3 markdown" style="padding: 20px; margin: 20px 0; overflow-x: scroll; border-radius: 8px; background-color: rgb(22 22 22 / 43%);" id="head">
<textarea id="head-md"><!--HeadmdContent--></textarea>
</div>
<!--HeadmdEnd-->
<div class="mdui-row mdui-shadow-3" style="margin: 20px 0; border-radius: 8px; background-color: rgb(22 22 22 / 43%);">
<ul class="mdui-list" id="file-list">
<li class="mdui-list-item mdui-ripple">
<div class="mdui-row mdui-col-xs-12">
<div class="mdui-col-xs-12 mdui-col-sm-7">
<!--constStr@File--><i class="mdui-icon material-icons icon-sort" data-sort="name"
data-order="less">expand_less</i>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--constStr@EditTime--><i class="mdui-icon material-icons icon-sort" data-sort="date"
data-order="less">expand_less</i>
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--constStr@Size--><i class="mdui-icon material-icons icon-sort" data-sort="size"
data-order="less">expand_less</i>
</div>
</div>
</li>
<!--BackArrowStart-->
<li class="mdui-list-item mdui-ripple back-page">
<a href="<!--BackArrowUrl-->">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-7">
<i class="mdui-icon material-icons">arrow_upward</i>
</div>
<div class="mdui-col-xs-3 mdui-text-right"></div>
<div class="mdui-col-xs-2 mdui-text-right"></div>
</div>
</a>
</li>
<!--BackArrowEnd-->
<!--FolderListStart-->
<li class="mdui-list-item mdui-ripple" data-sort data-sort-name="<!--FileEncodeReplaceName-->"
data-sort-date="<!--lastModifiedDateTime-->" data-sort-size="<!--size-->" style="padding-right: 3.3rem">
<a href="<!--FileEncodeReplaceUrl-->/">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-12 mdui-col-sm-7 mdui-text-truncate">
<i class="mdui-icon material-icons">folder_open</i><span>
<!--FileEncodeReplaceName-->
</span>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--lastModifiedDateTime-->
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--size-->
</div>
</div>
</a>
</li>
<!--FolderListEnd-->
<!--FileListStart-->
<li class="mdui-list-item file mdui-ripple" data-sort data-sort-name="<!--FileEncodeReplaceName-->"
data-sort-date="<!--lastModifiedDateTime-->" data-sort-size="<!--size-->" data-readypreview="<!--FileExt-->">
<a class="<!--FileExtType-->" data-name="<!--FileEncodeReplaceName-->"
href="<!--FileEncodeReplaceUrl-->?preview" aria-label="File">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-12 mdui-col-sm-7 mdui-text-truncate">
<i class="mdui-icon material-icons">
<!--IconValue-->
</i>
<span>
<!--FileEncodeReplaceName-->
</span>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--lastModifiedDateTime-->
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--size-->
</div>
</div>
</a>
<div class="forcedownload mdui-text-right">
<a title="<!--constStr@Download-->" aria-label="Download" href="<!--FileEncodeReplaceUrl-->"
target="_blank"><button class="mdui-btn mdui-ripple mdui-btn-icon">
<i class="mdui-icon material-icons">file_download</i>
</button></a>
</div>
</li>
<!--FileListEnd-->
</ul>
</div>
<!--ReadmemdStart-->
<div class="mdui-chip mdui-ripple mdui-hidden-xs">
<span class="mdui-chip-icon"><i class="mdui-icon material-icons">face</i></span><span
class="mdui-chip-title">README.md</span>
</div>
<div class="mdui-typo mdui-shadow-3 markdown" style="padding: 20px; margin: 20px 0; overflow-x: scroll; background-color: rgb(22 22 22 / 43%);" id="readme">
<textarea id="readme-md"><!--ReadmemdContent--></textarea>
</div>
<!--ReadmemdEnd-->
<!--FootomfStart-->
<div class="mdui-typo mdui-shadow-3" style="padding: 20px; margin: 20px 0">
<!--FootomfContent-->
</div>
<!--FootomfEnd-->
<script>
document.querySelector("#admin-menu").innerHTML += '<li class="mdui-menu-item"><a class="mdui-ripple getalllink"><i class="mdui-menu-item-icon mdui-icon material-icons">link</i><!--constStr@CopyAllDownloadUrl--></a></li>';
</script>
<script>
window.MorePage = undefined;
</script>
<!--MorePageStart-->
<script>
window.MorePage = [
<!--MorePageListNowStart-->
<!--PageNum-->,
<!--MorePageListNowEnd-->
<!--MorePageListStart-->
<!--PageNum-->,
<!--MorePageListEnd-->
];
</script>
<!--MorePageEnd-->
<!--IsFolderEnd-->
<!--IsFileStart-->
<script>
path = window.location.pathname.substring(0, window.location.pathname.lastIndexOf('/'));
function copyURL() {
copyText = document.createElement("input");
copyText.id = "copyText";
copyText.value = window.location.origin + path + "/" + "<!--FileDownUrl-->";
p = document.querySelector('body');
parent = p.parentNode;
parent.appendChild(copyText);
copyText.focus();
copyText.select();
document.execCommand("copy");
document.getElementById("copyText").remove();
mdui.snackbar("已複製到剪貼簿");
}
document.querySelector("#admin-menu").innerHTML += '<li class="mdui-menu-item"><a class="mdui-ripple" onclick="copyURL()"><i class="mdui-menu-item-icon mdui-icon material-icons">link</i><!--constStr@CopyUrl--></a></li>';
document.querySelector(".mdui-toolbar").innerHTML += '<a class="mdui-btn mdui-btn-icon mdui-ripple downloadurl"><i class="mdui-icon material-icons">cloud_download</i></a>';
</script>
<div id="file" class="mdui-shadow-3" style="margin: 20px 0px; padding: 20px; border-radius: 8px">
<!--IsimgFileStart-->
<img class="mdui-img-fluid mdui-center" src="<!--FileDownUrl-->" />
<!--IsimgFileEnd-->
<!--IsmusicFileStart-->
<div id="aplayer" class="mdui-text-center">音樂載入中...</div>
<br />
<div class="mdui-row" id="clpp">
<a id="openiina" href="" type="button" class="clp mdui-btn mdui-ripple">IINA</a>
<a id="openpot" href="" type="button" class="clp mdui-btn mdui-ripple">PotPlayer</a>
<a id="openvlc" href="" type="button" class="clp mdui-btn mdui-ripple">VLC</a>
<a id="opennp" href="" type="button" class="clp mdui-btn mdui-ripple">nPlayer</a>
<a id="openmxfree" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer</a>
<a id="openmxpro" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer Pro</a>
</div>
<script>
document.getElementById("openiina").href = "iina://weblink?url=" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openpot").href = "potplayer://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openvlc").href = "vlc://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("opennp").href = "nplayer-" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openmxfree").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.ad;end";
document.getElementById("openmxpro").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.pro;end";
ap = new APlayer({
container: document.getElementById('aplayer'),
theme: 'rgb(242, 200, 171)',
autoplay: false,
loop: 'all',
audio: [
{
name: "<!--FileDownUrl-->".substring(0, "<!--FileDownUrl-->".lastIndexOf('.')),
artist: " ",
url: "<!--FileDownUrl-->",
cover: " "
}
]
});
document.querySelector('.aplayer-author').innerHTML = "";
isRecover = false;
function AudioTime(){
if(!isRecover){
if(ap.audio.duration > 0){
if(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != null && localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != 'null'){
ap.seek(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") - 5);
mdui.snackbar('已恢復至上次播放位置');
isRecover = true;
}else{
isRecover = true;
}
}
}else{
if(ap.audio.currentTime >= 16 && ap.audio.currentTime <= ap.audio.duration - 16){
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", ap.audio.currentTime);
}else{
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", null);
}
}
}
function AudioPause(){
if(window.location.href != oldURL){
if(ap != undefined){
ap.pause();
}
oldURL = window.location.href;
}
}
var oldURL = window.location.href;
setInterval(AudioPause, 1000);
setInterval(AudioTime, 1000);
window.jsmediatags.read(window.location.origin + path + "/" + "<!--FileDownUrl-->", {
onSuccess: function(tag) {
if(tag.tags.picture != undefined){
const data = tag.tags.picture.data;
const format = tag.tags.picture.format;
let base64String = "";
for (let i = 0; i < data.length; i++) {
base64String += String.fromCharCode(data[i]);
}
ap.options.audio[0].cover = `data:${format};base64,${window.btoa(base64String)}`;
document.querySelector('.aplayer-pic').style.backgroundImage = `url("data:${format};base64,${window.btoa(base64String)}")`;
}
if(tag.tags.title != undefined){
ap.options.audio[0].name = tag.tags.title;
document.querySelector('.aplayer-title').innerHTML = tag.tags.title;
}
if(tag.tags.artist != undefined){
ap.options.audio[0].artist = tag.tags.artist;
document.querySelector('.aplayer-author').innerHTML = " - " + tag.tags.artist;
}
},
onError: function(error) {
p = document.getElementById('aplayer');
parent = p.parentNode;
audio = document.createElement('audio');
audio.className = 'mdui-center';
audio.src = "<!--FileDownUrl-->";
audio.controls = true;
audio.autoplay = true;
audio.style = 'width: 100%';
parent.replaceChild(audio, p);
}
});
</script>
<!--IsmusicFileEnd-->
<!--IsvideoFileStart-->
<div id="dplayer"></div>
<br />
<div class="mdui-row" id="clpp">
<a id="openiina" href="" type="button" class="clp mdui-btn mdui-ripple">IINA</a>
<a id="openpot" href="" type="button" class="clp mdui-btn mdui-ripple">PotPlayer</a>
<a id="openvlc" href="" type="button" class="clp mdui-btn mdui-ripple">VLC</a>
<a id="opennp" href="" type="button" class="clp mdui-btn mdui-ripple">nPlayer</a>
<a id="openmxfree" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer</a>
<a id="openmxpro" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer Pro</a>
</div>
<script>
document.getElementById("openiina").href = "iina://weblink?url=" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openpot").href = "potplayer://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openvlc").href = "vlc://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("opennp").href = "nplayer-" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openmxfree").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.ad;end";
document.getElementById("openmxpro").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.pro;end";
dp = new DPlayer({
container: document.getElementById('dplayer'),
theme: '#ffd2b3',
screenshot: true,
preload: 'auto',
playbackSpeed: [0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, 6],
video: {
url: "<!--FileDownUrl-->",
type: 'auto'
}
});
isRecover = false;
function VideoTime(){
if(!isRecover){
if(dp.video.duration > 0 && dp.video.duration != NaN){
if(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != null && localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != 'null'){
dp.seek(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") - 5);
mdui.snackbar('已恢復至上次播放位置');
isRecover = true;
}else{
isRecover = true;
}
}
}else{
if(dp.video.currentTime >= 31 && dp.video.currentTime <= dp.video.duration - 31){
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", dp.video.currentTime);
}else{
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", null);
}
}
}
setInterval(VideoTime, 1000);
</script>
<!--IsvideoFileEnd-->
<!--IsofficeFileStart-->
<iframe id="office-a" src="https://view.officeapps.live.com/op/view.aspx?src=<!--FileEncodeDownUrl-->"
style="width: 100%" frameborder="0"></iframe>
<script>
window.onload = function () {
if (document.getElementById("office-a")) {
var ifm = document.getElementById("office-a");
var containerHeight = document.documentElement.clientHeight - 150;
ifm.height = containerHeight;
}
}
window.onresize = function () {
if (document.getElementById("office-a")) {
var ifm = document.getElementById("office-a");
var containerHeight = document.documentElement.clientHeight - 150;
ifm.height = containerHeight;
}
}
</script>
<!--IsofficeFileEnd-->
<!--IspdfFileStart-->
<div id="pdf-d" style="text-align:center;margin:0 auto;width: calc(100%);">Loading PDF</div>
<script>
function renderpage(pdf, i) {
pdf.getPage(i).then(function (page) {
var scale = 1.5;
var viewport = page.getViewport({
scale: scale,
});
var canvas = document.getElementById("pdf-c" + i);
var context = canvas.getContext("2d");
canvas.height = viewport.height;
canvas.width = viewport.width;
canvas.style.width = "inherit";
var renderContext = {
canvasContext: context,
viewport: viewport,
};
page.render(renderContext);
});
}
function loadpdf() {
pdfjsLib.GlobalWorkerOptions.workerSrc =
"//originfastly.jsdelivr.net/npm/pdfjs-dist@2.5.207/es5/build/pdf.worker.js";
var loadingTask = pdfjsLib.getDocument({
url: "<!--FileDownUrl-->",
cMapUrl: "//originfastly.jsdelivr.net/npm/pdfjs-dist@2.5.207/cmaps/",
cMapPacked: true,
rangeChunkSize: 65535
});
loadingTask.promise.then(function (pdf) {
var pagenum = pdf.numPages;
var pdfContainer = document.getElementById("pdf-d");
pdfContainer.innerHTML = "";
for (var i = 1; i <= pagenum; i++) {
var canvasNew = document.createElement("canvas");
canvasNew.id = "pdf-c" + i;
pdfContainer.appendChild(canvasNew);
renderpage(pdf, i);
}
});
}
window.onload = function () {
if (document.getElementById("pdf-d")) {
loadpdf();
}
}
</script>
<!--IspdfFileEnd-->
<!--IstxtFileStart-->
<pre id="editor" style="white-space: pre-wrap; font-family: JetBrains Mono, Fira Code, Sarasa Mono SC, Cascadia Code, Menlo, Consolas, monaco, Noto Sans SC;"><code id="code"><!--TxtContent--></code></pre>
<script>
document.querySelector("#admin-menu").innerHTML +=
'<li class="mdui-menu-item"><a class="mdui-ripple highlight"><i class="mdui-menu-item-icon mdui-icon material-icons">style</i>markdown解析</a></li>';
document.querySelector(
".mdui-toolbar"
).innerHTML +=
'<a class="mdui-btn mdui-btn-icon mdui-ripple mdui-hidden-sm-up highlight"><i class="mdui-icon material-icons">style</i></a>';
</script>
<!--IstxtFileEnd-->
<!--IsOtherFileStart-->
<!--constStr@FileNotSupport-->
<!--IsOtherFileEnd-->
</div>
<a href="<!--FileEncodeReplaceUrl-->" target="_blank" class="mdui-fab mdui-fab-fixed mdui-ripple mdui-color-theme-accent"><i class="mdui-icon material-icons">file_download</i></a>
<!--IsFileEnd-->
</div>
<div class="mdui-text-center mdui-typo" id="footer" style="position: relative;"></div>
</body>
<script src="//originfastly.jsdelivr.net/npm/pdfjs-dist@2.5.207/es5/build/pdf.js"></script>
<script src="//originfastly.jsdelivr.net/npm/mdui@1.0.1/dist/js/mdui.min.js"></script>
<script src="//originfastly.jsdelivr.net/npm/sha-1@1.0.0/dist/sha1.umd.js"></script>
<script src="//originfastly.jsdelivr.net/npm/jquery"></script>
<script src="//originfastly.jsdelivr.net/npm/@highlightjs/cdn-assets/highlight.min.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/extra.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@qm97ssij9cnii7x8fnbkpq4hcgq35dyr.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@59467336fgwnpx8qbfvtmpyeefv35e5i.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@a7r8jgn2qe3eyfrkahwdnqcjf7uba95k.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@keaxctnyw29nuzpsh66g7ki4h5wzy8zn.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@pe2nahunr9aihucdgc2ssjbgnaccr5rz.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/app@tsjmiafbhksy5pyb5tchy765wshmwwnd.js"></script>
<script src="//originfastly.jsdelivr.net/npm/renexmoe-tw527e-edition@1.1.1/js/webpack-runtime@cx4vgpbaggjuhg8rh6m3yarhkkxy4dm3.js"></script>
<script>
window.renexmoe.toggle_theme();
</script>
<!--customScript-->
</html>

View File

@ -0,0 +1,815 @@
<!--IconValuesStart-->
{
"music":"audiotrack",
"video":"ondemand_video",
"img":"image",
"pdf":"picture_as_pdf",
"txt":"description",
"apk":"android",
"exe":"desktop_windows",
"default":"insert_drive_file"
}
<!--IconValuesEnd-->
<!DOCTYPE html>
<html lang="<!--constStr@language-->">
<head>
<link rel="preconnect" href="//unpkg.com" />
<meta charset="utf-8" />
<meta http-equiv="" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0,maximum-scale=1.0, user-scalable=no" />
<meta name="theme-color" content="#fff" />
<!--BackgroundMStart-->
<link rel="icon" href="<!--BackgroundMUrl-->" type="image/x-icon" />
<!--BackgroundMEnd-->
<title><!--Title--></title>
<meta name="keywords" content="<!--Keywords-->" />
<meta name="description" content="<!--Description-->" />
<link rel="stylesheet" href="//unpkg.com/renexmoe-tw527e-edition@1.1.1/css/app1@uw34ru4ehdn4pywddmebm79dnnb2jyei.css" />
<link rel="stylesheet" href="//unpkg.com/renexmoe-tw527e-edition@1.1.1/css/app2@eqge353pwpgivauvcvzejwrki4mdissj.css" />
<link rel="stylesheet" href="//unpkg.com/@fontsource/noto-sans-tc/500.css" />
<link rel="stylesheet" href="//unpkg.com/@fontsource/noto-sans-sc/500.css" />
<link rel="stylesheet" href="//unpkg.com/@fontsource/noto-sans-hk/500.css" />
<link rel="stylesheet" href="//unpkg.com/mdui@1.0.1/dist/css/mdui.min.css" />
<link rel="stylesheet" href="//unpkg.com/@fontsource/fira-code@4.2.2/400.css" />
<link rel="stylesheet" href="//unpkg.com/@highlightjs/cdn-assets/styles/github.min.css" />
<script src="//unpkg.com/dplayer/dist/DPlayer.min.js"></script>
<link rel="stylesheet" href="//unpkg.com/aplayer/dist/APlayer.min.css" />
<script src="//unpkg.com/aplayer/dist/APlayer.min.js"></script>
<script src="//unpkg.com/jsmediatags/dist/jsmediatags.min.js"></script>
<script>
window.disableddarkmode = true;
</script>
<style>
html {
background-color: #222222;
<!--BackgroundStart-->
background: url("<!--BackgroundUrl-->") fixed no-repeat, #222222;
<!--BackgroundEnd-->
margin: 0;
background-size: cover;
}
body {
background: inherit;
margin: 0;
background-attachment: fixed;
background-size: cover;
background-repeat: no-repeat;
}
.mdui-theme-layout-dark {
background-color: #222222 !important;
}
*{
color: #ffd2b3;
font-family: 'Noto Sans TC','Noto Sans SC','Noto Sans HK',sans-serif;
}
#footer {
color: #fff;
}
.mdui-typo code,.mdui-typo kbd {
color: #7787ff;
background-color: #dfdfdf;
border-radius: 6px
}
.mdui-theme-layout-dark .mdui-list-item-active {
--color-active: #ff4081 !important;
}
.mdui-icon {
color: #fff8f3;
}
.mdui-menu {
background-color: rgb(22 22 22 / 43%);
}
.mdui-dialog {
background-color: rgb(38 38 38);
}
.mdui-chip .mdui-chip-title {
color: #fff;
font-weight: 600;
}
div#file {
background-color: rgb(22 22 22 / 43%);
}
.mdui-typo p {
margin: 0 0 0 0;
}
.markdown p {
margin: 0 0 1.2em 0;
}
.mdui-typo {
line-height: 1.8;
}
.markdown code, .mdui-typo code {
padding: 2px 4px !important;
color: #e3adff !important;
background-color: #464646 !important;
}
.markdown a *, .mdui-typo a * {
color: #ff4d7e !important;
}
.mdui-theme-layout-dark .mdui-list-item {
color: #ffd2b3;
}
.mdui-list-item:hover {
background-color: #ffffff29;
}
div#aplayer * {
color: #666;
}
input#url-input {
color: rgb(103 95 217);
}
label.mdui-textfield-label {
color: #e91e63 !important;
}
.clp {
margin: 0.25rem;
color: #1A202C;
font-weight: bold;
border-radius: 0.375rem;
height: 2.5rem;
width: auto;
line-height: 1.2;
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
}
#openiina {
background: #D6BCFA;
}
#openpot {
background: #FAF089;
}
#openvlc {
background: #FBD38D;
}
#opennp {
background: #81E6D9;
}
#openmxfree {
background: #90cdf4;
}
#openmxpro {
background: #90cdf4;
}
#clpp {
line-height: 1.2rem;
display: flex;
flex-wrap: wrap;
justify-content: center;
-webkit-box-pack: center;
list-style-type: none;
align-items: center;
padding: 0px;
margin: -0.25rem;
}
.blur{
z-index: 0;
position: fixed;
width: 100%;
height: 100%;
left: 0;
filter: blur(0px);
}
ul.mdui-menu{
position: fixed !important;
}
.aplayer, .aplayer-pic {
padding: inherit;
border-radius: 10px;
}
.mdui-menu{
width: auto;
}
</style>
<!--customCss-->
</head>
<body>
<div class="blur"></div>
</body>
<body class="mdui-appbar-with-toolbar mdui-theme-layout-auto mdui-drawer-body-left mdui-theme-accent-pink">
<header class="mdui-appbar mdui-appbar-fixed">
<div class="mdui-toolbar">
<span class="mdui-btn mdui-btn-icon mdui-ripple mdui-ripple-white"
onclick='mdui.$(".mdui-appbar-with-toolbar").toggleClass("mdui-drawer-body-left");' id="toggle-drawer"><i
class="mdui-icon material-icons">menu</i></span>
<a class="mdui-btn mdui-btn-icon mdui-ripple mdui-ripple-white" onclick="window.history.back()">
<i class="mdui-icon material-icons">arrow_back</i>
</a>
<a href="<!--base_path-->" class="mdui-typo-headline">
<!--Sitename-->
</a>
<!--DiskPathArrayStart-->
<i class="mdui-icon material-icons mdui-hidden-xs" style="margin: 0">chevron_right</i><a
href="<!--PathArrayLink-->" class="mdui-typo-subheading mdui-hidden-xs">
<!--PathArrayName-->
</a>
<!--DiskPathArrayEnd-->
<div class="mdui-toolbar-spacer"></div>
</div>
</header>
<div class="mdui-drawer" id="main-drawer">
<div class="mdui-list" mdui-collapse="{accordion: true}">
<!--LoginStart-->
<li class="mdui-list-item mdui-ripple" mdui-dialog="{target: '#login_input'}" >
<a class="mdui-list-item-icon mdui-icon material-icons">account_circle</a>
<a class="mdui-list-item-content" mdui-dialog="{target: '#login_input'}"><!--constStr@Login--></a>
</li>
<!--LoginEnd-->
<li class="mdui-list-item mdui-ripple" onclick="renexmoe.toggle_theme();">
<a class="mdui-list-item-icon mdui-icon material-icons">brightness_4</a><a
class="mdui-list-item-content">深色背景模式</a>
</li>
<li class="mdui-list-item mdui-ripple">
<a href="<!--base_path-->" class="mdui-list-item-icon mdui-icon material-icons">home</a><a
href="<!--base_path-->" class="mdui-list-item-content" id="home">
<!--constStr@Home-->
</a>
</li>
<!--MultiDiskAreaStart-->
<div class="mdui-divider"></div>
<!--MultiDisksStart-->
<li class="mdui-list-item mdui-ripple">
<a href="<!--MultiDisksUrl-->" class="mdui-list-item-icon mdui-icon material-icons">cloud</a>
<a href="<!--MultiDisksUrl-->" class="mdui-list-item-content mdui-text-truncate disk_name">
<!--MultiDisksName-->
</a>
</li>
<!--MultiDisksEnd-->
<div class="mdui-divider"></div>
<!--MultiDiskAreaEnd-->
<a target="_blank" href="https://github.com/qkqpttgf/OneManager-php" class="mdui-list-item mdui-ripple">
<i class="mdui-list-item-icon mdui-icon material-icons">code</i>
<div class="mdui-list-item-content">Github</div>
</a>
<li class="mdui-list-item mdui-ripple" id="about_theme">
<i class="mdui-list-item-icon mdui-icon material-icons">info</i>
<div class="mdui-list-item-content">關於主題</div>
</li>
<div class="mdui-divider"></div>
<li class="mdui-list-item mdui-ripple" id="select_language" style="overflow: visible;">
<i class="mdui-list-item-icon mdui-icon material-icons">language</i>
<div class="mdui-list-item-content" style="padding-top: 10px;padding-bottom: 10px;">
<select class="mdui-select" name="language" mdui-select onchange="changelanguage(this.options[this.options.selectedIndex].value)">
<!--SelectLanguageStart-->
<option value="<!--SelectLanguageKey-->" <!--SelectLanguageSelected-->><!--SelectLanguageValue--></option>
<!--SelectLanguageEnd-->
</select>
</div>
</li>
<script>
function changelanguage(str)
{
if (str=='Language') str = '';
var expd = new Date();
expd.setTime(expd.getTime()+(2*60*60*1000));
var expires = "expires="+expd.toGMTString();
document.cookie='language='+str+'; path=/; '+expires;
location.href = location.href;
}
</script>
</div>
</div>
<div class="mdui-container" style="position: relative;">
<ul class="mdui-menu" id="admin-menu">
<li class="mdui-menu-item">
<a href="javascript:;" class="mdui-ripple back">
<i class="mdui-menu-item-icon mdui-icon material-icons">arrow_back</i>
返回上一頁
</a>
</li>
</ul>
<i id="mouseplace" style="position: fixed"></i>
<!--LoginStart-->
<div class="mdui-dialog" id="login_input">
<div class="mdui-dialog-title"><!--constStr@Login--></div>
<div class="mdui-dialog-content" style="height: 108px">
<form action="<!--IsPreview?-->login=admin" method="post" onsubmit="return sha1loginpass(this);">
<div class="mdui-textfield mdui-textfield-floating-label">
<i class="mdui-icon material-icons">lock</i><label class="mdui-textfield-label"><!--constStr@InputPassword--></label>
<input class="mdui-textfield-input" id="login_input" name="password1" type="password">
<input name="timestamp" type="hidden" value="">
</div>
</div>
<div class="mdui-dialog-actions">
<button class="mdui-btn mdui-ripple" mdui-dialog-close="" id="login_close">取消</button>
<button id="login_btn_bak" class="mdui-btn mdui-ripple" type="submit" value="<!--constStr@Login-->">
<!--constStr@Login-->
</button>
</form>
</div>
</div>
<!--LoginEnd-->
<!--EncryptedStart-->
<div class="mdui-center" style="margin: 20px auto;max-width: 600px;">
<br />
<center>
<div class="mdui-typo-title">
這是一個受保護的資料夾,您需要提供訪問密碼才能檢視。
</div>
</center>
<form action="" method="post">
<div class="mdui-textfield mdui-textfield-floating-label">
<i class="mdui-icon material-icons">https</i>
<label class="mdui-textfield-label">
<!--constStr@InputPassword-->
</label>
<input name="password1" class="mdui-textfield-input" type="password" />
</div>
<br />
<button type="submit" class="mdui-center mdui-btn mdui-btn-raised mdui-ripple mdui-color-theme">
<i class="mdui-icon material-icons">fingerprint</i>
<!--constStr@Submit-->
</button>
</form>
</div>
<!--EncryptedEnd-->
<!--IsFolderStart-->
<!--HeadomfStart-->
<div class="mdui-typo mdui-shadow-3" style="padding: 20px; margin: 20px 0">
<!--HeadomfContent-->
</div>
<!--HeadomfEnd-->
<!--HeadmdStart-->
<div class="mdui-chip mdui-ripple mdui-hidden-xs" style="margin-top: 20px;">
<span class="mdui-chip-icon">
<i class="mdui-icon material-icons">face</i>
</span>
<span class="mdui-chip-title">HEAD.md</span>
</div>
<div class="mdui-typo mdui-shadow-3 markdown" style="padding: 20px; margin: 20px 0; overflow-x: scroll; border-radius: 8px; background-color: rgb(22 22 22 / 43%);" id="head">
<textarea id="head-md"><!--HeadmdContent--></textarea>
</div>
<!--HeadmdEnd-->
<div class="mdui-row mdui-shadow-3" style="margin: 20px 0; border-radius: 8px; background-color: rgb(22 22 22 / 43%);">
<ul class="mdui-list" id="file-list">
<li class="mdui-list-item mdui-ripple">
<div class="mdui-row mdui-col-xs-12">
<div class="mdui-col-xs-12 mdui-col-sm-7">
<!--constStr@File--><i class="mdui-icon material-icons icon-sort" data-sort="name"
data-order="less">expand_less</i>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--constStr@EditTime--><i class="mdui-icon material-icons icon-sort" data-sort="date"
data-order="less">expand_less</i>
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--constStr@Size--><i class="mdui-icon material-icons icon-sort" data-sort="size"
data-order="less">expand_less</i>
</div>
</div>
</li>
<!--BackArrowStart-->
<li class="mdui-list-item mdui-ripple back-page">
<a href="<!--BackArrowUrl-->">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-7">
<i class="mdui-icon material-icons">arrow_upward</i>
</div>
<div class="mdui-col-xs-3 mdui-text-right"></div>
<div class="mdui-col-xs-2 mdui-text-right"></div>
</div>
</a>
</li>
<!--BackArrowEnd-->
<!--FolderListStart-->
<li class="mdui-list-item mdui-ripple" data-sort data-sort-name="<!--FileEncodeReplaceName-->"
data-sort-date="<!--lastModifiedDateTime-->" data-sort-size="<!--size-->" style="padding-right: 3.3rem">
<a href="<!--FileEncodeReplaceUrl-->/">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-12 mdui-col-sm-7 mdui-text-truncate">
<i class="mdui-icon material-icons">folder_open</i><span>
<!--FileEncodeReplaceName-->
</span>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--lastModifiedDateTime-->
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--size-->
</div>
</div>
</a>
</li>
<!--FolderListEnd-->
<!--FileListStart-->
<li class="mdui-list-item file mdui-ripple" data-sort data-sort-name="<!--FileEncodeReplaceName-->"
data-sort-date="<!--lastModifiedDateTime-->" data-sort-size="<!--size-->" data-readypreview="<!--FileExt-->">
<a class="<!--FileExtType-->" data-name="<!--FileEncodeReplaceName-->"
href="<!--FileEncodeReplaceUrl-->?preview" aria-label="File">
<div class="mdui-row mdui-col-sm-12">
<div class="mdui-col-xs-12 mdui-col-sm-7 mdui-text-truncate">
<i class="mdui-icon material-icons">
<!--IconValue-->
</i>
<span>
<!--FileEncodeReplaceName-->
</span>
</div>
<div class="mdui-col-sm-3 mdui-text-right">
<!--lastModifiedDateTime-->
</div>
<div class="mdui-col-sm-2 mdui-text-right">
<!--size-->
</div>
</div>
</a>
<div class="forcedownload mdui-text-right">
<a title="<!--constStr@Download-->" aria-label="Download" href="<!--FileEncodeReplaceUrl-->"
target="_blank"><button class="mdui-btn mdui-ripple mdui-btn-icon">
<i class="mdui-icon material-icons">file_download</i>
</button></a>
</div>
</li>
<!--FileListEnd-->
</ul>
</div>
<!--ReadmemdStart-->
<div class="mdui-chip mdui-ripple mdui-hidden-xs">
<span class="mdui-chip-icon"><i class="mdui-icon material-icons">face</i></span><span
class="mdui-chip-title">README.md</span>
</div>
<div class="mdui-typo mdui-shadow-3 markdown" style="padding: 20px; margin: 20px 0; overflow-x: scroll; background-color: rgb(22 22 22 / 43%);" id="readme">
<textarea id="readme-md"><!--ReadmemdContent--></textarea>
</div>
<!--ReadmemdEnd-->
<!--FootomfStart-->
<div class="mdui-typo mdui-shadow-3" style="padding: 20px; margin: 20px 0">
<!--FootomfContent-->
</div>
<!--FootomfEnd-->
<script>
document.querySelector("#admin-menu").innerHTML += '<li class="mdui-menu-item"><a class="mdui-ripple getalllink"><i class="mdui-menu-item-icon mdui-icon material-icons">link</i><!--constStr@CopyAllDownloadUrl--></a></li>';
</script>
<script>
window.MorePage = undefined;
</script>
<!--MorePageStart-->
<script>
window.MorePage = [
<!--MorePageListNowStart-->
<!--PageNum-->,
<!--MorePageListNowEnd-->
<!--MorePageListStart-->
<!--PageNum-->,
<!--MorePageListEnd-->
];
</script>
<!--MorePageEnd-->
<!--IsFolderEnd-->
<!--IsFileStart-->
<script>
path = window.location.pathname.substring(0, window.location.pathname.lastIndexOf('/'));
function copyURL() {
copyText = document.createElement("input");
copyText.id = "copyText";
copyText.value = window.location.origin + path + "/" + "<!--FileDownUrl-->";
p = document.querySelector('body');
parent = p.parentNode;
parent.appendChild(copyText);
copyText.focus();
copyText.select();
document.execCommand("copy");
document.getElementById("copyText").remove();
mdui.snackbar("已複製到剪貼簿");
}
document.querySelector("#admin-menu").innerHTML += '<li class="mdui-menu-item"><a class="mdui-ripple" onclick="copyURL()"><i class="mdui-menu-item-icon mdui-icon material-icons">link</i><!--constStr@CopyUrl--></a></li>';
document.querySelector(".mdui-toolbar").innerHTML += '<a class="mdui-btn mdui-btn-icon mdui-ripple downloadurl"><i class="mdui-icon material-icons">cloud_download</i></a>';
</script>
<div id="file" class="mdui-shadow-3" style="margin: 20px 0px; padding: 20px; border-radius: 8px">
<!--IsimgFileStart-->
<img class="mdui-img-fluid mdui-center" src="<!--FileDownUrl-->" />
<!--IsimgFileEnd-->
<!--IsmusicFileStart-->
<div id="aplayer" class="mdui-text-center">音樂載入中...</div>
<br />
<div class="mdui-row" id="clpp">
<a id="openiina" href="" type="button" class="clp mdui-btn mdui-ripple">IINA</a>
<a id="openpot" href="" type="button" class="clp mdui-btn mdui-ripple">PotPlayer</a>
<a id="openvlc" href="" type="button" class="clp mdui-btn mdui-ripple">VLC</a>
<a id="opennp" href="" type="button" class="clp mdui-btn mdui-ripple">nPlayer</a>
<a id="openmxfree" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer</a>
<a id="openmxpro" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer Pro</a>
</div>
<script>
document.getElementById("openiina").href = "iina://weblink?url=" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openpot").href = "potplayer://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openvlc").href = "vlc://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("opennp").href = "nplayer-" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openmxfree").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.ad;end";
document.getElementById("openmxpro").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.pro;end";
ap = new APlayer({
container: document.getElementById('aplayer'),
theme: 'rgb(242, 200, 171)',
autoplay: false,
loop: 'all',
audio: [
{
name: "<!--FileDownUrl-->".substring(0, "<!--FileDownUrl-->".lastIndexOf('.')),
artist: " ",
url: "<!--FileDownUrl-->",
cover: " "
}
]
});
document.querySelector('.aplayer-author').innerHTML = "";
isRecover = false;
function AudioTime(){
if(!isRecover){
if(ap.audio.duration > 0){
if(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != null && localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != 'null'){
ap.seek(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") - 5);
mdui.snackbar('已恢復至上次播放位置');
isRecover = true;
}else{
isRecover = true;
}
}
}else{
if(ap.audio.currentTime >= 16 && ap.audio.currentTime <= ap.audio.duration - 16){
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", ap.audio.currentTime);
}else{
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", null);
}
}
}
function AudioPause(){
if(window.location.href != oldURL){
if(ap != undefined){
ap.pause();
}
oldURL = window.location.href;
}
}
var oldURL = window.location.href;
setInterval(AudioPause, 1000);
setInterval(AudioTime, 1000);
window.jsmediatags.read(window.location.origin + path + "/" + "<!--FileDownUrl-->", {
onSuccess: function(tag) {
if(tag.tags.picture != undefined){
const data = tag.tags.picture.data;
const format = tag.tags.picture.format;
let base64String = "";
for (let i = 0; i < data.length; i++) {
base64String += String.fromCharCode(data[i]);
}
ap.options.audio[0].cover = `data:${format};base64,${window.btoa(base64String)}`;
document.querySelector('.aplayer-pic').style.backgroundImage = `url("data:${format};base64,${window.btoa(base64String)}")`;
}
if(tag.tags.title != undefined){
ap.options.audio[0].name = tag.tags.title;
document.querySelector('.aplayer-title').innerHTML = tag.tags.title;
}
if(tag.tags.artist != undefined){
ap.options.audio[0].artist = tag.tags.artist;
document.querySelector('.aplayer-author').innerHTML = " - " + tag.tags.artist;
}
},
onError: function(error) {
p = document.getElementById('aplayer');
parent = p.parentNode;
audio = document.createElement('audio');
audio.className = 'mdui-center';
audio.src = "<!--FileDownUrl-->";
audio.controls = true;
audio.autoplay = true;
audio.style = 'width: 100%';
parent.replaceChild(audio, p);
}
});
</script>
<!--IsmusicFileEnd-->
<!--IsvideoFileStart-->
<div id="dplayer"></div>
<br />
<div class="mdui-row" id="clpp">
<a id="openiina" href="" type="button" class="clp mdui-btn mdui-ripple">IINA</a>
<a id="openpot" href="" type="button" class="clp mdui-btn mdui-ripple">PotPlayer</a>
<a id="openvlc" href="" type="button" class="clp mdui-btn mdui-ripple">VLC</a>
<a id="opennp" href="" type="button" class="clp mdui-btn mdui-ripple">nPlayer</a>
<a id="openmxfree" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer</a>
<a id="openmxpro" href="" type="button" class="clp mdui-btn mdui-ripple">MXPlayer Pro</a>
</div>
<script>
document.getElementById("openiina").href = "iina://weblink?url=" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openpot").href = "potplayer://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openvlc").href = "vlc://" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("opennp").href = "nplayer-" + window.location.origin + path + "/" + "<!--FileDownUrl-->";
document.getElementById("openmxfree").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.ad;end";
document.getElementById("openmxpro").href = "intent:" + window.location.origin + path + "/" + "<!--FileDownUrl-->" + "#Intent;package=com.mxtech.videoplayer.pro;end";
dp = new DPlayer({
container: document.getElementById('dplayer'),
theme: '#ffd2b3',
screenshot: true,
preload: 'auto',
playbackSpeed: [0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, 6],
video: {
url: "<!--FileDownUrl-->",
type: 'auto'
}
});
isRecover = false;
function VideoTime(){
if(!isRecover){
if(dp.video.duration > 0 && dp.video.duration != NaN){
if(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != null && localStorage.getItem(path + "/" + "<!--FileDownUrl-->") != 'null'){
dp.seek(localStorage.getItem(path + "/" + "<!--FileDownUrl-->") - 5);
mdui.snackbar('已恢復至上次播放位置');
isRecover = true;
}else{
isRecover = true;
}
}
}else{
if(dp.video.currentTime >= 31 && dp.video.currentTime <= dp.video.duration - 31){
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", dp.video.currentTime);
}else{
localStorage.setItem(path + "/" + "<!--FileDownUrl-->", null);
}
}
}
setInterval(VideoTime, 1000);
</script>
<!--IsvideoFileEnd-->
<!--IsofficeFileStart-->
<iframe id="office-a" src="https://view.officeapps.live.com/op/view.aspx?src=<!--FileEncodeDownUrl-->"
style="width: 100%" frameborder="0"></iframe>
<script>
window.onload = function () {
if (document.getElementById("office-a")) {
var ifm = document.getElementById("office-a");
var containerHeight = document.documentElement.clientHeight - 150;
ifm.height = containerHeight;
}
}
window.onresize = function () {
if (document.getElementById("office-a")) {
var ifm = document.getElementById("office-a");
var containerHeight = document.documentElement.clientHeight - 150;
ifm.height = containerHeight;
}
}
</script>
<!--IsofficeFileEnd-->
<!--IspdfFileStart-->
<div id="pdf-d" style="text-align:center;margin:0 auto;width: calc(100%);">Loading PDF</div>
<script>
function renderpage(pdf, i) {
pdf.getPage(i).then(function (page) {
var scale = 1.5;
var viewport = page.getViewport({
scale: scale,
});
var canvas = document.getElementById("pdf-c" + i);
var context = canvas.getContext("2d");
canvas.height = viewport.height;
canvas.width = viewport.width;
canvas.style.width = "inherit";
var renderContext = {
canvasContext: context,
viewport: viewport,
};
page.render(renderContext);
});
}
function loadpdf() {
pdfjsLib.GlobalWorkerOptions.workerSrc =
"//unpkg.com/pdfjs-dist@2.5.207/es5/build/pdf.worker.js";
var loadingTask = pdfjsLib.getDocument({
url: "<!--FileDownUrl-->",
cMapUrl: "//unpkg.com/pdfjs-dist@2.5.207/cmaps/",
cMapPacked: true,
rangeChunkSize: 65535
});
loadingTask.promise.then(function (pdf) {
var pagenum = pdf.numPages;
var pdfContainer = document.getElementById("pdf-d");
pdfContainer.innerHTML = "";
for (var i = 1; i <= pagenum; i++) {
var canvasNew = document.createElement("canvas");
canvasNew.id = "pdf-c" + i;
pdfContainer.appendChild(canvasNew);
renderpage(pdf, i);
}
});
}
window.onload = function () {
if (document.getElementById("pdf-d")) {
loadpdf();
}
}
</script>
<!--IspdfFileEnd-->
<!--IstxtFileStart-->
<pre id="editor" style="white-space: pre-wrap; font-family: JetBrains Mono, Fira Code, Sarasa Mono SC, Cascadia Code, Menlo, Consolas, monaco, Noto Sans SC;"><code id="code"><!--TxtContent--></code></pre>
<script>
document.querySelector("#admin-menu").innerHTML +=
'<li class="mdui-menu-item"><a class="mdui-ripple highlight"><i class="mdui-menu-item-icon mdui-icon material-icons">style</i>markdown解析</a></li>';
document.querySelector(
".mdui-toolbar"
).innerHTML +=
'<a class="mdui-btn mdui-btn-icon mdui-ripple mdui-hidden-sm-up highlight"><i class="mdui-icon material-icons">style</i></a>';
</script>
<!--IstxtFileEnd-->
<!--IsOtherFileStart-->
<!--constStr@FileNotSupport-->
<!--IsOtherFileEnd-->
</div>
<a href="<!--FileEncodeReplaceUrl-->" target="_blank" class="mdui-fab mdui-fab-fixed mdui-ripple mdui-color-theme-accent"><i class="mdui-icon material-icons">file_download</i></a>
<!--IsFileEnd-->
</div>
<div class="mdui-text-center mdui-typo" id="footer" style="position: relative;"></div>
</body>
<script src="//unpkg.com/pdfjs-dist@2.5.207/es5/build/pdf.js"></script>
<script src="//unpkg.com/mdui@1.0.1/dist/js/mdui.min.js"></script>
<script src="//unpkg.com/sha-1@1.0.0/dist/sha1.umd.js"></script>
<script src="//unpkg.com/jquery"></script>
<script src="//unpkg.com/@highlightjs/cdn-assets/highlight.min.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/extra.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@qm97ssij9cnii7x8fnbkpq4hcgq35dyr.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@59467336fgwnpx8qbfvtmpyeefv35e5i.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@a7r8jgn2qe3eyfrkahwdnqcjf7uba95k.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@keaxctnyw29nuzpsh66g7ki4h5wzy8zn.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@pe2nahunr9aihucdgc2ssjbgnaccr5rz.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/app@tsjmiafbhksy5pyb5tchy765wshmwwnd.js"></script>
<script src="//unpkg.com/renexmoe-tw527e-edition@1.1.1/js/webpack-runtime@cx4vgpbaggjuhg8rh6m3yarhkkxy4dm3.js"></script>
<script>
window.renexmoe.toggle_theme();
</script>
<!--customScript-->
</html>