diff --git a/conststr.php b/conststr.php index df9ed6d..2be8e31 100644 --- a/conststr.php +++ b/conststr.php @@ -3,7 +3,7 @@ $exts['img'] = ['ico', 'bmp', 'gif', 'jpg', 'jpeg', 'jpe', 'jfif', 'tif', 'tiff', 'png', 'heic', 'webp']; $exts['music'] = ['mp3', 'wma', 'flac', 'wav', 'ogg']; $exts['office'] = ['doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx']; -$exts['txt'] = ['txt', 'bat', 'sh', 'php', 'asp', 'js', 'json', 'html', 'c', 'md']; +$exts['txt'] = ['txt', 'bat', 'sh', 'php', 'asp', 'js', 'json', 'html', 'c', 'md', 'py']; $exts['video'] = ['mp4', 'webm', 'mkv', 'mov', 'flv', 'blv', 'avi', 'wmv', 'm3u8']; $exts['zip'] = ['zip', 'rar', '7z', 'gz', 'tar']; @@ -13,6 +13,7 @@ $constStr = [ 'zh-cn' => '中文', 'ja' => '日本語', 'ko-kr' => '한국어', + 'fa' => 'Persian', ], 'Week' => [ 'en-us' => [ @@ -51,6 +52,15 @@ $constStr = [ 5 => '금요일', 6 => '토요일', ], + 'fa' => [ + 0 => 'یکشنبه', + 1 => 'دوشنبه', + 2 => 'سه شنبه', + 3 => 'چهارشنبه', + 4 => 'پنج شنبه', + 5 => 'جمعه', + 6 => 'شنبه', + ], ], 'EnvironmentsDescription' => [ 'en-us' => [ @@ -59,6 +69,7 @@ $constStr = [ 'domain_path' => 'more custom domain, format is a1.com:/dirto/path1|b2.com:/path2', 'diskname' => 'The disk name you want show.', 'disktag' => 'A tag used in store config and url.', + 'downloadencrypt' => '0 or 1. if 1, the files in encrypt folder can be downloaded without password', 'background' => 'Set an url as background photo, or put a \'background.jpg\' at showed path.', 'guestup_path' => 'Set guest upload dir, before set this, the files in this dir will show as normal.', 'passfile' => 'The password of dir will save in this file.', @@ -72,6 +83,7 @@ $constStr = [ 'domain_path' => '使用多个自定义域名时,指定每个域名看到的目录。格式为a1.com:/dirto/path1|b1.com:/path2,比private_path优先。', 'diskname' => '这个盘你想显示什么名称。', 'disktag' => '一个标签,用于保存配置,多盘时会显示在url中。', + 'downloadencrypt' => '0 或 1。如果 1, 那加密目录内的文件可以不需要密码就能下载。', 'background' => '设置一个url作为背景,或者在你显示的目录放一个background.jpg文件。', 'guestup_path' => '设置游客上传路径(图床路径),不设置这个值时该目录内容会正常列文件出来,设置后只有上传界面,不显示其中文件(登录后显示)。', 'passfile' => '自定义密码文件的名字,可以是\'pppppp\',也可以是\'aaaa.txt\'等等;列目录时不会显示,只有知道密码才能查看或下载此文件。密码是这个文件的内容,可以空格、可以中文;', @@ -85,6 +97,7 @@ $constStr = [ 'domain_path' => '複数のカスタムドメイン名を使用する場合、各ドメイン名に表示されるディレクトリを指定します。形式はa1.com:/dirto/path1|b1.com:/path2で、private_pathよりも優先されます。', 'diskname' => '', 'disktag' => '', + 'downloadencrypt' => '', 'background' => '', 'guestup_path' => 'マップベッドのパスを設定します。この値が設定されていない場合、ディレクトリの内容は通常ファイルにリストされ、設定後はアップロードインターフェイスのみが表示されます。', 'passfile' => 'カスタムパスワードファイルの名前は、\'pppppp \'、\'aaaa.txt \'などの場合があります。ディレクトリをリストするときには表示されません。パスワードを知っている場合にのみ、このファイルを表示またはダウンロードできます。 パスワードはこのファイルの内容であり、スペースまたは漢字を使用できます。', @@ -98,6 +111,7 @@ $constStr = [ 'domain_path' => '여러 개의 사용자 정의 도메인 이름을 사용하는 경우 각 도메인 이름에 표시되는 디렉토리를 지정하십시오. 형식은 a1.com:/dirto/path1|b1.com:/path2이며 private_path보다 우선합니다.', 'diskname' => '이 디스크에 어떤 이름을 표시 하시겠습니까?', 'disktag' => '레이블은 구성을 저장하는 데 사용되며 디스크가 여러 개인 경우 URL에 표시됩니다.', + 'downloadencrypt' => '', 'background' => 'URL을 배경으로 설정하거나 표시하는 디렉토리에 background.jpg 파일을 넣으십시오.', 'guestup_path' => '방문자의 업로드 경로 (맵 베드 경로)를 설정합니다.이 값을 설정하지 않으면 디렉토리의 내용이 파일로 표시되고 설정 후에는 업로드 인터페이스 만 표시되고 파일은 표시되지 않습니다 (로그인 후 표시).', 'passfile' => '사용자 정의 비밀번호 파일의 이름은 \'pppppp\' \'aaaa.txt \'등이 될 수 있으며 디렉토리가 나열되어 있으면 표시되지 않으며 비밀번호를 알고있는 경우에만이 파일을 보거나 다운로드 할 수 있습니다. 암호는이 파일의 내용이며 공백이거나 한국어 일 수 있습니다.', @@ -105,497 +119,593 @@ $constStr = [ 'sitename' => '웹 사이트 이름', 'Onedrive_ver' => 'Onedrive 버전', ], + 'fa' => [ + 'admin' => 'رمز عبور ادمین، در صورت خالی بودن دکمه لاگین به نمایش در نمی‌آید', + 'adminloginpage' => 'در صورت تنظیم ، دکمه ورود نمایش داده نمی شود و صفحه ورود دیگر \?admin\ نیست بلکه \?{مقدار ورودی شما}\ است.', + 'domain_path' => 'تنظیم دامنه سفارشی، به صورت a1.com:/dirto/path1|b2.com:/path2', + 'diskname' => 'نام دیسک که می‌خواهید نشان دهید.', + 'disktag' => 'تگی که در ذخیره پیکربندی و نشانی اینترنتی استفاده می‌شود.', + 'downloadencrypt' => '', + 'background' => 'تنظیم عکس پشت زمینه به صورت url یا قرار دادن بک گراند به صورت دستی در مسیر نشان داده شده.', + 'guestup_path' => 'قبل از تنظیم این گزینه ، فایل آپلود guest را تنظیم کنید ، پرونده های موجود در این حالت به صورت عادی نشان داده می شوند.', + 'passfile' => 'رمز عبور dir در این فایل ذخیره می شود.', + 'public_path' => 'این مسیر Onedrive را هنگامی که از طریق آدرس طولانی API Gateway استفاده می کنید ، نشان دهید. فایل های نمایش عمومی کمتر از خصوصی.', + 'sitename' => 'نام سایت', + 'Onedrive_ver' => 'ورژن Onedrive', + ], ], 'SetSecretsFirst' => [ 'en-us' => 'Set API in Config first! or reinstall.', 'zh-cn' => '先在环境变量设置API!或重装。', 'ja' => '最初に環境変数にAPIを設定してください!', 'ko-kr' => '먼저 환경 변수에서 API를 설정하십시오! 또는 다시 설치하십시오.', + 'fa' => 'ابتدا API را در پیکربندی تنظیم کنید! یا دوباره نصب کنید.', ], - 'RefleshtoLogin' => [ - 'en-us' => 'Reflesh and login.', + 'RefreshtoLogin' => [ + 'en-us' => 'Refresh and login.', 'zh-cn' => '请刷新页面后重新登录', 'ja' => 'ページを更新して、再度ログインしてください', 'ko-kr' => '페이지를 새로 고침 하시고 다시 로그인하십시오', + 'fa' => 'رفرش و لاگین.', ], 'AdminLogin' => [ 'en-us' => 'Admin Login', 'zh-cn' => '管理登录', 'ja' => 'ログインを管理する', 'ko-kr' => '로그인 관리', + 'fa' => 'ورود ادمین', ], 'LoginSuccess' => [ 'en-us' => 'Login Success!', 'zh-cn' => '登录成功,正在跳转', 'ja' => 'ログイン成功、ジャンプ', 'ko-kr' => '로그인 성공, 점프', + 'fa' => 'ورود با موفقیت انجام شد!', ], 'InputPassword' => [ 'en-us' => 'Input Password', 'zh-cn' => '输入密码', 'ja' => 'パスワードを入力してください', 'ko-kr' => '비밀번호 입력', + 'fa' => 'رمز عبور را وارد کنید', ], 'Login' => [ 'en-us' => 'Login', 'zh-cn' => '登录', 'ja' => 'サインイン', 'ko-kr' => '로그인', + 'fa' => 'ورود', ], 'encrypt' => [ 'en-us' => 'Encrypt', 'zh-cn' => '加密', 'ja' => '暗号化', 'ko-kr' => '암호화', + 'fa' => 'رمزگذاری', ], 'SetpassfileBfEncrypt' => [ 'en-us' => 'Set \'passfile\' in Environments before encrypt', 'zh-cn' => '先在环境变量设置passfile才能加密', 'ja' => '最初に暗号化する環境変数にパスファイルを設定します', 'ko-kr' => '암호화하기 전에 환경 변수에 패스 파일을 설정하십시오', + 'fa' => 'قبل از رمزگذاری \ "pass file \" را در محیط تنظیم کنید', ], 'updateProgram' => [ 'en-us' => 'Update Program', 'zh-cn' => '一键更新', 'ja' => 'ワンクリック更新', 'ko-kr' => '원 클릭 업데이트', + 'fa' => 'برنامه را به روز کنید', ], 'UpdateSuccess' => [ 'en-us' => 'Program update Success!', 'zh-cn' => '程序升级成功!', 'ja' => 'プログラムのアップグレードに成功しました!', 'ko-kr' => '프로그램 업그레이드 성공!', + 'fa' => 'موفقیت به روز رسانی برنامه!', ], 'Setup' => [ 'en-us' => 'Setup', 'zh-cn' => '设置', 'ja' => '設定する', 'ko-kr' => '설정', + 'fa' => 'نصب', ], 'Back' => [ 'en-us' => 'Back', 'zh-cn' => '返回', 'ja' => 'back', 'ko-kr' => '돌아 가기', + 'fa' => 'بازگشت', ], 'NotNeedUpdate' => [ 'en-us' => 'Not Need Update', 'zh-cn' => '不需要更新', 'ja' => '更新不要', 'ko-kr' => '업데이트가 필요하지 않습니다', + 'fa' => 'آپدیت لازم نیست', ], 'PlatformConfig' => [ 'en-us' => 'Platform Config', 'zh-cn' => '平台变量', 'ja' => 'プラットフォーム変数', 'ko-kr' => '플랫폼 변수', + 'fa' => 'پیکربندی پلتفرم', ], 'DelDisk' => [ 'en-us' => 'Del This Disk', 'zh-cn' => '删除此盘', 'ja' => 'このディスクを削除', 'ko-kr' => '이 디스크를 삭제', + 'fa' => 'پاک کردن این دیسک', ], 'AddDisk' => [ 'en-us' => 'Add Onedrive Disk', 'zh-cn' => '添加Onedrive盘', 'ja' => 'Onedriveを追加', 'ko-kr' => 'Onedrive 추가', + 'fa' => 'اضافه کردن دیسک Onedrive', ], 'Home' => [ 'en-us' => 'Home', 'zh-cn' => '首页', 'ja' => 'ホーム', 'ko-kr' => '홈', + 'fa' => 'خانه', ], 'NeedUpdate' => [ 'en-us' => 'Program can update
Click setup in Operate at top.', 'zh-cn' => '可以升级程序
在上方管理菜单中
进入设置页面升级', 'ja' => 'プログラムをアップグレードできます
上記の管理メニューで
アップグレードする設定ページに入ります', 'ko-kr' => '프로그램을 업그레이드 할 수 있습니다.
위의 관리 메뉴에서
업그레이드 할 설정 페이지를 입력하십시오.', + 'fa' => 'برنامه می تواند آپدیت شود
روی گزینه نصب در بالای صفحه کلیک کنید.', ], 'Operate' => [ 'en-us' => 'Operate', 'zh-cn' => '管理', 'ja' => '管理', 'ko-kr' => '관리', + 'fa' => 'مدیریت', ], 'Logout' => [ 'en-us' => 'Logout', 'zh-cn' => '登出', 'ja' => 'ログアウトする', 'ko-kr' => '로그 아웃', + 'fa' => 'خروج', ], 'Create' => [ 'en-us' => 'Create', 'zh-cn' => '新建', 'ja' => '新しい', 'ko-kr' => '새로운', + 'fa' => 'ایجاد کردن', ], 'Download' => [ 'en-us' => 'download', 'zh-cn' => '下载', 'ja' => 'ダウンロードする', 'ko-kr' => '다운로드', + 'fa' => 'دانلود', ], 'ClicktoEdit' => [ 'en-us' => 'Click to edit', 'zh-cn' => '点击后编辑', 'ja' => 'クリック後に編集', 'ko-kr' => '클릭 후 편집', + 'fa' => 'برای ویرایش کلیک کنید', ], 'Save' => [ 'en-us' => 'Save', 'zh-cn' => '保存', 'ja' => '保存する', 'ko-kr' => '저장', + 'fa' => 'ذخیره', ], 'FileNotSupport' => [ 'en-us' => 'File not support preview.', 'zh-cn' => '文件格式不支持预览', 'ja' => 'ファイル形式はプレビューをサポートしていません', 'ko-kr' => '파일 형식은 미리보기를 지원하지 않습니다', + 'fa' => 'پیش نمایش برای این فایل پشتیبانی نمی شود.', ], 'File' => [ 'en-us' => 'File', 'zh-cn' => '文件', 'ja' => 'ファイル', 'ko-kr' => '파일', + 'fa' => 'فایل', ], 'ShowThumbnails' => [ 'en-us' => 'Thumbnails', 'zh-cn' => '图片缩略', 'ja' => '画像のサムネイル', 'ko-kr' => '사진 섬네일', + 'fa' => 'تصویر بندانگشتی', ], 'CopyAllDownloadUrl' => [ 'en-us' => 'CopyAllDownloadUrl', 'zh-cn' => '复制所有下载链接', 'ja' => 'すべてのダウンロードリンクをコピー', 'ko-kr' => '모든 다운로드 링크 복사', + 'fa' => 'کپی از تمام لینک ها', ], 'EditTime' => [ 'en-us' => 'EditTime', 'zh-cn' => '修改时间', 'ja' => '変更時間', 'ko-kr' => '수정 시간', + 'fa' => 'زمان ویرایش', ], 'Size' => [ 'en-us' => 'Size', 'zh-cn' => '大小', 'ja' => 'サイズ ', 'ko-kr' => '사이즈', + 'fa' => 'سایز', ], 'Rename' => [ 'en-us' => 'Rename', 'zh-cn' => '重命名', 'ja' => '名前を変更', 'ko-kr' => '이름 바꾸기', + 'fa' => 'تغییر نام', ], 'Move' => [ 'en-us' => 'Move', 'zh-cn' => '移动', 'ja' => '移動する', 'ko-kr' => '이동', + 'fa' => 'انتقال', ], 'Copy' => [ 'en-us' => 'Copy', 'zh-cn' => '复制', 'ja' => 'コピー', 'ko-kr' => '복사', + 'fa' => 'کپی', ], 'CannotMove' => [ 'en-us' => 'Can not Move!', 'zh-cn' => '不能移动!', 'ja' => '動かない!', 'ko-kr' => '움직일 수 없어!', + 'fa' => 'نمی‌تواند منتقل شود!', ], 'Delete' => [ 'en-us' => 'Delete', 'zh-cn' => '删除', 'ja' => '削除する', 'ko-kr' => '삭제', + 'fa' => 'حذف کردن', ], 'PrePage' => [ 'en-us' => 'PrePage', 'zh-cn' => '上一页', 'ja' => '前へ', 'ko-kr' => '이전', + 'fa' => 'صفحه قبل', ], 'NextPage' => [ 'en-us' => 'NextPage', 'zh-cn' => '下一页', 'ja' => '次のページ', 'ko-kr' => '다음 페이지', + 'fa' => 'صفحه بعد', ], 'Upload' => [ 'en-us' => 'Upload', 'zh-cn' => '上传', 'ja' => 'アップロードする', 'ko-kr' => '업로드', + 'fa' => 'آپلود', ], 'FileSelected' => [ 'en-us' => 'Select File', 'zh-cn' => '选择文件', 'ja' => 'ファイルを選択', 'ko-kr' => '파일 선택', + 'fa' => 'انتخاب فایل', ], 'NoFileSelected' => [ 'en-us' => 'Not Select File', 'zh-cn' => '没有选择文件', 'ja' => 'ファイルが選択されていません', 'ko-kr' => '선택된 파일이 없습니다', + 'fa' => 'فایل را انتخاب نکنید', ], 'Submit' => [ 'en-us' => 'Submit', 'zh-cn' => '确认', 'ja' => '確認する', 'ko-kr' => '확인', + 'fa' => 'ارسال', ], 'Close' => [ 'en-us' => 'Close', 'zh-cn' => '关闭', 'ja' => '閉じる', 'ko-kr' => '닫기', + 'fa' => 'بستن', ], 'InputPasswordUWant' => [ 'en-us' => 'Input Password you Want', 'zh-cn' => '输入想要设置的密码', 'ja' => '設定するパスワードを入力してください', 'ko-kr' => '설정하려는 비밀번호를 입력하십시오', + 'fa' => 'پسورد خود را وارد کنید', ], 'ParentDir' => [ 'en-us' => 'Parent Dir', 'zh-cn' => '上一级目录', 'ja' => '親ディレクトリ', 'ko-kr' => '부모 디렉토리', + 'fa' => 'مسیر', ], 'Folder' => [ 'en-us' => 'Folder', 'zh-cn' => '文件夹', 'ja' => 'フォルダー', 'ko-kr' => '폴더', + 'fa' => 'پوشه', ], 'Name' => [ 'en-us' => 'Name', 'zh-cn' => '名称', 'ja' => '名前', 'ko-kr' => '이름', + 'fa' => 'نام', ], 'Content' => [ 'en-us' => 'Content', 'zh-cn' => '内容', 'ja' => '内容', 'ko-kr' => '내용', + 'fa' => 'محتوا', ], 'CancelEdit' => [ 'en-us' => 'Cancel Edit', 'zh-cn' => '取消编辑', 'ja' => '編集をキャンセル', 'ko-kr' => '편집 취소', + 'fa' => 'لغو ویرایش', ], 'GetFileNameFail' => [ 'en-us' => 'Fail to Get File Name!', 'zh-cn' => '获取文件名失败!', 'ja' => 'ファイル名を取得できませんでした!', 'ko-kr' => '파일 이름을 가져 오지 못했습니다!', + 'fa' => 'نام فایل به دست نیامد!', ], 'GetUploadLink' => [ 'en-us' => 'Get Upload Link', 'zh-cn' => '获取上传链接', 'ja' => 'アップロードリンクを取得', 'ko-kr' => '업로드 링크 받기', + 'fa' => 'دریافت لینک آپلود', ], 'UpFileTooLarge' => [ 'en-us' => 'The File is too Large!', 'zh-cn' => '文件过大,终止上传。', 'ja' => '超えると、アップロードは終了します。', 'ko-kr' => '파일이 너무 커서 업로드가 종료되었습니다.', + 'fa' => 'فایل خیلی بزرگ است!', ], 'UploadStart' => [ 'en-us' => 'Upload Start', 'zh-cn' => '开始上传', 'ja' => 'アップロードを開始', 'ko-kr' => '업로드 시작', + 'fa' => 'شروع آپلود', ], 'UploadStartAt' => [ 'en-us' => 'Start At', 'zh-cn' => '开始于', 'ja' => 'で開始', 'ko-kr' => '에서 시작', + 'fa' => 'شروع از', ], 'ThisTime' => [ 'en-us' => 'This Time', 'zh-cn' => '本次', 'ja' => '今回は', 'ko-kr' => '이번에는', + 'fa' => 'این زمان', ], 'LastUpload' => [ 'en-us' => 'Last time Upload', 'zh-cn' => '上次上传', 'ja' => '上回は', 'ko-kr' => '마지막 업로드', + 'fa' => 'آخرین زمان آپلود', ], 'AverageSpeed' => [ 'en-us' => 'AverageSpeed', 'zh-cn' => '平均速度', 'ja' => '平均速度', 'ko-kr' => '평균 속도', + 'fa' => 'میانگین سرعت', ], 'CurrentSpeed' => [ 'en-us' => 'CurrentSpeed', 'zh-cn' => '即时速度', 'ja' => 'インスタントスピード', 'ko-kr' => '즉각적인 속도', + 'fa' => 'سرعت فعلی', ], 'Expect' => [ 'en-us' => 'Expect', 'zh-cn' => '预计还要', 'ja' => '期待される', 'ko-kr' => '예상', + 'fa' => 'انتظار', ], 'EndAt' => [ 'en-us' => 'End At', 'zh-cn' => '结束于', 'ja' => 'で終了', 'ko-kr' => '에 끝남', + 'fa' => 'پایان از', ], 'UploadErrorUpAgain' => [ 'en-us' => 'Maybe error, do upload again.', 'zh-cn' => '可能出错,重新上传。', 'ja' => '間違っている可能性があります。もう一度アップロードしてください。', 'ko-kr' => '잘못되었을 수 있습니다. 다시 업로드하십시오.', + 'fa' => 'خطا، دوباره آپلود کنید', ], 'UploadComplete' => [ 'en-us' => 'Upload Complete', 'zh-cn' => '上传完成', 'ja' => 'アップロード完了', 'ko-kr' => '업로드 완료', + 'fa' => 'آپلود با موفقیت انجام شد', ], 'UploadFail23' => [ 'en-us' => 'Upload Fail, contain #.', 'zh-cn' => '目录或文件名含有#,上传失败。', 'ja' => 'ディレクトリまたはファイル名に#が含まれています。アップロードに失敗しました。', 'ko-kr' => '디렉토리 또는 파일 이름에 #이 포함되어 있습니다. 업로드하지 못했습니다.', + 'fa' => 'بارگذاری ناموفق، حاوی #.', ], 'defaultSitename' => [ 'en-us' => 'OneManager', 'zh-cn' => 'OneManager', 'ja' => 'OneManager', 'ko-kr' => 'OneManager', + 'fa' => 'OneManager', ], 'SavingToken' => [ 'en-us' => 'Saving refresh_token!', 'zh-cn' => '正在保存 refresh_token!', 'ja' => 'refresh_tokenを保存しています!', 'ko-kr' => 'refresh_token 저장 중!', + 'fa' => 'در حال ذخیره refresh_token!', ], 'MayinEnv' => [ 'en-us' => 'The \'Onedrive_ver\' may in Config', 'zh-cn' => 'Onedrive_ver应该已经写入', 'ja' => 'Onedrive_verは環境変数に書き込まれている必要があります', 'ko-kr' => 'Onedrive_verが書き込まれている必要があります', + 'fa' => 'The \'Onedrive_ver\' may in Config', ], 'Wait' => [ 'en-us' => 'Wait', 'zh-cn' => '稍等', 'ja' => 'ちょっと待って', 'ko-kr' => '잠깐만', + 'fa' => 'منتظر بمانید', ], 'WaitJumpIndex' => [ 'en-us' => 'Wait 5s jump to Home page', 'zh-cn' => '等5s跳到首页', 'ja' => '5秒待ってホームページにジャンプします', 'ko-kr' => '5 초 동안 홈페이지로 이동', + 'fa' => '۵ دقیقه صبر کنید تا به صفحه نخست برگردید', ], 'JumptoOffice' => [ 'en-us' => 'Login Office and Get a refresh_token', 'zh-cn' => '跳转到Office,登录获取refresh_token', 'ja' => 'Officeにジャンプしてログインし、refresh_tokenを取得します', 'ko-kr' => '사무실로 이동하여 로그인하여 refresh_token을 받으십시오.', + 'fa' => 'وارد Office شوید و یک refresh_token دریافت کنید', ], 'OnedriveDiskTag' => [ 'en-us' => 'Onedrive Disk Tag', 'zh-cn' => 'Onedrive 标签', 'ja' => 'Onedriveタグ', 'ko-kr' => 'Onedrive 태그', + 'fa' => 'برچسب دیسک Onedrive', ], 'OnedriveDiskName' => [ 'en-us' => 'Onedrive Showed Name', 'zh-cn' => 'Onedrive 显示名称', 'ja' => 'Onedrive表示名', 'ko-kr' => 'Onedrive 표시 이름', + 'fa' => 'نام نشان داده شده Onedrive', ], 'OndriveVerMS' => [ 'en-us' => 'default(Onedrive, Onedrive for business)', 'zh-cn' => '默认(支持商业版与个人版)', 'ja' => 'デフォルト(商用版および個人版をサポート)', 'ko-kr' => '기본 (상업용 및 개인용 버전 지원)', + 'fa' => 'پیش فرض(Onedrive, Onedrive for business)', ], 'OndriveVerCN' => [ 'en-us' => 'Onedrive in China', 'zh-cn' => '世纪互联版', 'ja' => '中国のOnedrive', 'ko-kr' => '중국 Onedrive', + 'fa' => 'Onedrive در چین', ], 'OndriveVerMSC' =>[ 'en-us' => 'default but use customer app id & secret', 'zh-cn' => '国际版,自己申请应用ID与机密', 'ja' => '国際版、アプリケーションIDとシークレットを自分で申請する', 'ko-kr' => '국제 버전, 응용 프로그램 ID 및 비밀 신청', + 'fa' => 'به طور پیش فرض اما از شناسه برنامه و سکرت استفاده کنید', ], 'GetSecretIDandKEY' =>[ 'en-us' => 'Get customer app id & secret', 'zh-cn' => '申请应用ID与机密', 'ja' => 'アプリケーションIDとシークレット', + 'fa' => 'دریافت شناسه برنامه و سکرت', ], '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!', 'zh-cn' => '标签只能以字母开头,以字母或数字结尾,至少2位', 'ja' => 'タグは、文字で始まり、文字または数字で終わる必要があります。少なくとも2つ', 'ko-kr' => '태그는 문자로 시작하고 문자 또는 숫자로 끝나야합니다 (2 이상).', + 'fa' => 'برچسب باید با یک حرف شروع شود، با یک حرف یا رقم پایان یابد و تنها می‌تواند حاوی حروف کوچک، ارقام و خط فاصله، حداقل ۲ حرف باشد!', ], 'ClickInstall' =>[ 'en-us' => 'Click to install the project', 'zh-cn' => '点击开始安装程序', 'ja' => 'クリックしてインストールプロセスを開始します', 'ko-kr' => '설치 과정을 시작하려면 클릭', + 'fa' => 'برای نصب پروژه کلیک کنید', ], 'LogintoBind' =>[ 'en-us' => 'then login and bind your onedrive in setup', 'zh-cn' => '然后登录后在设置中绑定你的onedrive。', 'ja' => '次に、ログインして、設定でonedriveをバインドします。', 'ko-kr' => '그런 다음 로그인하여 onedrive를 설정에 바인딩하십시오.', + 'fa' => 'پس از آن وارد سیستم شوید و تنظیمات خود را در onedrive متصل کنید', ], 'MakesuerWriteable' =>[ 'en-us' => 'Plase make sure the config.php is writeable. run writeable.sh.', 'zh-cn' => '确认config.php可写。', 'ja' => 'config.phpが書き込み可能であることを確認してください。', 'ko-kr' => 'config.php가 쓰기 가능한지 확인하십시오.', + 'fa' => 'اطمینان حاصل کنید که config.php قابل نوشتن است. writeable.sh را اجرا کنید.', ], 'MakesuerRewriteOn' =>[ 'en-us' => 'Plase make sure the RewriteEngine is On.', 'zh-cn' => '确认重写(伪静态)功能启用。', 'ja' => '書き換え(擬似静的)機能が有効になっていることを確認します。', 'ko-kr' => '다시 쓰기 (의사 정적) 기능이 활성화되어 있는지 확인하십시오.', + 'fa' => 'لطفاً مطمئن شوید که RewriteEngine روشن است.', ], - 'Reflesh' => [ - 'en-us' => 'Reflesh', + 'Refresh' => [ + 'en-us' => 'Refresh', 'zh-cn' => '刷新', 'ja' => 'リフレッシュ', 'ko-kr' => '새로 고침', + 'fa' => 'رفرش', ], 'SelectLanguage' => [ 'en-us' => 'Select Language', 'zh-cn' => '选择语言', 'ja' => '言語を選択してください', 'ko-kr' => '언어를 선택하십시오', + 'fa' => 'زبان را انتخاب کنید', ], 'RefreshCache' => [ 'en-us' => 'RefreshCache', 'zh-cn' => '刷新缓存', 'ja' => 'キャッシュを再構築', 'ko-kr' => '캐시 플러시', + 'fa' => 'رفرش cache', ], ]; diff --git a/function/common.php b/function/common.php index f9b87e6..a60a01f 100644 --- a/function/common.php +++ b/function/common.php @@ -8,7 +8,9 @@ $Base64Env = [ //'admin', //'adminloginpage', 'background', + 'diskname', //'disktag', + //'downloadencrypt', //'function_name', // used in heroku. //'language', //'passfile', @@ -19,7 +21,6 @@ $Base64Env = [ 'client_secret', 'domain_path', 'guestup_path', - 'diskname', 'public_path', //'refresh_token', //'token_expires', @@ -61,9 +62,10 @@ $InnerEnv = [ 'Onedrive_ver', 'client_id', 'client_secret', - 'domain_path', - 'guestup_path', 'diskname', + 'domain_path', + 'downloadencrypt', + 'guestup_path', 'public_path', 'refresh_token', 'token_expires', @@ -73,9 +75,10 @@ $ShowedInnerEnv = [ //'Onedrive_ver', //'client_id', //'client_secret', - 'domain_path', - 'guestup_path', 'diskname', + 'domain_path', + 'downloadencrypt', + 'guestup_path', 'public_path', //'refresh_token', //'token_expires', @@ -270,24 +273,25 @@ function encode_str_replace($str) function gethiddenpass($path,$passfile) { - $password=getcache('path_' . $path . '/?password'); + $path1 = path_format($_SERVER['list_path'] . path_format($path)); + $password=getcache('path_' . $path1 . '/?password'); if ($password=='') { - $ispassfile = fetch_files(spurlencode(path_format($path . '/' . $passfile),'/')); + $ispassfile = fetch_files(path_format($path . '/' . urlencode($passfile))); //echo $path . '
' . json_encode($ispassfile, JSON_PRETTY_PRINT) . '
'; if (isset($ispassfile['file'])) { $arr = curl_request($ispassfile['@microsoft.graph.downloadUrl']); if ($arr['stat']==200) { $passwordf=explode("\n",$arr['body']); $password=$passwordf[0]; - $password=md5($password); - savecache('path_' . $path . '/?password', $password); + if ($password!='') $password=md5($password); + savecache('path_' . $path1 . '/?password', $password); return $password; } else { //return md5('DefaultP@sswordWhenNetworkError'); return md5( md5(time()).rand(1000,9999) ); } } else { - savecache('path_' . $path . '/?password', 'null'); + savecache('path_' . $path1 . '/?password', 'null'); if ($path !== '' ) { $path = substr($path,0,strrpos($path,'/')); return gethiddenpass($path,$passfile); @@ -348,12 +352,15 @@ function get_timezone($timezone = '8') function message($message, $title = 'Message', $statusCode = 200) { return output(' +

' . $title . '

+ ' . $message . ' +

', $statusCode); @@ -391,6 +398,7 @@ function passhidden($path) $path = str_replace('+','%2B',$path); $path = str_replace('&','&', path_format(urldecode($path))); if (getConfig('passfile') != '') { + $path = spurlencode($path,'/'); if (substr($path,-1)=='/') $path=substr($path,0,-1); $hiddenpass=gethiddenpass($path,getConfig('passfile')); if ($hiddenpass != '') { @@ -482,6 +490,7 @@ function main($path) $constStr['language'] = $_COOKIE['language']; if ($constStr['language']=='') $constStr['language'] = getConfig('language'); if ($constStr['language']=='') $constStr['language'] = 'en-us'; + $_SERVER['language'] = $constStr['language']; $_SERVER['PHP_SELF'] = path_format($_SERVER['base_path'] . $path); $_SERVER['base_disk_path'] = $_SERVER['base_path']; $disktags = explode("|",getConfig('disktag')); @@ -594,7 +603,7 @@ function main($path) return $tmp; } } else { - if ($_SERVER['ajax']) return output(getconstStr('RefleshtoLogin'),401); + if ($_SERVER['ajax']) return output(getconstStr('RefreshtoLogin'),401); } $_SERVER['ishidden'] = passhidden($path); if ($_GET['thumbnails']) { @@ -607,7 +616,7 @@ function main($path) $files = list_files($path); if (isset($files['file']) && !$_GET['preview']) { // is file && not preview mode - if ($_SERVER['ishidden']<4) return output('', 302, [ 'Location' => $files['@microsoft.graph.downloadUrl'] ]); + if ( $_SERVER['ishidden']<4 || (!!getConfig('downloadencrypt')&&$files['name']!=getConfig('passfile')) ) return output('', 302, [ 'Location' => $files['@microsoft.graph.downloadUrl'] ]); } if ( isset($files['folder']) || isset($files['file']) ) { return render_list($path, $files); @@ -622,8 +631,9 @@ function list_files($path) $path = path_format($path); if ($_SERVER['is_guestup_path']&&!$_SERVER['admin']) { $files = json_decode('{"folder":{}}', true); - } elseif ($_SERVER['ishidden']==4) { - $files = json_decode('{"folder":{}}', true); + } elseif (!getConfig('downloadencrypt')) { + if ($_SERVER['ishidden']==4) $files = json_decode('{"folder":{}}', true); + else $files = fetch_files($path); } else { $files = fetch_files($path); } @@ -702,7 +712,8 @@ function adminoperate($path) $filename = path_format($path1 . '/' . $foldername . '/' . getConfig('passfile')); //echo $foldername; $result = MSAPI('PUT', $filename, $_GET['encrypt_newpass'], $_SERVER['access_token']); - //savecache('path_' . $path1, json_decode('{}',true), 1); + $path1 = path_format($path1 . '/' . $foldername ); + savecache('path_' . $path1 . '/?password', '', 1); return output($result['body'], $result['stat']); } if ($_GET['move_folder']!='') { @@ -789,8 +800,8 @@ function adminoperate($path) return output($result['body'], $result['stat']); } if ($_GET['RefreshCache']) { - //savecache('path_' . $path1, json_decode('{}',true), 1); - savecache('path_' . $path . '/?password', '', 1); + $path1 = path_format($_SERVER['list_path'] . path_format($path)); + savecache('path_' . $path1 . '/?password', '', 1); return message('', getconstStr('RefreshCache'), 302); } return $tmparr; diff --git a/function/heroku.php b/function/heroku.php index 3e3af96..f1c0c6c 100644 --- a/function/heroku.php +++ b/function/heroku.php @@ -156,7 +156,7 @@ function get_refresh_token() if ($_GET['install0']) { if ($_POST['disktag_add']!='' && ($_POST['Onedrive_ver']=='MS' || $_POST['Onedrive_ver']=='CN' || $_POST['Onedrive_ver']=='MSC')) { if (in_array($_COOKIE['disktag'], $CommonEnv)) { - return message('Do not input ' . $envs . '
', 'Error', 201); + return message('Do not input ' . $envs . '
', 'Error', 201); } $_SERVER['disktag'] = $_COOKIE['disktag']; $tmp['disktag_add'] = $_POST['disktag_add']; @@ -174,7 +174,7 @@ function get_refresh_token() $html = $response['id'] . '
' . $response['message'] . '

function_name:' . $_SERVER['function_name'] . '
-'; +'; $title = 'Error'; } return message($html, $title, 201); @@ -253,7 +253,7 @@ function install() $html = $response['id'] . '
' . $response['message'] . '

function_name:' . $_SERVER['function_name'] . '
-'; +'; $title = 'Error'; } else { return output('Jump', 302); @@ -372,11 +372,11 @@ function EnvOpt($function_name, $needUpdate = 0) $html = $response['id'] . '
' . $response['message'] . '

function_name:' . $_SERVER['function_name'] . '
-'; +'; $title = 'Error'; } else { $html .= getconstStr('UpdateSuccess') . '
-'; +'; $title = getconstStr('Setup'); } return message($html, $title); @@ -411,7 +411,7 @@ function_name:' . $_SERVER['function_name'] . '
$html = $response['id'] . '
' . $response['message'] . '

function_name:' . $_SERVER['function_name'] . '
-'; +'; $title = 'Error'; } else { $html .= ''; diff --git a/function/normal.php b/function/normal.php index 1953922..7cf20b3 100644 --- a/function/normal.php +++ b/function/normal.php @@ -171,7 +171,7 @@ function get_refresh_token() if ($_GET['install0']) { if ($_POST['disktag_add']!='' && ($_POST['Onedrive_ver']=='MS' || $_POST['Onedrive_ver']=='CN' || $_POST['Onedrive_ver']=='MSC')) { if (in_array($_COOKIE['disktag'], $CommonEnv)) { - return message('Do not input ' . $envs . '
', 'Error', 201); + return message('Do not input ' . $envs . '
', 'Error', 201); } $_SERVER['disktag'] = $_COOKIE['disktag']; $tmp['disktag_add'] = $_POST['disktag_add']; @@ -187,7 +187,7 @@ function get_refresh_token() if (!$response) { $html = $response . '
Can not write config to file.
-'; +'; $title = 'Error'; } return message($html, $title, 201); @@ -252,7 +252,7 @@ function install() if (!$response) { $html = $response . '
Can not write config to file.
-'; +'; $title = 'Error'; return message($html, $title, 201); } else { @@ -343,11 +343,11 @@ function EnvOpt($function_name, $needUpdate = 0) function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $namespace . '
-'; +'; $title = 'Error'; } else { $html .= getconstStr('UpdateSuccess') . '
-'; +'; $title = getconstStr('Setup'); } return message($html, $title); @@ -372,7 +372,7 @@ namespace:' . $namespace . '
$response = setConfig($tmp, $_SERVER['disk_oprating']); if (!$response) { $html = $response . '
-'; +'; $title = 'Error'; } else { $html .= ''; diff --git a/function/scf.php b/function/scf.php index 3e62265..02d3cf3 100644 --- a/function/scf.php +++ b/function/scf.php @@ -35,8 +35,11 @@ function GetPathSetting($event, $context) $serviceId = $event['requestContext']['serviceId']; if ( $serviceId === substr($host_name,0,strlen($serviceId)) ) { $_SERVER['base_path'] = '/'.$event['requestContext']['stage'].'/'.$_SERVER['function_name'].'/'; - $_SERVER['Region'] = substr($host_name, strpos($host_name, '.')+1); - $_SERVER['Region'] = substr($_SERVER['Region'], 0, strpos($_SERVER['Region'], '.')); + $_SERVER['Region'] = getenv('Region'); + if ($_SERVER['Region'] == '') { + $_SERVER['Region'] = substr($host_name, strpos($host_name, '.')+1); + $_SERVER['Region'] = substr($_SERVER['Region'], 0, strpos($_SERVER['Region'], '.')); + } $path = substr($event['path'], strlen('/'.$_SERVER['function_name'].'/')); } else { $_SERVER['base_path'] = $event['requestContext']['path']; @@ -178,7 +181,7 @@ function get_refresh_token() if ($_GET['install0']) { if ($_POST['disktag_add']!='' && ($_POST['Onedrive_ver']=='MS' || $_POST['Onedrive_ver']=='CN' || $_POST['Onedrive_ver']=='MSC')) { if (in_array($_COOKIE['disktag'], $CommonEnv)) { - return message('Do not input ' . $envs . '
', 'Error', 201); + return message('Do not input ' . $envs . '
', 'Error', 201); } $_SERVER['disktag'] = $_COOKIE['disktag']; $tmp['disktag_add'] = $_POST['disktag_add']; @@ -197,7 +200,7 @@ function get_refresh_token() function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $_SERVER['namespace'] . '
-'; +'; $title = 'Error'; } return message($html, $title, 201); @@ -275,7 +278,7 @@ function install() function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $_SERVER['namespace'] . '
-'; +'; $title = 'Error'; } else { $trynum = 0; @@ -514,12 +517,12 @@ function EnvOpt($function_name, $needUpdate = 0) function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $namespace . '
-'; +'; $title = 'Error'; } else { WaitSCFStat(); $html .= getconstStr('UpdateSuccess') . '
-'; +'; $title = getconstStr('Setup'); } return message($html, $title); @@ -548,7 +551,7 @@ namespace:' . $namespace . '
function_name:' . $_SERVER['function_name'] . '
Region:' . $_SERVER['Region'] . '
namespace:' . $_SERVER['namespace'] . '
-'; +'; $title = 'Error'; } else { WaitSCFStat(); diff --git a/theme/classic.php b/theme/classic.php index 1a844d3..ba0753d 100644 --- a/theme/classic.php +++ b/theme/classic.php @@ -10,7 +10,7 @@ - - - -
- - - -
    • - -
    • -
    • -
    • - -
    • -
    • -
  • - -   - -
    - -
    - -

    - -

    -1) { ?> -
    -
    -
    -
    -'.$diskname.'  '; - } ?> -
    -
    -
    -
    - -
    -
    -
    - - - - - -

    -
    -
    - -
    -
    - - -
    -
    -' . $files['error']['message'] . '
    '; - $statusCode=404; - } else { - if (isset($files['file'])) { -?> -
    -
    - -   -
    -
    -document.getElementById(\'url\').offsetWidth) this.style.width=\'100%\';" /> -'; - } elseif (in_array($ext, $exts['video'])) { - //echo ''; - $DPvideo=$files['@microsoft.graph.downloadUrl']; - echo '
    -'; - } elseif (in_array($ext, $exts['music'])) { - echo ' -'; - } elseif (in_array($ext, ['pdf'])) { - /*echo ' - -';*/ - $pdfurl = $files['@microsoft.graph.downloadUrl']; - echo '
    -'; - } elseif (in_array($ext, $exts['office'])) { - echo ' -'; - } elseif (in_array($ext, $exts['txt'])) { - $txtstr = htmlspecialchars(curl_request($files['@microsoft.graph.downloadUrl'])['body']); -?> -
    - -
    - -     - - - -'; ?> -
    - - -
    -'; - }*/ else { - echo ''.getconstStr('FileNotSupport').''; - } ?> -
    -
    - - - - - - - - - - - - - - -'; - foreach ($files['children'] as $file) { - // Files - if (isset($file['file'])) { - if ($_SERVER['admin'] or (substr($file['name'],0,1) !== '.' and $file['name'] !== getConfig('passfile') ) ) { - if (strtolower($file['name']) === 'head.md') $head = $file; - if (strtolower($file['name']) === 'readme.md') $readme = $file; - if (strtolower($file['name']) === 'index.html' && !$_SERVER['admin']) { - $html = curl_request(fetch_files(spurlencode(path_format($path . '/' .$file['name']),'/'))['@microsoft.graph.downloadUrl'])['body']; - return output($html,200); - } - $filenum++; ?> - - - - - - -
       
    - -
  • -
      -
    • -
    • -
    • -
    • -
    • -
    -
  • - - - -
    - -
  • -
      -
    • -
    • -
    • -
    • -
    -
  • - - - - - - - - - - - - - - - - - - - - - - - -
    -200) { - $pagenum = $files['folder']['page']; - $maxpage = ceil($files['folder']['childCount']/200); - $prepagenext = ' - - - - - - - - -
    '; - if ($pagenum!=1) { - $prepagenum = $pagenum-1; - $prepagenext .= ' - '.getconstStr('PrePage').''; - } - $prepagenext .= ' - '; - for ($page=1;$page<=$maxpage;$page++) { - if ($page == $pagenum) { - $prepagenext .= ' - ' . $page . ' '; - } else { - $prepagenext .= ' - ' . $page . ' '; - } - } - $prepagenext = substr($prepagenext,0,-1); - $prepagenext .= ' - '; - if ($pagenum!=$maxpage) { - $nextpagenum = $pagenum+1; - $prepagenext .= ' - '.getconstStr('NextPage').''; - } - $prepagenext .= ' -
    - '; - echo $prepagenext; - } - if ($_SERVER['admin']) { ?> -
    -
    - - -
    -
    - -
    - -
    -
    -
    -
    - - -
    -'; - } - if ($readme) { - echo ' -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -'; - } - } - } else { - echo ' -
    -
    -
    - - -
    -
    -
    '; - $statusCode = 401; - } - } ?> -
    -
    -
    - - - -
    - - - - - - -
    - - - -
    - - - - -
    - - - - - - - - - - + + + + + <?php echo $pretitle;?> - <?php echo $_SERVER['sitename'];?> + + + + + + + + + + +
    + + + +
    • + +
    • +
    • +
    • + +
    • +
    • +
  • + +   + +
    + +
    + +

    + +

    +1) { ?> +
    +
    +
    +
    +'.$diskname.' +'; + } ?> +
    +
    +
    +
    + +
    +
    +
    + + + + + +

    +
    +
    + +
    +
    + + +
    +
    +' . $files['error']['message'] . '
    '; + $statusCode=404; + } else { + if (isset($files['file'])) { +?> +
    +
    + +   +
    +
    +document.getElementById(\'url\').offsetWidth) this.style.width=\'100%\';" /> +'; + } elseif (in_array($ext, $exts['video'])) { + //echo ''; + $DPvideo=$files['@microsoft.graph.downloadUrl']; + echo '
    +'; + } elseif (in_array($ext, $exts['music'])) { + echo ' +'; + } elseif (in_array($ext, ['pdf'])) { + /*echo ' + +';*/ + $pdfurl = $files['@microsoft.graph.downloadUrl']; + echo '
    +'; + } elseif (in_array($ext, $exts['office'])) { + echo ' +'; + } elseif (in_array($ext, $exts['txt'])) { + $txtstr = htmlspecialchars(curl_request($files['@microsoft.graph.downloadUrl'])['body']); +?> +
    + +
    + +     + + + +'; ?> +
    + + +
    +'; + }*/ else { + echo ''.getconstStr('FileNotSupport').''; + } ?> +
    +
    + + + + + + + + + + + + + + +'; + foreach ($files['children'] as $file) { + // Files + if (isset($file['file'])) { + if ($_SERVER['admin'] or (substr($file['name'],0,1) !== '.' and $file['name'] !== getConfig('passfile') ) ) { + if (strtolower($file['name']) === 'head.md') $head = $file; + if (strtolower($file['name']) === 'readme.md') $readme = $file; + if (strtolower($file['name']) === 'index.html' && !$_SERVER['admin']) { + $html = curl_request(fetch_files(spurlencode(path_format($path . '/' .$file['name']),'/'))['@microsoft.graph.downloadUrl'])['body']; + return output($html,200); + } + $filenum++; ?> + + + + + + +
       
    + +
  • +
      +
    • +
    • +
    • +
    • +
    • +
    +
  • + + + +
    + +
  • +
      +
    • +
    • +
    • +
    • +
    +
  • + + + + + + + + + + + + + + + + + + + + + + + +
    +200) { + $pagenum = $files['folder']['page']; + $maxpage = ceil($files['folder']['childCount']/200); + $prepagenext = ' + + + + + + + + +
    '; + if ($pagenum!=1) { + $prepagenum = $pagenum-1; + $prepagenext .= ' + '.getconstStr('PrePage').''; + } + $prepagenext .= ' + '; + for ($page=1;$page<=$maxpage;$page++) { + if ($page == $pagenum) { + $prepagenext .= ' + ' . $page . ' '; + } else { + $prepagenext .= ' + ' . $page . ' '; + } + } + $prepagenext = substr($prepagenext,0,-1); + $prepagenext .= ' + '; + if ($pagenum!=$maxpage) { + $nextpagenum = $pagenum+1; + $prepagenext .= ' + '.getconstStr('NextPage').''; + } + $prepagenext .= ' +
    + '; + echo $prepagenext; + } + if ($_SERVER['admin']) { ?> +
    +
    + + +
    +
    + +
    + +
    +
    +
    +
    + + +
    +'; + } + if ($readme) { + echo ' +
    +
    +
    +
    +
    +
    +
    + +
    + +
    +
    +'; + } + } + } else { + echo ' +
    +
    +
    + + +
    +
    +
    '; + $statusCode = 401; + } + } ?> +
    +
    +
    + + + +
    + + + + + + +
    + + + +
    + + + + +
    + + + + + + + + + + diff --git a/theme/ruoli_violet.php b/theme/ruoli_violet.php new file mode 100644 index 0000000..ce71dfc --- /dev/null +++ b/theme/ruoli_violet.php @@ -0,0 +1,1259 @@ + + + + + <?php echo $pretitle;?> - <?php echo $_SERVER['sitename'];?> + + + + + + + + + + +
    + + + +
    • + +
    • +
    • +
    • + +
    • +
    • +
  • + + +
    + +
    + +

    + +

    +1) { ?> +
    +
    +
    +
    +=strlen(path_format($_SERVER['base_path'].'/'.$disk))){ + if(substr($_SERVER['REQUEST_URI'],0,strlen(path_format($_SERVER['base_path'].'/'.$disk)))===path_format($_SERVER['base_path'].'/'.$disk)) + echo ''.$diskname.''; + else + echo ''.$diskname.''; + } + else + echo ''.$diskname.''; + + } ?> +
    +
    +
    +
    + +
    +
    +
    + + + + + +

    +
    +
    + +
    +
    + + +
    +
    +' . $files['error']['message'] . '
    '; + $statusCode=404; + } else { + if (isset($files['file'])) { +?> +
    +
    + +   +
    +
    +document.getElementById(\'url\').offsetWidth) this.style.width=\'100%\';" /> +'; + } elseif (in_array($ext, $exts['video'])) { + //echo ''; + $DPvideo=$files['@microsoft.graph.downloadUrl']; + echo '
    +'; + } elseif (in_array($ext, $exts['music'])) { + echo ' +'; + } elseif (in_array($ext, ['pdf'])) { + /*echo ' + +';*/ + $pdfurl = $files['@microsoft.graph.downloadUrl']; + echo '
    +'; + } elseif (in_array($ext, $exts['office'])) { + echo ' +'; + } elseif (in_array($ext, $exts['txt'])) { + $txtstr = htmlspecialchars(curl_request($files['@microsoft.graph.downloadUrl'])['body']); +?> +
    + +
    + +     + + + +'; ?> +
    + + +
    +'; + }*/ else { + echo ''.getconstStr('FileNotSupport').''; + } ?> +
    +
    + + + + + + + + + + + + + + +'; + foreach ($files['children'] as $file) { + // Files + if (isset($file['file'])) { + if ($_SERVER['admin'] or (substr($file['name'],0,1) !== '.' and $file['name'] !== getConfig('passfile') ) ) { + if (strtolower($file['name']) === 'head.md') $head = $file; + if (strtolower($file['name']) === 'readme.md') $readme = $file; + if (strtolower($file['name']) === 'index.html' && !$_SERVER['admin']) { + $html = curl_request(fetch_files(spurlencode(path_format($path . '/' .$file['name']),'/'))['@microsoft.graph.downloadUrl'])['body']; + return output($html,200); + } + $filenum++; ?> + + + + + + + +
       
    + +
  • +
      +
    • +
    • +
    • +
    • +
    • +
    +
  • + + + +
    + +
  • +
      +
    • +
    • +
    • +
    • +
    +
  • + + + + + + + + + + + + + + + + + + + + + + +
    +200) { + $pagenum = $files['folder']['page']; + $maxpage = ceil($files['folder']['childCount']/200); + $prepagenext = ' + + + + + + + + +
    '; + if ($pagenum!=1) { + $prepagenum = $pagenum-1; + $prepagenext .= ' + '.getconstStr('PrePage').''; + } + $prepagenext .= ' + '; + for ($page=1;$page<=$maxpage;$page++) { + if ($page == $pagenum) { + $prepagenext .= ' + ' . $page . ' '; + } else { + $prepagenext .= ' + ' . $page . ' '; + } + } + $prepagenext = substr($prepagenext,0,-1); + $prepagenext .= ' + '; + if ($pagenum!=$maxpage) { + $nextpagenum = $pagenum+1; + $prepagenext .= ' + '.getconstStr('NextPage').''; + } + $prepagenext .= ' +
    + '; + echo $prepagenext; + } + if ($_SERVER['admin']) { ?> +
    +
    + + +
    +
    + +
    + +
    +
    +
    +
    + + +
    +'; + } + if ($readme) { + echo ' +
    +
    +
    +
    +
    +
    +
    + +
    + +
    +
    +'; + } + } + } else { + echo ' +
    +
    +
    + + +
    +
    +
    '; + $statusCode = 401; + } + } ?> +
    +
    +
    + + + +
    + + + + + + +
    + + + +
    +
    Powred by 逸笙 | Theme by 若离
    + + + + + + + + + +