diff --git a/composer.json b/composer.json index 3c8ed9188c..3c64e97b28 100644 --- a/composer.json +++ b/composer.json @@ -51,13 +51,11 @@ "BcInstaller\\": "plugins/bc-installer/src/", "BcMail\\": "plugins/bc-mail/src/", "BcSearchIndex\\": "plugins/bc-search-index/src/", - "BcSpaSample\\": "plugins/BcSpaSample/src/", "BcThemeConfig\\": "plugins/bc-theme-config/src/", "BcThemeFile\\": "plugins/bc-theme-file/src/", "BcUploader\\": "plugins/bc-uploader/src/", "BcWidgetArea\\": "plugins/bc-widget-area/src/", - "Cake\\Routing\\": "plugins/baser-core/src/Routing", - "SoftDelete\\": "plugins/cakephp-soft-delete/src" + "Cake\\Routing\\": "plugins/baser-core/src/Routing" } }, "autoload-dev": { @@ -74,27 +72,25 @@ "BcThemeConfig\\Test\\": "plugins/bc-theme-config/tests/", "BcThemeFile\\Test\\": "plugins/bc-theme-file/tests/", "BcUploader\\Test\\": "plugins/bc-uploader/tests/", - "BcWidgetArea\\Test\\": "plugins/bc-widget-area/tests/", - "SoftDelete\\Test\\": "plugins/cakephp-soft-delete/tests" + "BcWidgetArea\\Test\\": "plugins/bc-widget-area/tests/" } }, "replace": { - "baserproject/baser-core": "5.0.18", - "baserproject/bc-admin-third": "5.0.18", - "baserproject/bc-blog": "5.0.18", - "baserproject/bc-column": "5.0.18", - "baserproject/bc-content-link": "5.0.18", - "baserproject/bc-custom-content": "5.0.18", - "baserproject/bc-editor-template": "5.0.18", - "baserproject/bc-favorite": "5.0.18", - "baserproject/bc-front": "5.0.18", - "baserproject/bc-installer": "5.0.18", - "baserproject/bc-mail": "5.0.18", - "baserproject/bc-search-index": "5.0.18", - "baserproject/bc-theme-config": "5.0.18", - "baserproject/bc-theme-file": "5.0.18", - "baserproject/bc-uploader": "5.0.18", - "baserproject/bc-widget-area": "5.0.18" + "baserproject/baser-core": "5.0.19", + "baserproject/bc-admin-third": "5.0.19", + "baserproject/bc-blog": "5.0.19", + "baserproject/bc-content-link": "5.0.19", + "baserproject/bc-custom-content": "5.0.19", + "baserproject/bc-editor-template": "5.0.19", + "baserproject/bc-favorite": "5.0.19", + "baserproject/bc-front": "5.0.19", + "baserproject/bc-installer": "5.0.19", + "baserproject/bc-mail": "5.0.19", + "baserproject/bc-search-index": "5.0.19", + "baserproject/bc-theme-config": "5.0.19", + "baserproject/bc-theme-file": "5.0.19", + "baserproject/bc-uploader": "5.0.19", + "baserproject/bc-widget-area": "5.0.19" }, "scripts": { "post-install-cmd": "App\\Console\\Installer::postInstall", diff --git a/config/.env.example b/config/.env.example index 300eed2378..c3aa657064 100644 --- a/config/.env.example +++ b/config/.env.example @@ -24,7 +24,6 @@ export INSTALL_MODE="true" export USE_DEBUG_KIT="false" export SITE_URL="https://localhost/" export SSL_URL="https://localhost/" -export ADMIN_SSL="true" export ADMIN_PREFIX="admin" export BASER_CORE_PREFIX="baser" export SQL_LOG="false" diff --git a/monorepo-builder.php b/monorepo-builder.php index 172caf6a6d..e553068a8b 100644 --- a/monorepo-builder.php +++ b/monorepo-builder.php @@ -9,11 +9,12 @@ return static function (MBConfig $mbConfig): void { $mbConfig->packageDirectories([__DIR__ . '/plugins']); - $version = (!empty($_SERVER['argv'][2]))?: ''; + $version = (!empty($_SERVER['argv'][2]))? $_SERVER['argv'][2] : ''; if(!$version) return; $mbConfig->packageDirectoriesExcludes([ __DIR__ . '/plugins/BcThemeSample', __DIR__ . '/plugins/BcPluginSample', + __DIR__ . '/plugins/BcColumn', ]); // for "merge" command $mbConfig->dataToAppend([ diff --git a/plugins/BcColumn/composer.json b/plugins/BcColumn/composer.json deleted file mode 100755 index 1de2387731..0000000000 --- a/plugins/BcColumn/composer.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "name": "baserproject/bc-column", - "description": "BcContentLink plugin for baserCMS", - "homepage": "https://basercms.net", - "type": "cakephp-plugin", - "license": "MIT", - "vendor-dir": "../../vendor", - "autoload": { - "psr-4": { - "BcColumn\\": "src/" - } - } -} diff --git a/plugins/baser-core/VERSION.txt b/plugins/baser-core/VERSION.txt index 0f4a1d14b2..c099ad4460 100644 --- a/plugins/baser-core/VERSION.txt +++ b/plugins/baser-core/VERSION.txt @@ -14,6 +14,23 @@ CHG: 変更内容 / BUG: バグフィックス / NEW: 機能追加 +[2024-06-27] basercms-5.0.19 +- CHG [BC] Cake\ORM\Table::find()の前後にイベントを追加 +- CHG [BC] BcFormHelperのcontrolメソッドに beforeControl追加 +- CHG [BC] アップデーター取得、アップデートメッセージ取得について、アップデート用の一時ディレクトリを確認するオプションを追加 +- CHG [UL] アップロードカテゴリにページネーションのUIを追加 +- BUG [BC] コンテンツの並び替え時に不用意な動作となってしまう問題を改善 +- BUG [BC] コンテンツ管理ちらつき軽減 +- BUG [BC] 管理画面ログイン後のリダイレクトが動作していない問題を改善 #3523 +- BUG [BC] 【システム】管理画面でお気に入りの削除を行った直後にお気に入りの追加を行えない問題を改善 fix #3537 +- BUG [BC] ごみ箱にファイルがある状態でツリー構造チェックを行うと常にエラーになる問題を修正 fix #3488 +- BUG [BC] アップデーターを改善 +- BUG [BC] windows 環境にてプラグインのアップロードが正常にできない問題について調整 +- BUG [BC] 【固定ページ】$this->BcPage->getPageList() でフォルダに属するページのデータを取得できない問題を改善 fix #3527 +- BUG [BC] BcZipでZipファイルを解凍する場合、ZipArchiveライブラリが入っていないと失敗する問題について改善 +- BUG [BC] baserCMSコアのアップデートがxdebug不足により失敗する事象の修正 fix #3509 +- BUG [UL] アップロードファイル・カテゴリ ページネーション調整 + [2024-06-08] basercms-5.0.18 - CHG [BC] プラグインアップロードにて plugins ディレクトリの書き込み権限チェックを追加 - BUG [BC] アップデート通知が正常に表示できない問題を改善 diff --git a/plugins/baser-core/composer.json b/plugins/baser-core/composer.json index e6e80b0e11..254879a330 100644 --- a/plugins/baser-core/composer.json +++ b/plugins/baser-core/composer.json @@ -40,7 +40,7 @@ "cakephp/debug_kit": "^5.0.0", "josegonzalez/dotenv": "^4.0", "phpunit/phpunit": "^10.1.0", - "symplify/monorepo-builder": "^10.2", + "symplify/monorepo-builder": "^11.2", "vierge-noire/cakephp-fixture-factories": "^3.0", "vierge-noire/cakephp-test-suite-light": "^3.0", "ext-xdebug": "*" diff --git a/plugins/baser-core/config/setting.php b/plugins/baser-core/config/setting.php index d7bb818408..3d05bde08c 100644 --- a/plugins/baser-core/config/setting.php +++ b/plugins/baser-core/config/setting.php @@ -331,16 +331,6 @@ */ 'passwordRequestAllowTime' => 1440, - /** - * 二段階認証コードの有効時間(min) - */ - 'twoFactorAuthenticationCodeAllowTime' => 10, - - /** - * 管理画面のSSL - */ - 'adminSsl' => filter_var(env('ADMIN_SSL', true), FILTER_VALIDATE_BOOLEAN), - /** * エディタ */ @@ -559,7 +549,6 @@ 'defaultAllows' => [ '/baser/admin', '/baser/admin/baser-core/users/login', - '/baser/admin/baser-core/users/login_code', '/baser/admin/baser-core/users/logout', '/baser/admin/baser-core/password_requests/*', '/baser/admin/baser-core/dashboard/*', diff --git a/plugins/baser-core/config/update/5.1.0/config.php b/plugins/baser-core/config/update/5.1.0/config.php index 6c67d4f43d..edba21c410 100644 --- a/plugins/baser-core/config/update/5.1.0/config.php +++ b/plugins/baser-core/config/update/5.1.0/config.php @@ -11,17 +11,20 @@ /** * 5.1.0 アップデーター - * - * 書き込み権限チェック */ $notWritablePath = []; if(!is_writable(ROOT . DS . 'src' . DS . 'View' . DS . 'AjaxView.php')) { $notWritablePath[] = ROOT . DS . 'src' . DS . 'View' . DS . 'AjaxView.php'; } +$message = ''; +if(\Cake\Core\Plugin::isLoaded('BcUpdateSupporter')) { + $message = "アップデート前に、BcUpdateSupporterプラグインを無効化してください。\n"; +} +$message .= "baserCMS 5.1.0 へのアップデートの際、プラグインに問題がある場合、アップデート完了後に画面が表示できなくなる可能性があります。\n" . + "アップデート前に、コアプラグイン以外を一度無効化しておいてください。"; if($notWritablePath) { - return [ - 'updateMessage' => "アップデートを実行する前に次のファイルみ書き込み権限を与えてください
" . implode('
', $notWritablePath) - ]; -} else { - return []; + $message .= "\nアップデートを実行する前に次のファイルみ書き込み権限を与えてください
" . implode('
', $notWritablePath); } +return [ + 'updateMessage' => $message +]; diff --git a/plugins/baser-core/src/BaserCorePlugin.php b/plugins/baser-core/src/BaserCorePlugin.php index 7fdc6aca1b..7d2e9ac060 100644 --- a/plugins/baser-core/src/BaserCorePlugin.php +++ b/plugins/baser-core/src/BaserCorePlugin.php @@ -290,14 +290,6 @@ public function middleware(MiddlewareQueue $middlewareQueue): MiddlewareQueue ->add(new BcFrontMiddleware()) ->add(new BcRedirectSubSiteMiddleware()); - if (Configure::read('BcApp.adminSsl') && !BcUtil::isConsole() && BcUtil::isAdminSystem() && BcUtil::isInstalled()) { - $config = ['redirect' => false]; - if(filter_var(env('TRUST_PROXY', false))) { - $config['trustedProxies'] = !empty($_SERVER['HTTP_X_FORWARDED_FOR'])? [$_SERVER['HTTP_X_FORWARDED_FOR']] : []; - } - $middlewareQueue->add(new HttpsEnforcerMiddleware($config)); - } - // APIへのアクセスの場合、セッションによる認証以外は、CSRFを利用しない設定とする $ref = new ReflectionClass($middlewareQueue); $queue = $ref->getProperty('queue'); diff --git a/plugins/baser-core/src/Controller/Admin/PluginsController.php b/plugins/baser-core/src/Controller/Admin/PluginsController.php index abe850eacc..95dffa5958 100644 --- a/plugins/baser-core/src/Controller/Admin/PluginsController.php +++ b/plugins/baser-core/src/Controller/Admin/PluginsController.php @@ -189,10 +189,10 @@ public function get_core_update(PluginsAdminServiceInterface $service) $request->getData('php')?? 'php', $request->getData('force'), ); + $this->BcMessage->setSuccess(__d('baser_core', '最新版のダウンロードが完了しました。アップデートを実行してください。')); } catch (\Throwable $e) { $this->BcMessage->setError($e->getMessage()); } - $this->BcMessage->setSuccess(__d('baser_core', '最新版のダウンロードが完了しました。アップデートを実行してください。')); return $this->redirect(['action' => 'update']); } diff --git a/plugins/baser-core/src/Controller/AppController.php b/plugins/baser-core/src/Controller/AppController.php index e205c3b63c..d8fc0be393 100644 --- a/plugins/baser-core/src/Controller/AppController.php +++ b/plugins/baser-core/src/Controller/AppController.php @@ -34,6 +34,7 @@ use Cake\Http\Exception\NotFoundException; use Cake\Http\Response; use Cake\Http\ServerRequest; +use Cake\Routing\Router; use Cake\Utility\Hash; use Cake\Utility\Inflector; use Psr\Http\Message\ResponseInterface; @@ -169,15 +170,10 @@ public function beforeFilter(EventInterface $event) } else { $this->BcMessage->setError(__d('baser_core', '実行した操作は許可されていません。')); } - } - // リファラが存在する場合はリファラにリダイレクトする - // $this->referer() で判定した場合、リファラがなくてもトップのURLが返却されるため ServerRequest で判定 - if ($this->getRequest()->getEnv('HTTP_REFERER') && - $this->getRequest()->getAttribute('here') !== $this->referer() - ) { - $url = $this->referer(); - } else { $url = Configure::read("BcPrefixAuth.{$prefix}.loginRedirect"); + } else { + $url = Router::url(Configure::read("BcPrefixAuth.{$prefix}.loginAction")) + . '?redirect=' . urlencode(Router::url()); } return $this->redirect($url); } diff --git a/plugins/baser-core/src/Model/Entity/Plugin.php b/plugins/baser-core/src/Model/Entity/Plugin.php index cdc4260161..c538b824e6 100644 --- a/plugins/baser-core/src/Model/Entity/Plugin.php +++ b/plugins/baser-core/src/Model/Entity/Plugin.php @@ -93,6 +93,7 @@ public function isCorePlugin() * @return bool * @checked * @noTodo + * @unitTest */ public function isTheme() { @@ -104,6 +105,7 @@ public function isTheme() * @return bool * @checked * @noTodo + * @unitTest */ public function isAdminTheme(): bool { diff --git a/plugins/baser-core/src/Model/Entity/User.php b/plugins/baser-core/src/Model/Entity/User.php index 86b09a1dc4..b52f1eba66 100644 --- a/plugins/baser-core/src/Model/Entity/User.php +++ b/plugins/baser-core/src/Model/Entity/User.php @@ -148,11 +148,12 @@ public function isEnableLoginAgent(EntityInterface $targetUser): bool * @return bool * @checked * @noTodo + * @unitTest */ public function isDeletableUser(EntityInterface $targetUser): bool { return (($this->isSuper() && !$targetUser->isSuper()) || - ($this->isAdmin() && !$targetUser->isAdmin())); + ($this->isAdmin() && !$targetUser->isAdmin()) && !$targetUser->isSuper()); } /** @@ -167,6 +168,7 @@ public function isDeletableUser(EntityInterface $targetUser): bool * @return bool * @checked * @noTodo + * @unitTest */ public function isEditableUser(EntityInterface $targetUser): bool { diff --git a/plugins/baser-core/src/Model/Table/AppTable.php b/plugins/baser-core/src/Model/Table/AppTable.php index a66feac63b..0972577255 100755 --- a/plugins/baser-core/src/Model/Table/AppTable.php +++ b/plugins/baser-core/src/Model/Table/AppTable.php @@ -13,6 +13,7 @@ use BaserCore\Utility\BcUtil; use Cake\ORM\Association\BelongsToMany; +use Cake\ORM\Query; use Cake\ORM\Table; use Cake\I18n\FrozenTime; use BaserCore\Annotation\NoTodo; @@ -108,6 +109,41 @@ public function belongsToMany(string $associated, array $options = []): BelongsT return parent::belongsToMany($associated, $options); } + /** + * findの前後にイベントを追加する + * + * @param string $type the type of query to perform + * @param array $options An array that will be passed to Query::applyOptions() + * @return \Cake\ORM\Query The query builder + * @checked + * @noTodo + */ + public function find(string $type = 'all', mixed ...$args): Query + { + // EVENT beforeFind + $event = $this->dispatchLayerEvent('beforeFind', [ + 'type' => $type, + 'options' => $args // 後方互換のため options として渡す + ]); + if ($event !== false) { + $args = ($event->getResult() === null || $event->getResult() === true) ? $event->getData('options') : $event->getResult(); + } + + $result = parent::find($type, ...$args); + + // EVENT afterFind + $event = $this->dispatchLayerEvent('afterFind', [ + 'type' => $type, + 'options' => $args, + 'result' => $result + ]); + if ($event !== false) { + $result = ($event->getResult() === null || $event->getResult() === true) ? $event->getData('result') : $event->getResult(); + } + + return $result; + } + /** * テーブル名にプレフィックスを追加する * diff --git a/plugins/baser-core/src/Model/Table/SiteConfigsTable.php b/plugins/baser-core/src/Model/Table/SiteConfigsTable.php index 7f94263ec4..bd497be7b1 100755 --- a/plugins/baser-core/src/Model/Table/SiteConfigsTable.php +++ b/plugins/baser-core/src/Model/Table/SiteConfigsTable.php @@ -77,8 +77,6 @@ public function validationDefault(Validator $validator): Validator */ public function validationKeyValue(Validator $validator): Validator { - $validator->setProvider('siteConfig', 'BaserCore\Model\Validation\SiteConfigValidation'); - $validator ->scalar('email') ->email('email', 255, __d('baser_core', '管理者メールアドレスの形式が不正です。')) @@ -91,14 +89,6 @@ public function validationKeyValue(Validator $validator): Validator ->scalar('ssl_url') ->regex('ssl_url', '/^(http|https):/', __d('baser_core', 'WebサイトURLはURLの形式を入力してください。')) ->notEmptyString('ssl_url', __d('baser_core', 'WebサイトURLを入力してください。')); - $validator - ->scalar('admin_ssl') - ->add('admin_ssl', [ - 'adminSSlSslUrlExists' => [ - 'rule' => 'sslUrlExists', - 'provider' => 'siteConfig', - 'message' => __d('baser_core', '管理画面をSSLで利用するには、SSL用のWebサイトURLを入力してください。') - ]]); return $validator; } diff --git a/plugins/baser-core/src/Model/Validation/BcValidation.php b/plugins/baser-core/src/Model/Validation/BcValidation.php index fc593444aa..de101bd2ee 100644 --- a/plugins/baser-core/src/Model/Validation/BcValidation.php +++ b/plugins/baser-core/src/Model/Validation/BcValidation.php @@ -590,6 +590,7 @@ public static function checkSelectList($value): bool * @param int $min 値の最短値 * @param int $max 値の最長値 * @param boolean + * @unitTest */ public static function between($value, $min, $max) { diff --git a/plugins/baser-core/src/Model/Validation/SiteConfigValidation.php b/plugins/baser-core/src/Model/Validation/SiteConfigValidation.php deleted file mode 100644 index 374a781b2f..0000000000 --- a/plugins/baser-core/src/Model/Validation/SiteConfigValidation.php +++ /dev/null @@ -1,40 +0,0 @@ - - * Copyright (c) NPO baser foundation - * - * @copyright Copyright (c) NPO baser foundation - * @link https://basercms.net baserCMS Project - * @since 5.0.0 - * @license https://basercms.net/license/index.html MIT License - */ - -namespace BaserCore\Model\Validation; - -use Cake\Validation\Validation; -use BaserCore\Annotation\UnitTest; -use BaserCore\Annotation\NoTodo; -use BaserCore\Annotation\Checked; - -/** - * Class SiteConfigValidation - */ -class SiteConfigValidation extends Validation -{ - - /** - * SSL用のURLが設定されているかチェックする - * @param mixed $check - * @return boolean - * @checked - * @noTodo - */ - public static function sslUrlExists($adminSsl, $context) - { - if ($adminSsl && empty($context['data']['ssl_url'])) { - return false; - } - return true; - } - -} diff --git a/plugins/baser-core/src/Service/Admin/PluginsAdminService.php b/plugins/baser-core/src/Service/Admin/PluginsAdminService.php index 24e1531c1c..66361aeb9a 100644 --- a/plugins/baser-core/src/Service/Admin/PluginsAdminService.php +++ b/plugins/baser-core/src/Service/Admin/PluginsAdminService.php @@ -63,9 +63,16 @@ public function getViewVarsForUpdate(EntityInterface $entity): array $plugin = CakePlugin::getCollection()->create($entity->name); $scriptNum = count($plugin->getUpdaters('', true)); $scriptMessages = $plugin->getUpdateScriptMessages('', true); + $coreDownloaded = Cache::read('coreDownloaded', '_bc_update_'); if ($entity->name === 'BaserCore') { - $availableVersion = $this->getAvailableCoreVersion(); + $availableVersion = null; + if($coreDownloaded) { + $availableVersion = BcUtil::getVersion('BaserCore', true); + } + if(!$availableVersion) { + $availableVersion = $this->getAvailableCoreVersion(); + } $corePlugins = Configure::read('BcApp.corePlugins'); foreach($corePlugins as $corePlugin) { $scriptNum += count($plugin->getUpdaters($corePlugin, true)); @@ -101,7 +108,7 @@ public function getViewVarsForUpdate(EntityInterface $entity): array 'programVerPoint' => $programVerPoint, 'availableVersion' => $availableVersion, 'log' => $this->getUpdateLog(), - 'coreDownloaded' => Cache::read('coreDownloaded', '_bc_update_'), + 'coreDownloaded' => $coreDownloaded, 'php' => $this->whichPhp(), 'isCore' => $entity->name === 'BaserCore', 'isWritableVendor' => $isWritableVendor, @@ -149,12 +156,12 @@ public function isRequireUpdate(string $programVersion, ?string $dbVersion, ?str if(is_null($availableVersion)) { // プラグインの場合 プログラムのバージョンを利用可能なバージョンとする - $availableVersion = $programVersion; + $availableVerPoint = $programVerPoint; } else { // コアの場合は、プログラムのバージョンとDBのバージョンが違う場合はアップデート不可 - if ($programVersion !== $dbVersion) return false; + if ($programVerPoint !== $dbVerPoint) return false; } - if ($availableVersion !== $dbVersion) return true; + if ($availableVerPoint > $dbVerPoint) return true; return false; } diff --git a/plugins/baser-core/src/Service/PluginsService.php b/plugins/baser-core/src/Service/PluginsService.php index 1dad32c257..d1edcda4bd 100644 --- a/plugins/baser-core/src/Service/PluginsService.php +++ b/plugins/baser-core/src/Service/PluginsService.php @@ -809,7 +809,7 @@ public function getAvailableCoreVersionInfo() * @noTodo * @unitTest */ - public function getCoreUpdate(string $targetVersion, string $php, bool $force = false) + public function getCoreUpdate(string $targetVersion, string $php, ?bool $force = false) { if (function_exists('ini_set')) { ini_set('max_execution_time', 0); diff --git a/plugins/baser-core/src/Service/SiteConfigsService.php b/plugins/baser-core/src/Service/SiteConfigsService.php index 9cc57c38bc..9dcfad37e8 100644 --- a/plugins/baser-core/src/Service/SiteConfigsService.php +++ b/plugins/baser-core/src/Service/SiteConfigsService.php @@ -99,7 +99,6 @@ public function get(): SiteConfig 'mode' => Configure::read('debug'), 'site_url' => Configure::read('BcEnv.siteUrl'), 'ssl_url' => Configure::read('BcEnv.sslUrl'), - 'admin_ssl' => (int)Configure::read('BcApp.adminSsl'), ]), ['validate' => 'keyValue']); } return $this->entity; @@ -141,14 +140,12 @@ public function update(array $postData) if (isset($siteConfig->mode)) $this->putEnv('DEBUG', ($siteConfig->mode)? 'true' : 'false'); if (isset($siteConfig->site_url)) $this->putEnv('SITE_URL', $siteConfig->site_url); if (isset($siteConfig->ssl_url)) $this->putEnv('SSL_URL', $siteConfig->ssl_url); - if (isset($siteConfig->admin_ssl)) $this->putEnv('ADMIN_SSL', ($siteConfig->admin_ssl)? 'true' : 'false'); } $siteConfigArray = $siteConfig->toArray(); unset($siteConfigArray['mode'], $siteConfigArray['site_url'], $siteConfigArray['ssl_url'], - $siteConfigArray['admin_ssl'], $siteConfigArray['dummy-site_url'], $siteConfigArray['dummy-ssl_url'] ); diff --git a/plugins/baser-core/src/Service/ThemesService.php b/plugins/baser-core/src/Service/ThemesService.php index 22f24757df..8255d5af0c 100644 --- a/plugins/baser-core/src/Service/ThemesService.php +++ b/plugins/baser-core/src/Service/ThemesService.php @@ -148,12 +148,11 @@ public function add(array $postData): string } $name = $postData['file']->getClientFileName(); $postData['file']->moveTo(TMP . $name); - $srcDirName = basename($name, '.zip'); $zip = new BcZip(); if (!$zip->extract(TMP . $name, TMP)) { throw new BcException(__d('baser_core', 'アップロードしたZIPファイルの展開に失敗しました。')); } - + $srcDirName = $zip->topArchiveName; $dstName = $srcName = Inflector::camelize($srcDirName); if (preg_match('/^(.+?)([0-9]+)$/', $srcName, $matches)) { $baseName = $matches[1]; diff --git a/plugins/baser-core/src/Service/UtilitiesService.php b/plugins/baser-core/src/Service/UtilitiesService.php index de76cf764b..0d8936ccac 100644 --- a/plugins/baser-core/src/Service/UtilitiesService.php +++ b/plugins/baser-core/src/Service/UtilitiesService.php @@ -105,7 +105,7 @@ protected function _verify(Table $table) $errors = []; for($i = $min; $i <= $edge; $i++) { - $count = $table->find()->where([ + $count = $table->find()->applyOptions(['withDeleted'])->where([ $scope, 'OR' => [$left => $i, $right => $i] ])->count(); diff --git a/plugins/baser-core/src/Utility/BcUtil.php b/plugins/baser-core/src/Utility/BcUtil.php index 1fa7fe74b6..86d9944550 100644 --- a/plugins/baser-core/src/Utility/BcUtil.php +++ b/plugins/baser-core/src/Utility/BcUtil.php @@ -1979,6 +1979,7 @@ public static function getExistsWebrootDir(string $theme, string $plugin, string * @return array Associative array * @checked * @noTodo + * @unitTest */ public static function pairToAssoc() { diff --git a/plugins/baser-core/src/View/Helper/BcArrayHelper.php b/plugins/baser-core/src/View/Helper/BcArrayHelper.php index f6c725936b..44a535a2d8 100755 --- a/plugins/baser-core/src/View/Helper/BcArrayHelper.php +++ b/plugins/baser-core/src/View/Helper/BcArrayHelper.php @@ -39,6 +39,7 @@ class BcArrayHelper extends Helper * @return boolean * @checked * @noTodo + * @unitTest */ public function first($array, int $key) { @@ -65,6 +66,7 @@ public function first($array, int $key) * @return boolean * @checked * @noTodo + * @unitTest */ public function last($array, $key) { diff --git a/plugins/baser-core/src/View/Helper/BcBaserHelper.php b/plugins/baser-core/src/View/Helper/BcBaserHelper.php index 51a41b41f5..bee169518e 100755 --- a/plugins/baser-core/src/View/Helper/BcBaserHelper.php +++ b/plugins/baser-core/src/View/Helper/BcBaserHelper.php @@ -1490,6 +1490,7 @@ public function isSSL() * @return void * @checked * @noTodo + * @unitTest */ public function charset($charset = null) { @@ -2170,6 +2171,7 @@ public function getBaseUrl() * @return void * @checked * @noTodo + * @UnitTest ラッパーメソッドに付きテスト不要 */ public function baseUrl() { @@ -2662,6 +2664,7 @@ public function webClipIcon($fileName = 'apple-touch-icon-precomposed.png', $use * @return string * @checked * @noTodo + * @unitTest */ public function getContentsUrl($url = null, $full = false, $useSubDomain = null, $base = true) { diff --git a/plugins/baser-core/src/View/Helper/BcContentsHelper.php b/plugins/baser-core/src/View/Helper/BcContentsHelper.php index 4650a204d8..39d52b5091 100644 --- a/plugins/baser-core/src/View/Helper/BcContentsHelper.php +++ b/plugins/baser-core/src/View/Helper/BcContentsHelper.php @@ -584,6 +584,7 @@ public function isFolder() * @return Content * @checked * @noTodo + * @unitTest */ public function getSiteRoot($siteId) { diff --git a/plugins/baser-core/src/View/Helper/BcFormHelper.php b/plugins/baser-core/src/View/Helper/BcFormHelper.php index 846ec45560..d5c4f7a08c 100644 --- a/plugins/baser-core/src/View/Helper/BcFormHelper.php +++ b/plugins/baser-core/src/View/Helper/BcFormHelper.php @@ -983,7 +983,32 @@ public function control(string $fieldName, array $options = []): string } unset($options['counter']); } - return parent::control($fieldName, $options); + + // EVENT Form.beforeControl + $event = $this->dispatchLayerEvent('beforeControl', [ + 'formId' => $this->__id, + 'data' => $this->getView()->getRequest()->getData(), + 'fieldName' => $fieldName, + 'options' => $options + ], ['class' => 'Form', 'plugin' => '']); + if ($event !== false) { + $options = ($event->getResult() === null || $event->getResult() === true)? $event->getData('options') : $event->getResult(); + } + + $output = parent::control($fieldName, $options); + + // EVENT Form.afterControl + $event = $this->dispatchLayerEvent('afterControl', [ + 'formId' => $this->__id, + 'data' => $this->getView()->getRequest()->getData(), + 'fieldName' => $fieldName, + 'out' => $output + ], ['class' => 'Form', 'plugin' => '']); + if ($event !== false) { + $output = ($event->getResult() === null || $event->getResult() === true)? $event->getData('out') : $event->getResult(); + } + + return $output; } // <<< diff --git a/plugins/baser-core/src/View/Helper/BcFreezeHelper.php b/plugins/baser-core/src/View/Helper/BcFreezeHelper.php index 88fe394230..0b9f32893a 100755 --- a/plugins/baser-core/src/View/Helper/BcFreezeHelper.php +++ b/plugins/baser-core/src/View/Helper/BcFreezeHelper.php @@ -315,6 +315,7 @@ public function wyear($fieldName, $minYear = null, $maxYear = null, $selected = * @return string htmlタグ * @checked * @noTodo + * @unitTest */ public function checkbox(string $fieldName, array $options = []): array|string { @@ -527,6 +528,7 @@ public function email($fieldName, $options = []) * @return string htmlタグ * @checked * @noTodo + * @unitTest */ public function number($fieldName, $options = []) { diff --git a/plugins/baser-core/src/View/Helper/BcTimeHelper.php b/plugins/baser-core/src/View/Helper/BcTimeHelper.php index f4dcccaa23..d54d9c8733 100644 --- a/plugins/baser-core/src/View/Helper/BcTimeHelper.php +++ b/plugins/baser-core/src/View/Helper/BcTimeHelper.php @@ -180,6 +180,7 @@ public function convertToSeirekiYear($year) * @return array|string 配列形式の和暦データ、または日付フォーマットが正しくない場合は空文字 * @checked * @noTodo + * @unitTest */ public function convertToWarekiArray($date) { @@ -274,6 +275,7 @@ public function convertToWareki($date) * @return mixed 分/null * @checked * @noTodo + * @unitTest */ public function minutes($strDate) { @@ -336,6 +338,7 @@ public function format( * @return boolean 経過有無 * @checked * @noTodo + * @unitTest */ public function pastDays($date, $days, $now = null) { @@ -365,6 +368,7 @@ public function pastDays($date, $days, $now = null) * @return string 曜日 | 空白 * @checked * @noTodo + * @unitTest */ public function getJpWeek($dateStr = null, $suffix = '') { @@ -391,6 +395,7 @@ public function getJpWeek($dateStr = null, $suffix = '') * @param string $suffix getJpWeek参照 * @checked * @noTodo + * @unitTest */ public function jpWeek($dateStr = null, $suffix = '') { diff --git a/plugins/baser-core/src/View/Helper/BcXmlHelper.php b/plugins/baser-core/src/View/Helper/BcXmlHelper.php index 645250ed56..809d18c3ca 100644 --- a/plugins/baser-core/src/View/Helper/BcXmlHelper.php +++ b/plugins/baser-core/src/View/Helper/BcXmlHelper.php @@ -51,6 +51,7 @@ class BcXmlHelper extends Helper * @return string XML宣言 * @checked * @noTodo + * @unitTest */ public function header($attrib = []) { diff --git a/plugins/baser-core/tests/TestCase/Model/Entity/PluginTest.php b/plugins/baser-core/tests/TestCase/Model/Entity/PluginTest.php index 97e7ce098d..2a5f205aba 100644 --- a/plugins/baser-core/tests/TestCase/Model/Entity/PluginTest.php +++ b/plugins/baser-core/tests/TestCase/Model/Entity/PluginTest.php @@ -51,5 +51,26 @@ public static function hasTypeDataProvider() ]; } + public function testIsAdminTheme() + { + //with type = 'AdminTheme' + $this->Plugin->type = 'AdminTheme'; + $this->assertTrue($this->Plugin->isAdminTheme()); + + //with type = 'Plugin' + $this->Plugin->type = 'Plugin'; + $this->assertFalse($this->Plugin->isAdminTheme()); + } + + public function testIsTheme() + { + //with type = 'Theme' + $this->Plugin->type = 'Theme'; + $this->assertTrue($this->Plugin->isTheme()); + + //with type = 'Plugin' + $this->Plugin->type = 'Plugin'; + $this->assertFalse($this->Plugin->isTheme()); + } } \ No newline at end of file diff --git a/plugins/baser-core/tests/TestCase/Model/Entity/UserTest.php b/plugins/baser-core/tests/TestCase/Model/Entity/UserTest.php index 76575c2358..13552621d7 100644 --- a/plugins/baser-core/tests/TestCase/Model/Entity/UserTest.php +++ b/plugins/baser-core/tests/TestCase/Model/Entity/UserTest.php @@ -13,6 +13,7 @@ use BaserCore\Model\Entity\User; use BaserCore\Test\Factory\UserFactory; +use BaserCore\Test\Factory\UsersUserGroupFactory; use BaserCore\Test\Scenario\InitAppScenario; use BaserCore\TestSuite\BcTestCase; use Cake\Core\Configure; @@ -65,6 +66,29 @@ public function testSetPassword() $this->assertNotEquals('testtest', $this->User->password); } + /** + * test isEditableUser + */ + public function testIsEditableUser() + { + //$isSuper = true, return true + $this->assertTrue($this->User->isEditableUser(UserFactory::make(['id' => 2])->getEntity())); + + //$this->id === $targetUser->id、return true + $this->assertTrue($this->User->isEditableUser(UserFactory::make(['id' => 1])->getEntity())); + + //isAdminではない場合、return true + $this->assertTrue($this->User->isEditableUser(UserFactory::make(['id' => 3])->getEntity())); + + //他のAdminアカウトを編集する場合、return false + Configure::write('BcApp.superUserId', 2); + UserFactory::make(['id' => 4])->persist(); + UsersUserGroupFactory::make(['user_id' => 4, 'user_group_id' => 1])->persist(); + $user = $this->getTableLocator()->get('BaserCore.Users')->get(4, contain: 'UserGroups'); + + $this->assertFalse($this->User->isEditableUser($user)); + } + /** * Test isAdmin */ @@ -73,6 +97,46 @@ public function testIsAdmin() $this->assertTrue($this->User->isAdmin()); } + /** + * test isDeletableUser + */ + public function testIsDeletableUser() + { + //データ生成 + //スーパーユーザー + UserFactory::make(['id' => 2])->persist(); + Configure::write('BcApp.superUserId', 2); + //Adminーザー + UserFactory::make(['id' => 3])->persist(); + UsersUserGroupFactory::make(['user_id' => 3, 'user_group_id' => 1])->persist(); + //スーパーでもAdminでもないーザー + UserFactory::make(['id' => 4])->persist(); + + //自身がAdminを設定 + $this->User = $this->getTableLocator()->get('BaserCore.Users')->get(1, contain: 'UserGroups'); + + //ターゲットがAdmin:false + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(3, contain: 'UserGroups'))); + //ターゲットがスーパーじゃない:true + $this->assertTrue($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(4, contain: 'UserGroups'))); + //ターゲットがスーパー:false + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(2, contain: 'UserGroups'))); + + //自身がスーパーを設定 + $this->User = $this->getTableLocator()->get('BaserCore.Users')->get(2, contain: 'UserGroups'); + //ターゲットがスーパー:false + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(2, contain: 'UserGroups'))); + //ターゲットがスーパーじゃない:true + $this->assertTrue($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(1, contain: 'UserGroups'))); + + //自身がスーパーでもAdminでもないを設定 :false + $this->User = $this->getTableLocator()->get('BaserCore.Users')->get(4, contain: 'UserGroups'); + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(1, contain: 'UserGroups'))); + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(2, contain: 'UserGroups'))); + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(3, contain: 'UserGroups'))); + $this->assertFalse($this->User->isDeletableUser($this->getTableLocator()->get('BaserCore.Users')->get(4, contain: 'UserGroups'))); + } + /** * ユーザー名を整形して表示する * @param string $nickname diff --git a/plugins/baser-core/tests/TestCase/Model/Table/AppTableTest.php b/plugins/baser-core/tests/TestCase/Model/Table/AppTableTest.php index 1507346916..dd492334f4 100644 --- a/plugins/baser-core/tests/TestCase/Model/Table/AppTableTest.php +++ b/plugins/baser-core/tests/TestCase/Model/Table/AppTableTest.php @@ -12,10 +12,12 @@ namespace BaserCore\Test\TestCase\Model\Table; use BaserCore\Model\Table\AppTable; +use BaserCore\Test\Factory\ContentFolderFactory; use BaserCore\Test\Scenario\PermissionGroupsScenario; use BaserCore\Test\Scenario\PluginsScenario; use BaserCore\TestSuite\BcTestCase; use BaserCore\Model\Table\PermissionsTable as TablePermissionsTable; +use Cake\Event\Event; use CakephpFixtureFactories\Scenario\ScenarioAwareTrait; /** @@ -69,7 +71,7 @@ public function testInitialize() $Permission = new TablePermissionsTable(); $this->assertMatchesRegularExpression( - // yyyy-MM-dd HH:mm:ssのパターン + // yyyy-MM-dd HH:mm:ssのパターン '{^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])\s([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$}', $Permission->find()->first()->created->__toString() ); @@ -240,4 +242,33 @@ public static function replaceTextDataProvider() ["\xE3\x88\xB9", "(代)"], ]; } + + /** + * test beforeFind + * @return void + */ + public function testBeforeFind() + { + ContentFolderFactory::make(2)->persist(); + $this->entryEventToMock(self::EVENT_LAYER_MODEL, 'BaserCore.ContentFolders.beforeFind', function(Event $event) { + $event->setData('options', ['limit' => 1]); + }); + $contentFolders = $this->getTableLocator()->get('BaserCore.ContentFolders'); + $this->assertEquals(1, $contentFolders->find()->all()->count()); + } + + /** + * test afterFind + * @return void + */ + public function testAfterFind() + { + ContentFolderFactory::make(2)->persist(); + $this->entryEventToMock(self::EVENT_LAYER_MODEL, 'BaserCore.ContentFolders.afterFind', function(Event $event) { + $event->setData('result', $event->getData('result')->limit(1)); + }); + $contentFolders = $this->getTableLocator()->get('BaserCore.ContentFolders'); + $this->assertEquals(1, $contentFolders->find()->all()->count()); + } + } diff --git a/plugins/baser-core/tests/TestCase/Model/Validation/BcValidationTest.php b/plugins/baser-core/tests/TestCase/Model/Validation/BcValidationTest.php index 49c2a37b2f..802f710bb0 100644 --- a/plugins/baser-core/tests/TestCase/Model/Validation/BcValidationTest.php +++ b/plugins/baser-core/tests/TestCase/Model/Validation/BcValidationTest.php @@ -610,8 +610,7 @@ public function test_checkSelectList() */ public function testBetween($check, $min, $max, $expect) { - $this->markTestIncomplete('このテストはまだ実装されていません。'); - $result = $this->BcApp->between($check, $min, $max); + $result = $this->BcValidation->between($check, $min, $max); $this->assertEquals($expect, $result); } @@ -621,7 +620,7 @@ public static function betweenDataProvider() ["あいう", 2, 4, true], ["あいう", 3, 3, true], ["あいう", 4, 3, false], - [["あいう", "あいうえお"], 2, 4, true], + ["あいうえお", 2, 4, false], ]; } diff --git a/plugins/baser-core/tests/TestCase/Model/Validation/SiteConfigValidationTest.php b/plugins/baser-core/tests/TestCase/Model/Validation/SiteConfigValidationTest.php deleted file mode 100644 index 173388af58..0000000000 --- a/plugins/baser-core/tests/TestCase/Model/Validation/SiteConfigValidationTest.php +++ /dev/null @@ -1,59 +0,0 @@ - - * Copyright (c) NPO baser foundation - * - * @copyright Copyright (c) NPO baser foundation - * @link https://basercms.net baserCMS Project - * @since 5.0.0 - * @license https://basercms.net/license/index.html MIT License - */ - -namespace BaserCore\Test\TestCase\Model\Validation; - -use BaserCore\Model\Validation\SiteConfigValidation; -use BaserCore\TestSuite\BcTestCase; - -/** - * Class SiteConfigValidationTest - */ -class SiteConfigValidationTest extends BcTestCase -{ - - /** - * Set Up - * - * @return void - */ - public function setUp(): void - { - parent::setUp(); - } - - /** - * Tear Down - * - * @return void - */ - public function tearDown(): void - { - parent::tearDown(); - } - - /** - * エイリアスのスラッシュをチェックする - * - * - 連続してスラッシュは入力できない - * - 先頭と末尾にスラッシュは入力できない - * - * @param string $alias チェックするエイリアス - * @param array $expected 期待値 - * @param string $message テストが失敗した時に表示されるメッセージ - */ - public function testSslUrlExists() - { - $this->assertFalse(SiteConfigValidation::sslUrlExists(true, ['data' => ['admin_ssl' => '']])); - $this->assertTrue(SiteConfigValidation::sslUrlExists(false, ['data' => ['admin_ssl' => '']])); - } - -} diff --git a/plugins/baser-core/tests/TestCase/PluginTest.php b/plugins/baser-core/tests/TestCase/PluginTest.php index cf788e117c..9369c8378f 100644 --- a/plugins/baser-core/tests/TestCase/PluginTest.php +++ b/plugins/baser-core/tests/TestCase/PluginTest.php @@ -130,7 +130,6 @@ public function testBootStrap(): void export INSTALL_MODE="false" export SITE_URL="https://localhost/" export SSL_URL="https://localhost/" -export ADMIN_SSL="true" export ADMIN_PREFIX="admin" export BASER_CORE_PREFIX="baser" export SQL_LOG="false" diff --git a/plugins/baser-core/tests/TestCase/Service/SiteConfigsServiceTest.php b/plugins/baser-core/tests/TestCase/Service/SiteConfigsServiceTest.php index be7792a56d..0dac5f44ed 100644 --- a/plugins/baser-core/tests/TestCase/Service/SiteConfigsServiceTest.php +++ b/plugins/baser-core/tests/TestCase/Service/SiteConfigsServiceTest.php @@ -77,7 +77,6 @@ public function testGet() $this->assertArrayHasKey('mode', $result); $this->assertArrayHasKey('site_url', $result); $this->assertArrayHasKey('ssl_url', $result); - $this->assertArrayHasKey('admin_ssl', $result); } /** diff --git a/plugins/baser-core/tests/TestCase/Utility/BcUtilTest.php b/plugins/baser-core/tests/TestCase/Utility/BcUtilTest.php index 229a81475a..d93829cd56 100644 --- a/plugins/baser-core/tests/TestCase/Utility/BcUtilTest.php +++ b/plugins/baser-core/tests/TestCase/Utility/BcUtilTest.php @@ -1565,4 +1565,19 @@ public function test_isDebug() Configure::write('debug', false); $this->assertFalse(BcUtil::isDebug()); } + + /** + * test PairToAssoc + */ + public function testPairToAssoc() + { + $result = BcUtil::pairToAssoc('key1', 'value1', 'key2', 'value2', 'key3'); + $this->assertEquals(['key1' => 'value1', 'key2' => 'value2', 'key3' => null], $result); + + $result = BcUtil::pairToAssoc('key1|value1|key2|value2|key3'); + $this->assertEquals(['key1' => 'value1', 'key2' => 'value2', 'key3' => null], $result); + + $result = BcUtil::pairToAssoc(''); + $this->assertEquals([], $result); + } } diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcArrayHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcArrayHelperTest.php index c7b453cfa9..92e50871f6 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcArrayHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcArrayHelperTest.php @@ -13,6 +13,8 @@ use BaserCore\TestSuite\BcTestCase; use BaserCore\View\Helper\BcAdminHelper; use BaserCore\View\Helper\BcArrayHelper; +use Cake\Datasource\ResultSetInterface; +use Cake\ORM\Query; use Cake\View\View; /** @@ -48,22 +50,54 @@ public function tearDown(): void * 配列の最初のキーを判定する * * */ - public function testFirst() + public function testFirstWithArray() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); - $this->assertTrue($this->Helper->first($this->data, 'b')); - $this->assertFalse($this->Helper->first($this->data, 'c')); + $data = [1 => 'カンジ', 2 => 'リュウジ', 3 => 'スナオ', 4 => 'ゴンチャン']; + + $this->assertTrue($this->Helper->first($data, 1)); + $this->assertFalse($this->Helper->first($data, 2)); + + $data = []; + $this->assertFalse($this->Helper->first($data, 1)); + } + + public function testFirstWithQuery() + { + $mockResultSet = $this->createMock(ResultSetInterface::class); + $mockResultSet->method('first')->willReturn([1 => 'a', 2 => 'b', 3 => 'c']); + $mockResultSet->method('key')->willReturn(1); + + $mockQuery = $this->createMock(Query::class); + $mockQuery->method('getIterator')->willReturn($mockResultSet); + + $this->assertTrue($this->Helper->first($mockQuery, 1)); + $this->assertFalse($this->Helper->first($mockQuery, 2)); } /** * 配列の最後のキーを判定する * * */ - public function testLast() + public function testLastWithArray() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $this->assertTrue($this->Helper->last($this->data, 'c')); $this->assertFalse($this->Helper->last($this->data, 'd')); + + $this->data = []; + $this->assertFalse($this->Helper->last($this->data, 'c')); + } + + public function testLastWithQuery() + { + $mockResultSet = $this->createMock(ResultSetInterface::class); + $mockResultSet->method('count')->willReturn(3); + + $mockQuery = $this->createMock(Query::class); + $mockQuery->method('count')->willReturn(3); + $mockQuery->method('getIterator')->willReturn($mockResultSet); + + $this->assertTrue($this->Helper->last($mockQuery, 2)); + $this->assertFalse($this->Helper->last($mockQuery, 1)); } /** diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcBaserHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcBaserHelperTest.php index a2f2a96554..9c3a55aba2 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcBaserHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcBaserHelperTest.php @@ -1283,24 +1283,21 @@ public function testIsSSL() * @return void * @dataProvider charsetDataProvider */ - public function testCharset($expected, $encoding, $url = null) + public function testCharset($expected, $charset , $device) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); - - $this->BcBaser->request = $this->_getRequest($url); - $this->expectOutputString($expected); - if ($encoding !== null) { - $this->BcBaser->charset($encoding); - } else { - $this->BcBaser->charset(); - } + $site = SiteFactory::make(['device' => $device])->getEntity(); + $this->BcBaser->getView()->setRequest($this->getRequest()->withAttribute('currentSite', $site)); + ob_start(); + $this->BcBaser->charset($charset); + $result = ob_get_clean(); + $this->assertEquals($expected, $result); } public static function charsetDataProvider() { return [ - ['', 'UTF-8', '/'], - ['', null, '/m/'] + ['','utf-8', 'desktop'], + ['', null, 'mobile'], ]; } @@ -1906,25 +1903,26 @@ public function testGetPluginBaser() */ public function testGetContentsUrl() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + SiteFactory::make(['id' => 1, 'domain_type' => 2, 'alias' => 'another.com'])->persist(); + ContentFactory::make(['url' => '/news/', 'site_id' => 1])->persist(); // URLが設定されていない場合 - $this->BcBaser->request = $this->_getRequest('/news/'); + $this->BcBaser = new BcBaserHelper(new View($this->getRequest('/news/'))); $this->assertEquals('/news/', $this->BcBaser->getContentsUrl()); // URLの指定がある場合 - $this->BcBaser->request = $this->_getRequest('/'); + $this->BcBaser = new BcBaserHelper(new View($this->getRequest('/'))); $this->assertEquals('/news/', $this->BcBaser->getContentsUrl('/news/')); // サブドメインの指定がない場合 - Configure::write('BcEnv.host', 'another.com'); - $this->BcBaser->request = $this->_getRequest('/news/'); + $siteUrl = Configure::read('BcEnv.siteUrl'); + Configure::write('BcEnv.siteUrl', 'http://another.com/'); + $this->BcBaser = new BcBaserHelper(new View($this->getRequest('/news/'))); $this->assertEquals('http://another.com/news/', $this->BcBaser->getContentsUrl(null, true)); // サブドメインの指定がある場合 Configure::write('BcEnv.host', 'localhost'); - $this->BcBaser->request = $this->_getRequest('/'); - $this->assertEquals('http://another.com/news/', $this->BcBaser->getContentsUrl('/another.com/news/', true, true)); + $this->BcBaser = new BcBaserHelper(new View($this->getRequest('/'))); + $this->assertEquals('http://another.com/news/', $this->BcBaser->getContentsUrl('another.com/news/', true, true)); // サブドメインの指定がないのに指定ありとした場合 - $siteUrl = Configure::read('BcEnv.siteUrl'); Configure::write('BcEnv.siteUrl', 'http://main.com'); - $this->assertEquals('http://main.com/news/', $this->BcBaser->getContentsUrl('/news/', true, true)); + $this->assertEquals('http://main.com/news/', $this->BcBaser->getContentsUrl('/news/', true, false)); Configure::write('BcEnv.siteUrl', $siteUrl); } diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcContentsHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcContentsHelperTest.php index 4a1d99f93f..67347cedd4 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcContentsHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcContentsHelperTest.php @@ -836,4 +836,18 @@ public function test_getJsonItems() $this->assertEquals('["item1","item2","item3"]', $rs); } + public function test_getSiteRoot() + { + $siteRoot = $this->BcContents->getSiteRoot(1); + $this->assertEquals(1, $siteRoot->id); + + //sub site + $siteRoot = $this->BcContents->getSiteRoot(3); + $this->assertEquals(24, $siteRoot->id); + $this->assertEquals('サイトID3のフォルダ', $siteRoot->name); + + $siteRoot = $this->BcContents->getSiteRoot(99); + $this->assertNull($siteRoot); + } + } diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcFreezeHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcFreezeHelperTest.php index e941fa0f89..9b28b6ddd7 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcFreezeHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcFreezeHelperTest.php @@ -558,4 +558,55 @@ public static function passwordDataProvider() [true, 'baser.freezed', ['type' => 'hidden'], '********'], ]; } + + /** + * @dataProvider numberlDataProvider + */ + public function test_number($freezed, $fieldName, $attributes, $expected) + { + if ($freezed) { + [$model, $field] = explode('.', $fieldName); + $request = $this->getRequest()->withData($model, [$field => '123'])->withData('freezed', '123'); + $this->BcFreeze = new BcFreezeHelper(new View($request)); + $this->BcFreeze->freeze(); + } + + $result = $this->BcFreeze->number($fieldName, $attributes); + $this->assertEquals($expected, $result); + } + + public static function numberlDataProvider() + { + return [ + [false, 'baser', [], ''], + [false, 'baser', ['class' => 'bcclass'], ''], + [false, 'baser', ['class' => 'bcclass', 'id' => 'bcid'], ''], + [true, 'baser.freezed', [], '123'], + [true, 'baser.freezed', ['value' => '1234'], '1234'], + [true, 'baser.freezed', ['type' => 'hidden'], '123'], + ]; + } + + /** + * @dataProvider checkboxProvider + */ + public function test_checkbox($freezed, $fieldName, $option, $expected) + { + if ($freezed) { + $this->BcFreeze->freeze(); + } + $result = $this->BcFreeze->checkbox($fieldName, $option); + $this->assertEquals($expected, $result); + } + + + public static function checkboxProvider() + { + return [ + [false, 'baser', ['label' => 'text'], ''], + [true, 'baser', ['label' => 'text'], ''], + [false, 'baser', [], ''], + [true, 'baser', [], ''], + ]; + } } diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcTimeHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcTimeHelperTest.php index 8983d1444d..ead61dc7df 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcTimeHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcTimeHelperTest.php @@ -178,7 +178,6 @@ public static function convertToSeirekiYearDataProvider() */ public function testConvertToWarekiArray($data, $expects, $message) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $result = $this->Helper->convertToWarekiArray($data); $this->assertSame($expects, $result, $message); } @@ -234,7 +233,6 @@ public static function convertToWarekiDataProvider() */ public function testMinutes($data, $expects, $message) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $result = $this->Helper->minutes($data); $this->assertSame($expects, $result, $message); } @@ -245,6 +243,12 @@ public static function minutesDataProvider() ['invalid time', null, '不正な日付形式'], ['1 days', '1440分', '1日'], ['2 week', '20160分', '2週間'], + ['3 month', '129600分', '3ヶ月'], + ['4 year', '2103840分', '4年'], + ['5 hour', '300分', '5時間'], + ['6 minute', '6分', '6分'], + ['7 second', '0.11666666666667分', '7秒'], + ['2023-07-01 12:34:56', '28136374.933333分', '日時'], ]; } @@ -280,7 +284,6 @@ public static function formatDataProvider() */ public function testPastDays($date, $days, $nowDate, $expects, $message) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $now = strtotime($nowDate); $result = $this->Helper->pastDays($date, $days, $now); $this->assertSame($expects, $result, $message); @@ -305,7 +308,6 @@ public static function pastDaysDataProvider() */ public function testGetJpWeek($dateStr, $suffix, $expects, $message) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $result = $this->Helper->getJpWeek($dateStr, $suffix); $this->assertSame($expects, $result, $message); } @@ -328,7 +330,6 @@ public static function getJpWeekDataProvider() */ public function testJpWeek($dateStr, $suffix, $expects, $message) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $this->expectOutputString($expects); $this->Helper->jpWeek($dateStr, $suffix); } diff --git a/plugins/baser-core/tests/TestCase/View/Helper/BcXmlHelperTest.php b/plugins/baser-core/tests/TestCase/View/Helper/BcXmlHelperTest.php index 597d1df037..b6daa85be4 100644 --- a/plugins/baser-core/tests/TestCase/View/Helper/BcXmlHelperTest.php +++ b/plugins/baser-core/tests/TestCase/View/Helper/BcXmlHelperTest.php @@ -12,6 +12,8 @@ use BaserCore\TestSuite\BcTestCase; use BaserCore\View\Helper\BcTextHelper; +use BaserCore\View\Helper\BcXmlHelper; +use Cake\View\View; /** * text helper library. @@ -26,8 +28,7 @@ class BcXmlHelperTest extends BcTestCase public function setUp(): void { parent::setUp(); -// $View = new View(); -// $this->BcXml = new BcXmlHelper($View); + $this->BcXml = new BcXmlHelper(new View()); } /** @@ -52,7 +53,6 @@ public function tearDown(): void */ public function testHeader($attrib, $agent, $expected) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); $_SERVER['HTTP_USER_AGENT'] = $agent; $result = $this->BcXml->header($attrib); @@ -82,6 +82,21 @@ public static function headerDataProvider() 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:9.0.1) Gecko/20100101 Firefox/9.0.1', '' ], + [ + 'xml-stylesheet', + 'Mozilla/5.0', + '' + ], + [ + 'stylesheet', + 'Mozilla/5.0', + '' + ], + [ + [], + 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)', + '' + ] ]; } diff --git a/plugins/bc-admin-third/VERSION.txt b/plugins/bc-admin-third/VERSION.txt deleted file mode 100644 index 3eefcb9dd5..0000000000 --- a/plugins/bc-admin-third/VERSION.txt +++ /dev/null @@ -1 +0,0 @@ -1.0.0 diff --git a/plugins/bc-admin-third/src/bc_custom_content/js/admin/custom_fields/form.js b/plugins/bc-admin-third/src/bc_custom_content/js/admin/custom_fields/form.js index c5fa847240..6467c839ba 100644 --- a/plugins/bc-admin-third/src/bc_custom_content/js/admin/custom_fields/form.js +++ b/plugins/bc-admin-third/src/bc_custom_content/js/admin/custom_fields/form.js @@ -159,7 +159,7 @@ let vm = new Vue({ $preview.appendTo('body'); $(window).on('scroll', function () { var bottom = $(document).innerHeight() - $(window).innerHeight(); - if (bottom <= $(window).scrollTop()) { + if (bottom <= $(window).scrollTop() + 10) { $preview.fadeOut(500); } else { if (vm.displayPreview && $preview.css('display') === 'none') { diff --git a/plugins/bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue b/plugins/bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue index 035f2acd6e..f3494bc741 100644 --- a/plugins/bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue +++ b/plugins/bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue @@ -227,6 +227,7 @@ export default { */ formSubmitted: function () { this.refresh(); + this.currentFavorite = null; this.$refs.modalFavoriteForm.closeModal(); }, @@ -245,6 +246,7 @@ export default { case 'FavoriteDelete': if (!confirm(bcI18n.commonConfirmDeleteMessage)) return false; var id = this.currentFavorite.id; + let t = this; $.bcToken.check(function () { $("#Waiting").show(); axios.post($.bcUtil.apiAdminBaseUrl + "bc-favorite/favorites/delete/" + id + ".json", {}, { @@ -253,9 +255,8 @@ export default { } }).then(function (response) { if (response.status === 200) { - $('#FavoriteRow' + id).fadeOut(300, function () { - $(this).remove(); - }); + t.refresh(); + t.currentFavorite = null; } else { alert(bcI18n.alertServerError); } diff --git a/plugins/bc-admin-third/src/js/admin/_lib/jquery.bcTree.js b/plugins/bc-admin-third/src/js/admin/_lib/jquery.bcTree.js index 1abd1035f0..65544ddd33 100644 --- a/plugins/bc-admin-third/src/js/admin/_lib/jquery.bcTree.js +++ b/plugins/bc-admin-third/src/js/admin/_lib/jquery.bcTree.js @@ -233,9 +233,6 @@ "force_text": true, "check_callback": function (operation, node, node_parent, node_position, more) { if (operation == 'move_node') { - if (!$.bcTree.config.isUseMoveContents) { - return false; - } if (node_parent.type == 'folder' && !node_parent.data.jstree.alias && !node.data.jstree.contentSiteRoot) { $.bcTree.dropTarget = node_parent; $.bcTree.dragTarget = node; @@ -257,7 +254,17 @@ "types" ], "dnd": { - "large_drop_target": true + "large_drop_target": true, + "is_draggable" : function (nodes) { + if (!$.bcTree.config.isUseMoveContents) { + return false; + } + // 最上位のコンテンツは移動不可 + if (nodes[0].parents.length <= 1) { + return false; + } + return true; + }, }, "types": { "default": {}, diff --git a/plugins/bc-admin-third/src/js/admin/site_configs/index.js b/plugins/bc-admin-third/src/js/admin/site_configs/index.js index 67c5eb7414..204a6e32b5 100644 --- a/plugins/bc-admin-third/src/js/admin/site_configs/index.js +++ b/plugins/bc-admin-third/src/js/admin/site_configs/index.js @@ -10,13 +10,7 @@ $(function () { - var script = $("#AdminSiteConfigsFormScript"); - var isAdminSsl = script.attr('data-isAdminSsl'); - $("#BtnSave").click(function () { - if (!isAdminSslCheck(isAdminSsl)) { - return false; - } $.bcUtil.showLoader(); }); @@ -25,7 +19,7 @@ $(function () { // SMTP送信テスト $("#BtnCheckSendmail").click(function () { - if (!confirm(bcI18n.confirmMessage2)) { + if (!confirm(bcI18n.confirmMessage1)) { return false; } $.bcToken.check(function () { @@ -47,7 +41,7 @@ $(function () { } else { errorMessage = errorThrown; } - $("#ResultCheckSendmail").html(bcI18n.alertMessage2 + errorMessage); + $("#ResultCheckSendmail").html(bcI18n.alertMessage1 + errorMessage); }, complete: function () { $("#ResultCheckSendmail").show(); @@ -58,32 +52,6 @@ $(function () { return false; }); - /** - * 管理画面SSLチェック - * @param isAdminSsl - * @returns {boolean} - */ - function isAdminSslCheck(isAdminSsl) { - if (isAdminSsl === "0" && $("input[name='admin_ssl']:checked").val() === "1") { - if (!$("#SiteConfigSslUrl").val()) { - alert(bcI18n.alertMessage1); - window.location.hash = 'ssl-url'; - return false; - } - $.bcConfirm.show({ - title: bcI18n.confirmTitle1, - message: bcI18n.confirmMessage1, - defaultCancel: true, - ok: function () { - $.bcUtil.showLoader(); - $("#SiteConfigFormForm").submit(); - } - }); - return false; - } - return true; - } - /** * エディタ切替時イベント */ diff --git a/plugins/bc-admin-third/templates/Admin/SiteConfigs/index.php b/plugins/bc-admin-third/templates/Admin/SiteConfigs/index.php index 7d4339db58..54facb6e38 100755 --- a/plugins/bc-admin-third/templates/Admin/SiteConfigs/index.php +++ b/plugins/bc-admin-third/templates/Admin/SiteConfigs/index.php @@ -26,16 +26,12 @@ $this->BcAdmin->setTitle(__d('baser_core', 'システム基本設定')); $this->BcAdmin->setHelp('site_configs_form'); $this->BcBaser->i18nScript([ - 'alertMessage1' => __d('baser_core', '管理システムをSSLに切り替える場合には、SSL用のURLを登録してください。'), - 'alertMessage2' => __d('baser_core', 'テストメールを送信に失敗しました。'), - 'confirmMessage1' => __d('baser_core', '管理システムをSSLに切り替えようとしています。よろしいですか?

サーバがSSLに対応していない場合、管理システムを表示する事ができなくなってしまいますのでご注意ください。

もし、表示する事ができなくなってしまった場合は、 /app/Config/install.php の、 BcEnv.sslUrl の値を調整するか、BcApp.adminSsl の値を false に書き換えて復旧してください。'), - 'confirmMessage2' => __d('baser_core', 'テストメールを送信します。いいですか?'), + 'alertMessage1' => __d('baser_core', 'テストメールの送信に失敗しました。'), + 'confirmMessage1' => __d('baser_core', 'テストメールを送信します。よろしいですか?'), 'infoMessage1' => __d('baser_core', 'テストメールを送信しました。'), 'confirmTitle1' => __d('baser_core', '管理システムSSL設定確認') ], ['escape' => false]); -$this->BcBaser->js('admin/site_configs/index.bundle', false, ['id' => 'AdminSiteConfigsFormScript', - 'data-isAdminSsl' => (string)$siteConfig->admin_ssl -]); +$this->BcBaser->js('admin/site_configs/index.bundle', false); ?> @@ -139,25 +135,6 @@
- - - - - +
- BcAdminForm->label('admin_ssl', __d('baser_core', '管理画面SSL設定')) ?> - - BcAdminForm->control('admin_ssl', [ - 'type' => 'radio', - 'options' => $this->BcText->booleanDoList(__d('baser_core', 'SSL通信を利用')), - 'separator' => ' ', - 'legend' => false, - 'disabled' => !$isWritableEnv - ]) ?> - -
- また、SSL用のWebサイトURLの指定が必要です。') ?> -
- BcAdminForm->error('admin_ssl') ?> -
BcAdminForm->label('admin_list_num', __d('baser_core', '管理画面テーマ')) ?> diff --git a/plugins/bc-admin-third/templates/Admin/element/Contents/index_list_tree.php b/plugins/bc-admin-third/templates/Admin/element/Contents/index_list_tree.php index 083410361d..986af8f3e9 100644 --- a/plugins/bc-admin-third/templates/Admin/element/Contents/index_list_tree.php +++ b/plugins/bc-admin-third/templates/Admin/element/Contents/index_list_tree.php @@ -74,7 +74,7 @@ "editDisabled":"", "manageDisabled":"", "deleteDisabled":"" -}' class="jstree-open" +}'class="jstree-open display-none" >title); if (!empty($content->children)) { diff --git a/plugins/bc-admin-third/templates/Admin/element/Plugins/update_download_core.php b/plugins/bc-admin-third/templates/Admin/element/Plugins/update_download_core.php index fa94697af7..d5cab1c6b2 100644 --- a/plugins/bc-admin-third/templates/Admin/element/Plugins/update_download_core.php +++ b/plugins/bc-admin-third/templates/Admin/element/Plugins/update_download_core.php @@ -42,6 +42,10 @@ BcAdminForm->control('currentVersion', ['type' => 'hidden', 'value' => $programVersion]) ?> BcAdminForm->control('targetVersion', ['type' => 'hidden', 'value' => $availableVersion]) ?> +

+ + BcAdminForm->control('targetVersion', ['type' => 'text', 'value' => $availableVersion]) ?> +

BcAdminForm->control('php', [ diff --git a/plugins/bc-admin-third/templates/Admin/element/Plugins/update_now_status.php b/plugins/bc-admin-third/templates/Admin/element/Plugins/update_now_status.php index 2610e657a1..210008a06e 100644 --- a/plugins/bc-admin-third/templates/Admin/element/Plugins/update_now_status.php +++ b/plugins/bc-admin-third/templates/Admin/element/Plugins/update_now_status.php @@ -62,7 +62,14 @@ $scriptMessage): ?>

+ +

+
diff --git a/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js b/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js index e28f499959..154e32d692 100644 --- a/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js +++ b/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js @@ -8,5 +8,5 @@ * @since 5.0.0 * @license https://basercms.net/license/index.html MIT License */ -var t=new Vue({el:"#AdminCustomFieldsForm",data:function(){var t=$("#AdminCustomFieldsFormScript");return{settings:JSON.parse(t.attr("data-setting")),entity:JSON.parse(t.attr("data-entity")),showRowDefaultValue:!1,showRowSource:!1,showRowText:!1,showRowCheck:!1,showRowRegex:!1,showRowPlaceholder:!1,showControlEmailConfirm:!1,showControlMaxFileSize:!1,showControlFileExt:!1,showControlSize:!1,showControlLine:!1,showControlMaxLength:!1,showControlAutoConvert:!1,showControlCounter:!1,showPreview:[],sourceMultiCheckbox:[],sourceRadio:[],sourceSelect:[],displayPreview:!0}},mounted:function(){this.initView()},computed:{arraySource:function(){if(!this.entity.source)return[];var t=this.entity.source.split("\n").map((function(t){return t.replace("\r","")}));return t.length&&""===t[0]?[]:t},multipleDefaultValue:{get:function(){return this.entity.default_value?this.entity.default_value.replace("\r","").split("\n"):[]},set:function(t){this.entity.default_value=t.join("\n")}},checkboxDefaultValue:{get:function(){return!!this.entity.default_value&&"1"===this.entity.default_value},set:function(t){this.entity.default_value=t?"1":""}},checkboxLabel:{get:function(){return this.entity.meta&&void 0!==this.entity.meta.BcCcCheckbox?this.entity.meta.BcCcCheckbox.label:""},set:function(t){this.entity.meta?void 0!==this.entity.meta.BcCcCheckbox?this.entity.meta.BcCcCheckbox.label=t:this.entity.meta.BcCcCheckbox={label:t}:this.entity.meta={BcCcCheckbox:{label:t}}}}},methods:{initView:function(){$.bcUtil.initTooltip(),this.entity.validate||(this.entity.validate=[]),this.initByType(),this.initValidateOptionControls(),$preview=$("#CustomFieldPreview"),$preview.appendTo("body"),$(window).on("scroll",(function(){$(document).innerHeight()-$(window).innerHeight()<=$(window).scrollTop()?$preview.fadeOut(500):t.displayPreview&&"none"===$preview.css("display")&&$preview.fadeIn(500)})),$preview.show()},hidePreview:function(){this.displayPreview=!1,$("#CustomFieldPreview").fadeOut(500)},hideAllOptionsRow:function(){this.showRowDefaultValue=!1,this.showRowSource=!1,this.showRowText=!1,this.showRowCheck=!1,this.showRowRegex=!1,this.showRowPlaceholder=!1},initByType:function(){var t=$("#type").val(),e=$("#RowMeta".concat(t));$(".bca-row-meta").hide(),e.length&&e.show();var i=this.settings[this.entity.type];void 0!==i?(this.initRow(i),this.initValidateControl(i),this.initPreview(this.entity.type,i)):this.hideAllOptionsRow()},initRow:function(t){void 0===t.useDefaultValue||!0===t.useDefaultValue?this.showRowDefaultValue=!0:(this.showRowDefaultValue=!1,this.entity.default_value=""),!0===t.useSource?this.showRowSource=!0:(this.showRowSource=!1,this.entity.source=""),!0===t.useSize||!0===t.useLines||!0===t.useMaxLength||!0===t.useCounter?this.showRowText=!0:this.showRowText=!1,!0===t.useSize?this.showControlSize=!0:(this.showControlSize=!1,this.entity.size=""),!0===t.useLine?this.showControlLine=!0:(this.showControlLine=!1,this.entity.line=""),!0===t.useMaxLength?this.showControlMaxLength=!0:(this.showControlMaxLength=!1,this.entity.max_length=""),!0===t.useAutoConvert?this.showControlAutoConvert=!0:(this.showControlAutoConvert=!1,this.entity.auto_convert=""),!0===t.useCounter?this.showControlCounter=!0:(this.showControlCounter=!1,this.entity.counter=!1),!0===t.useCheckRegex?this.showRowRegex=!0:(this.showRowRegex=!1,this.entity.regex="",this.entity.regex_error_message=""),!0===t.usePlaceholder?this.showRowPlaceholder=!0:(this.showRowPlaceholder=!1,this.entity.placeholder=""),!0===t.useCheckEmail||!0===t.useCheckEmailConfirm||!0===t.useCheckEmailConfirm||!0===t.useCheckNumber||!0===t.useCheckHankaku||!0===t.useCheckZenkakuKatakana||!0===t.useCheckZenkakuHiragana||!0===t.useCheckDatetime||!0===t.useCheckMaxFileSize||!0===t.useCheckFileExt?this.showRowCheck=!0:this.showRowCheck=!1},initPreview:function(t,e){this.showPreview.NonSupport=!1,Object.keys(this.settings).forEach((function(t){this.showPreview[t]=!1}),this),e.preview?this.showPreview[t]=!0:this.showPreview.NonSupport=!0},uncheckValidateControl:function(t){if(this.entity.validate){var e=this.entity.validate.indexOf(t);-1!==e&&this.entity.validate.splice(e,1)}},initValidateControl:function(t){!0===t.useCheckEmail?$("#validate-email").parent().show():($("#validate-email").parent().hide(),this.uncheckValidateControl("EMAIL")),!0===t.useCheckEmailConfirm?$("#validate-email_confirm").parent().show():($("#validate-email_confirm").parent().hide(),this.uncheckValidateControl("EMAIL_CONFIRM")),!0===t.useCheckNumber?$("#validate-number").parent().show():($("#validate-number").parent().hide(),this.uncheckValidateControl("NUMBER")),!0===t.useCheckHankaku?$("#validate-hankaku").parent().show():($("#validate-hankaku").parent().hide(),this.uncheckValidateControl("HANKAKU")),!0===t.useCheckZenkakuKatakana?$("#validate-zenkaku_katakana").parent().show():($("#validate-zenkaku_katakana").parent().hide(),this.uncheckValidateControl("ZENKAKU_KATAKANA")),!0===t.useCheckZenkakuHiragana?$("#validate-zenkaku_hiragana").parent().show():($("#validate-zenkaku_hiragana").parent().hide(),this.uncheckValidateControl("ZENKAKU_HIRAGANA")),!0===t.useCheckDatetime?$("#validate-datetime").parent().show():($("#validate-datetime").parent().hide(),this.uncheckValidateControl("DATETIME")),!0===t.useCheckMaxFileSize?$("#validate-max_file_size").parent().show():($("#validate-max_file_size").parent().hide(),this.uncheckValidateControl("MAX_FILE_SIZE")),!0===t.useCheckFileExt?$("#validate-file_ext").parent().show():($("#validate-file_ext").parent().hide(),this.uncheckValidateControl("FILE_EXT"))},initValidateOptionControls:function(){this.initEmailConfirm(),this.initMaxFileSize(),this.initFileExt()},initEmailConfirm:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("EMAIL_CONFIRM")?this.showControlEmailConfirm=!0:(this.showControlEmailConfirm=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.email_confirm="")))},initMaxFileSize:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("MAX_FILE_SIZE")?($("#ControlMaxFileSize").show(),this.showControlMaxFileSize=!0):(this.showControlMaxFileSize=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.max_file_size="")))},initFileExt:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("FILE_EXT")?this.showControlFileExt=!0:(this.showControlFileExt=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.file_ext="")))}}})})(); +var t=new Vue({el:"#AdminCustomFieldsForm",data:function(){var t=$("#AdminCustomFieldsFormScript");return{settings:JSON.parse(t.attr("data-setting")),entity:JSON.parse(t.attr("data-entity")),showRowDefaultValue:!1,showRowSource:!1,showRowText:!1,showRowCheck:!1,showRowRegex:!1,showRowPlaceholder:!1,showControlEmailConfirm:!1,showControlMaxFileSize:!1,showControlFileExt:!1,showControlSize:!1,showControlLine:!1,showControlMaxLength:!1,showControlAutoConvert:!1,showControlCounter:!1,showPreview:[],sourceMultiCheckbox:[],sourceRadio:[],sourceSelect:[],displayPreview:!0}},mounted:function(){this.initView()},computed:{arraySource:function(){if(!this.entity.source)return[];var t=this.entity.source.split("\n").map((function(t){return t.replace("\r","")}));return t.length&&""===t[0]?[]:t},multipleDefaultValue:{get:function(){return this.entity.default_value?this.entity.default_value.replace("\r","").split("\n"):[]},set:function(t){this.entity.default_value=t.join("\n")}},checkboxDefaultValue:{get:function(){return!!this.entity.default_value&&"1"===this.entity.default_value},set:function(t){this.entity.default_value=t?"1":""}},checkboxLabel:{get:function(){return this.entity.meta&&void 0!==this.entity.meta.BcCcCheckbox?this.entity.meta.BcCcCheckbox.label:""},set:function(t){this.entity.meta?void 0!==this.entity.meta.BcCcCheckbox?this.entity.meta.BcCcCheckbox.label=t:this.entity.meta.BcCcCheckbox={label:t}:this.entity.meta={BcCcCheckbox:{label:t}}}}},methods:{initView:function(){$.bcUtil.initTooltip(),this.entity.validate||(this.entity.validate=[]),this.initByType(),this.initValidateOptionControls(),$preview=$("#CustomFieldPreview"),$preview.appendTo("body"),$(window).on("scroll",(function(){$(document).innerHeight()-$(window).innerHeight()<=$(window).scrollTop()+10?$preview.fadeOut(500):t.displayPreview&&"none"===$preview.css("display")&&$preview.fadeIn(500)})),$preview.show()},hidePreview:function(){this.displayPreview=!1,$("#CustomFieldPreview").fadeOut(500)},hideAllOptionsRow:function(){this.showRowDefaultValue=!1,this.showRowSource=!1,this.showRowText=!1,this.showRowCheck=!1,this.showRowRegex=!1,this.showRowPlaceholder=!1},initByType:function(){var t=$("#type").val(),e=$("#RowMeta".concat(t));$(".bca-row-meta").hide(),e.length&&e.show();var i=this.settings[this.entity.type];void 0!==i?(this.initRow(i),this.initValidateControl(i),this.initPreview(this.entity.type,i)):this.hideAllOptionsRow()},initRow:function(t){void 0===t.useDefaultValue||!0===t.useDefaultValue?this.showRowDefaultValue=!0:(this.showRowDefaultValue=!1,this.entity.default_value=""),!0===t.useSource?this.showRowSource=!0:(this.showRowSource=!1,this.entity.source=""),!0===t.useSize||!0===t.useLines||!0===t.useMaxLength||!0===t.useCounter?this.showRowText=!0:this.showRowText=!1,!0===t.useSize?this.showControlSize=!0:(this.showControlSize=!1,this.entity.size=""),!0===t.useLine?this.showControlLine=!0:(this.showControlLine=!1,this.entity.line=""),!0===t.useMaxLength?this.showControlMaxLength=!0:(this.showControlMaxLength=!1,this.entity.max_length=""),!0===t.useAutoConvert?this.showControlAutoConvert=!0:(this.showControlAutoConvert=!1,this.entity.auto_convert=""),!0===t.useCounter?this.showControlCounter=!0:(this.showControlCounter=!1,this.entity.counter=!1),!0===t.useCheckRegex?this.showRowRegex=!0:(this.showRowRegex=!1,this.entity.regex="",this.entity.regex_error_message=""),!0===t.usePlaceholder?this.showRowPlaceholder=!0:(this.showRowPlaceholder=!1,this.entity.placeholder=""),!0===t.useCheckEmail||!0===t.useCheckEmailConfirm||!0===t.useCheckEmailConfirm||!0===t.useCheckNumber||!0===t.useCheckHankaku||!0===t.useCheckZenkakuKatakana||!0===t.useCheckZenkakuHiragana||!0===t.useCheckDatetime||!0===t.useCheckMaxFileSize||!0===t.useCheckFileExt?this.showRowCheck=!0:this.showRowCheck=!1},initPreview:function(t,e){this.showPreview.NonSupport=!1,Object.keys(this.settings).forEach((function(t){this.showPreview[t]=!1}),this),e.preview?this.showPreview[t]=!0:this.showPreview.NonSupport=!0},uncheckValidateControl:function(t){if(this.entity.validate){var e=this.entity.validate.indexOf(t);-1!==e&&this.entity.validate.splice(e,1)}},initValidateControl:function(t){!0===t.useCheckEmail?$("#validate-email").parent().show():($("#validate-email").parent().hide(),this.uncheckValidateControl("EMAIL")),!0===t.useCheckEmailConfirm?$("#validate-email_confirm").parent().show():($("#validate-email_confirm").parent().hide(),this.uncheckValidateControl("EMAIL_CONFIRM")),!0===t.useCheckNumber?$("#validate-number").parent().show():($("#validate-number").parent().hide(),this.uncheckValidateControl("NUMBER")),!0===t.useCheckHankaku?$("#validate-hankaku").parent().show():($("#validate-hankaku").parent().hide(),this.uncheckValidateControl("HANKAKU")),!0===t.useCheckZenkakuKatakana?$("#validate-zenkaku_katakana").parent().show():($("#validate-zenkaku_katakana").parent().hide(),this.uncheckValidateControl("ZENKAKU_KATAKANA")),!0===t.useCheckZenkakuHiragana?$("#validate-zenkaku_hiragana").parent().show():($("#validate-zenkaku_hiragana").parent().hide(),this.uncheckValidateControl("ZENKAKU_HIRAGANA")),!0===t.useCheckDatetime?$("#validate-datetime").parent().show():($("#validate-datetime").parent().hide(),this.uncheckValidateControl("DATETIME")),!0===t.useCheckMaxFileSize?$("#validate-max_file_size").parent().show():($("#validate-max_file_size").parent().hide(),this.uncheckValidateControl("MAX_FILE_SIZE")),!0===t.useCheckFileExt?$("#validate-file_ext").parent().show():($("#validate-file_ext").parent().hide(),this.uncheckValidateControl("FILE_EXT"))},initValidateOptionControls:function(){this.initEmailConfirm(),this.initMaxFileSize(),this.initFileExt()},initEmailConfirm:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("EMAIL_CONFIRM")?this.showControlEmailConfirm=!0:(this.showControlEmailConfirm=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.email_confirm="")))},initMaxFileSize:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("MAX_FILE_SIZE")?($("#ControlMaxFileSize").show(),this.showControlMaxFileSize=!0):(this.showControlMaxFileSize=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.max_file_size="")))},initFileExt:function(){null!==this.entity.validate&&void 0!==this.entity.validate&&(this.entity.validate.includes("FILE_EXT")?this.showControlFileExt=!0:(this.showControlFileExt=!1,this.entity.meta&&void 0!==this.entity.meta.BcCustomContent&&(this.entity.meta.BcCustomContent.file_ext="")))}}})})(); //# sourceMappingURL=form.bundle.js.map \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js.map b/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js.map index 9cc7538b33..5daaefed9a 100644 --- a/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js.map +++ b/plugins/bc-admin-third/webroot/bc_custom_content/js/admin/custom_fields/form.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"bc_custom_content/js/admin/custom_fields/form.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/./src/bc_custom_content/js/admin/custom_fields/form.js"],"sourcesContent":["/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n\nlet vm = new Vue({\n\n /**\n * Element\n */\n el: '#AdminCustomFieldsForm',\n\n /**\n * data\n * @returns Object\n */\n data: function () {\n const script = $('#AdminCustomFieldsFormScript');\n return {\n settings: JSON.parse(script.attr('data-setting')),\n entity: JSON.parse(script.attr('data-entity')),\n showRowDefaultValue: false,\n showRowSource: false,\n showRowText: false,\n showRowCheck: false,\n showRowRegex: false,\n showRowPlaceholder: false,\n showControlEmailConfirm: false,\n showControlMaxFileSize: false,\n showControlFileExt: false,\n showControlSize: false,\n showControlLine: false,\n showControlMaxLength: false,\n showControlAutoConvert: false,\n showControlCounter: false,\n showPreview: [],\n sourceMultiCheckbox: [],\n sourceRadio: [],\n sourceSelect: [],\n displayPreview: true\n }\n },\n\n /**\n * Mounted\n */\n mounted: function () {\n this.initView();\n },\n\n /**\n * Computed\n */\n computed: {\n /**\n * 配列の選択リストを取得\n *\n * @returns {{length}|*|*[]}\n */\n arraySource: function() {\n if(!this.entity.source) return [];\n let arraySource = this.entity.source.split(\"\\n\").map(function(v){\n return v.replace('\\r', '');\n });\n if(arraySource.length && arraySource[0] === '') {\n return [];\n }\n return arraySource;\n },\n\n /**\n * マルチチェックボックスの初期値を取得\n *\n * マルチチェックボックスを利用している場合、初期値欄とプレビューの双方向反映のために利用する。\n * 利用するには、プレビュー用のテンプレートで、v-model=\"multipleDefaultValue\" を指定する。\n */\n multipleDefaultValue: {\n get: function() {\n if(!this.entity.default_value) return[];\n return this.entity.default_value.replace('\\r', '').split(\"\\n\");\n },\n set: function(value) {\n this.entity.default_value = value.join(\"\\n\");\n }\n },\n\n /**\n * チェックボックスの初期値を取得\n *\n * チェックボックスを利用している場合、初期値欄とプレビューの双方向反映のために利用する。\n * 利用するには、プレビュー用のテンプレートで、v-model=\"checkboxDefaultValue\" を指定する。\n */\n checkboxDefaultValue: {\n get: function() {\n if(!this.entity.default_value) return false;\n return this.entity.default_value === '1';\n },\n set: function(value) {\n this.entity.default_value = value ? '1' : '';\n }\n },\n\n /**\n * チェックボックスのラベルを取得\n *\n * @todo プラグインへの依存を解決する\n * @returns {string|*}\n */\n checkboxLabel: {\n get: function () {\n if(this.entity.meta && this.entity.meta.BcCcCheckbox !== undefined) {\n return this.entity.meta.BcCcCheckbox.label;\n }\n return '';\n },\n set: function(value) {\n if(this.entity.meta) {\n if(this.entity.meta.BcCcCheckbox !== undefined) {\n this.entity.meta.BcCcCheckbox.label = value;\n } else {\n this.entity.meta.BcCcCheckbox = {\n label: value\n }\n }\n } else {\n this.entity.meta = {\n BcCcCheckbox: {\n label: value\n }\n };\n }\n }\n }\n },\n\n /**\n * Methods\n */\n methods: {\n\n /**\n * 表示を初期化する\n */\n initView() {\n // テンプレート内のツールチップがリセットされてしまうため再度ヘルプのツールチップを設定\n $.bcUtil.initTooltip();\n if(!this.entity.validate) {\n this.entity.validate = [];\n }\n this.initByType();\n this.initValidateOptionControls();\n $preview = $(\"#CustomFieldPreview\");\n $preview.appendTo('body');\n $(window).on('scroll', function () {\n var bottom = $(document).innerHeight() - $(window).innerHeight();\n if (bottom <= $(window).scrollTop()) {\n $preview.fadeOut(500);\n } else {\n if (vm.displayPreview && $preview.css('display') === 'none') {\n $preview.fadeIn(500);\n }\n }\n });\n $preview.show();\n },\n\n /**\n * プレビューを非表示にする\n */\n hidePreview() {\n this.displayPreview = false;\n $(\"#CustomFieldPreview\").fadeOut(500);\n },\n\n /**\n * 全てのオプション行を非表示にする\n */\n hideAllOptionsRow: function () {\n this.showRowDefaultValue = false;\n this.showRowSource = false;\n this.showRowText = false;\n this.showRowCheck = false;\n this.showRowRegex = false;\n this.showRowPlaceholder = false;\n },\n /**\n * フィールドタイプによって表示を変更する\n */\n initByType: function () {\n\n const type = $('#type').val();\n let $rowType = $(`#RowMeta${type}`);\n\n $('.bca-row-meta').hide();\n\n // プラグインのメタフィールド\n if ($rowType.length) {\n $rowType.show();\n }\n\n const setting = this.settings[this.entity.type];\n\n if (setting === undefined) {\n this.hideAllOptionsRow();\n return;\n }\n\n this.initRow(setting);\n this.initValidateControl(setting);\n this.initPreview(this.entity.type, setting);\n },\n\n /**\n * 行の表示を初期化する\n */\n initRow: function (setting) {\n\n // 初期値(デフォルト:表示)\n if (setting.useDefaultValue === undefined || setting.useDefaultValue === true) {\n this.showRowDefaultValue = true;\n } else {\n this.showRowDefaultValue = false;\n this.entity.default_value = '';\n }\n\n // 選択リスト(デフォルト:非表示)\n if (setting.useSource === true) {\n this.showRowSource = true;\n } else {\n this.showRowSource = false;\n this.entity.source = '';\n }\n\n // テキスト関連(デフォルト:非表示)\n if (setting.useSize === true || setting.useLines === true ||\n setting.useMaxLength === true || setting.useCounter === true) {\n this.showRowText = true;\n } else {\n this.showRowText = false;\n }\n\n // サイズ(デフォルト:非表示)\n if (setting.useSize === true) {\n this.showControlSize = true;\n } else {\n this.showControlSize = false;\n this.entity.size = '';\n }\n // ライン(デフォルト:非表示)\n if (setting.useLine === true) {\n this.showControlLine = true;\n } else {\n this.showControlLine = false;\n this.entity.line = '';\n }\n // 最大値(デフォルト:非表示)\n if (setting.useMaxLength === true) {\n this.showControlMaxLength = true;\n } else {\n this.showControlMaxLength = false;\n this.entity.max_length = '';\n }\n\n // 自動変換(デフォルト:非表示)\n if (setting.useAutoConvert === true) {\n this.showControlAutoConvert = true;\n } else {\n this.showControlAutoConvert = false;\n this.entity.auto_convert = '';\n }\n\n // カウンター(デフォルト:非表示)\n if (setting.useCounter === true) {\n this.showControlCounter = true;\n } else {\n this.showControlCounter = false;\n this.entity.counter = false;\n }\n\n // 正規表現(デフォルト:非表示)\n if (setting.useCheckRegex === true) {\n this.showRowRegex = true;\n } else {\n this.showRowRegex = false;\n this.entity.regex = '';\n this.entity.regex_error_message = '';\n }\n\n // プレースホルダー(デフォルト:非表示)\n if (setting.usePlaceholder === true) {\n this.showRowPlaceholder = true;\n } else {\n this.showRowPlaceholder = false;\n this.entity.placeholder = '';\n }\n\n // 入力チェック(デフォルト:非表示)\n if (setting.useCheckEmail === true || setting.useCheckEmailConfirm === true ||\n setting.useCheckEmailConfirm === true || setting.useCheckNumber === true ||\n setting.useCheckHankaku === true || setting.useCheckZenkakuKatakana === true ||\n setting.useCheckZenkakuHiragana === true || setting.useCheckDatetime === true ||\n setting.useCheckMaxFileSize === true || setting.useCheckFileExt === true) {\n this.showRowCheck = true;\n } else {\n this.showRowCheck = false;\n }\n },\n\n /**\n * プレビューを初期化する\n *\n * @param type\n * @param setting\n */\n initPreview: function (type, setting) {\n this.showPreview['NonSupport'] = false;\n Object.keys(this.settings).forEach(function (key) {\n this.showPreview[key] = false;\n }, this);\n if (setting.preview) {\n this.showPreview[type] = true;\n } else {\n this.showPreview['NonSupport'] = true;\n }\n },\n\n /**\n * 入力チェックフィールドの指定した値のチェックを外す\n * @param target\n */\n uncheckValidateControl: function (target) {\n if (!this.entity.validate) return;\n const index = this.entity.validate.indexOf(target);\n if(index !== -1) {\n this.entity.validate.splice(index, 1);\n }\n },\n\n /**\n * 入力チェックフィールドを初期化する\n *\n * 複数チェックボックスの options をコントロールするにあたり、\n * 時間的な問題でjQueryのままで一旦実装。\n *\n * @param setting\n */\n initValidateControl(setting) {\n // Eメールチェック(デフォルト:非表示)\n if (setting.useCheckEmail === true) {\n $(\"#validate-email\").parent().show();\n } else {\n $(\"#validate-email\").parent().hide();\n this.uncheckValidateControl('EMAIL');\n }\n\n // Eメール確認チェック(デフォルト:非表示)\n if (setting.useCheckEmailConfirm === true) {\n $(\"#validate-email_confirm\").parent().show();\n } else {\n $(\"#validate-email_confirm\").parent().hide();\n this.uncheckValidateControl('EMAIL_CONFIRM');\n }\n\n // 数値チェック(デフォルト:非表示)\n if (setting.useCheckNumber === true) {\n $(\"#validate-number\").parent().show();\n } else {\n $(\"#validate-number\").parent().hide();\n this.uncheckValidateControl('NUMBER');\n }\n\n // 半角英数チェック(デフォルト:非表示)\n if (setting.useCheckHankaku === true) {\n $(\"#validate-hankaku\").parent().show();\n } else {\n $(\"#validate-hankaku\").parent().hide();\n this.uncheckValidateControl('HANKAKU');\n }\n\n // 全角カタカナチェック(デフォルト:非表示)\n if (setting.useCheckZenkakuKatakana === true) {\n $(\"#validate-zenkaku_katakana\").parent().show();\n } else {\n $(\"#validate-zenkaku_katakana\").parent().hide();\n this.uncheckValidateControl('ZENKAKU_KATAKANA');\n }\n\n // 全角ひらがなチェック(デフォルト:非表示)\n if (setting.useCheckZenkakuHiragana === true) {\n $(\"#validate-zenkaku_hiragana\").parent().show();\n } else {\n $(\"#validate-zenkaku_hiragana\").parent().hide();\n this.uncheckValidateControl('ZENKAKU_HIRAGANA');\n }\n\n // 日付チェック(デフォルト:非表示)\n if (setting.useCheckDatetime === true) {\n $(\"#validate-datetime\").parent().show();\n } else {\n $(\"#validate-datetime\").parent().hide();\n this.uncheckValidateControl('DATETIME');\n }\n\n // ファイルアップロードサイズ制限(デフォルト:非表示)\n if (setting.useCheckMaxFileSize === true) {\n $(\"#validate-max_file_size\").parent().show();\n } else {\n $(\"#validate-max_file_size\").parent().hide();\n this.uncheckValidateControl('MAX_FILE_SIZE');\n }\n\n // ファイル拡張子チェック(デフォルト:非表示)\n if (setting.useCheckFileExt === true) {\n $(\"#validate-file_ext\").parent().show();\n } else {\n $(\"#validate-file_ext\").parent().hide();\n this.uncheckValidateControl('FILE_EXT');\n }\n },\n\n /**\n * 入力チェックのオプションのコントロールを初期化する\n */\n initValidateOptionControls() {\n this.initEmailConfirm();\n this.initMaxFileSize();\n this.initFileExt();\n },\n\n /**\n * Eメール比較先フィールド名の表示を切り替える\n */\n initEmailConfirm: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('EMAIL_CONFIRM')) {\n this.showControlEmailConfirm = true;\n } else {\n this.showControlEmailConfirm = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.email_confirm = '';\n }\n }\n },\n\n /**\n * ファイルアップロードサイズ上限の表示を切り替える\n */\n initMaxFileSize: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('MAX_FILE_SIZE')) {\n $('#ControlMaxFileSize').show();\n this.showControlMaxFileSize = true;\n } else {\n this.showControlMaxFileSize = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.max_file_size = '';\n }\n }\n },\n\n /**\n * アップロードを許可する拡張子の表示を切り替える\n */\n initFileExt: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('FILE_EXT')) {\n this.showControlFileExt = true;\n } else {\n this.showControlFileExt = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.file_ext = '';\n }\n }\n }\n }\n});\n"],"names":["vm","Vue","el","data","script","$","settings","JSON","parse","attr","entity","showRowDefaultValue","showRowSource","showRowText","showRowCheck","showRowRegex","showRowPlaceholder","showControlEmailConfirm","showControlMaxFileSize","showControlFileExt","showControlSize","showControlLine","showControlMaxLength","showControlAutoConvert","showControlCounter","showPreview","sourceMultiCheckbox","sourceRadio","sourceSelect","displayPreview","mounted","this","initView","computed","arraySource","source","split","map","v","replace","length","multipleDefaultValue","get","default_value","set","value","join","checkboxDefaultValue","checkboxLabel","meta","undefined","BcCcCheckbox","label","methods","bcUtil","initTooltip","validate","initByType","initValidateOptionControls","$preview","appendTo","window","on","document","innerHeight","scrollTop","fadeOut","css","fadeIn","show","hidePreview","hideAllOptionsRow","type","val","$rowType","concat","hide","setting","initRow","initValidateControl","initPreview","useDefaultValue","useSource","useSize","useLines","useMaxLength","useCounter","size","useLine","line","max_length","useAutoConvert","auto_convert","counter","useCheckRegex","regex","regex_error_message","usePlaceholder","placeholder","useCheckEmail","useCheckEmailConfirm","useCheckNumber","useCheckHankaku","useCheckZenkakuKatakana","useCheckZenkakuHiragana","useCheckDatetime","useCheckMaxFileSize","useCheckFileExt","Object","keys","forEach","key","preview","uncheckValidateControl","target","index","indexOf","splice","parent","initEmailConfirm","initMaxFileSize","initFileExt","includes","BcCustomContent","email_confirm","max_file_size","file_ext"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"bc_custom_content/js/admin/custom_fields/form.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/./src/bc_custom_content/js/admin/custom_fields/form.js"],"sourcesContent":["/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n\nlet vm = new Vue({\n\n /**\n * Element\n */\n el: '#AdminCustomFieldsForm',\n\n /**\n * data\n * @returns Object\n */\n data: function () {\n const script = $('#AdminCustomFieldsFormScript');\n return {\n settings: JSON.parse(script.attr('data-setting')),\n entity: JSON.parse(script.attr('data-entity')),\n showRowDefaultValue: false,\n showRowSource: false,\n showRowText: false,\n showRowCheck: false,\n showRowRegex: false,\n showRowPlaceholder: false,\n showControlEmailConfirm: false,\n showControlMaxFileSize: false,\n showControlFileExt: false,\n showControlSize: false,\n showControlLine: false,\n showControlMaxLength: false,\n showControlAutoConvert: false,\n showControlCounter: false,\n showPreview: [],\n sourceMultiCheckbox: [],\n sourceRadio: [],\n sourceSelect: [],\n displayPreview: true\n }\n },\n\n /**\n * Mounted\n */\n mounted: function () {\n this.initView();\n },\n\n /**\n * Computed\n */\n computed: {\n /**\n * 配列の選択リストを取得\n *\n * @returns {{length}|*|*[]}\n */\n arraySource: function() {\n if(!this.entity.source) return [];\n let arraySource = this.entity.source.split(\"\\n\").map(function(v){\n return v.replace('\\r', '');\n });\n if(arraySource.length && arraySource[0] === '') {\n return [];\n }\n return arraySource;\n },\n\n /**\n * マルチチェックボックスの初期値を取得\n *\n * マルチチェックボックスを利用している場合、初期値欄とプレビューの双方向反映のために利用する。\n * 利用するには、プレビュー用のテンプレートで、v-model=\"multipleDefaultValue\" を指定する。\n */\n multipleDefaultValue: {\n get: function() {\n if(!this.entity.default_value) return[];\n return this.entity.default_value.replace('\\r', '').split(\"\\n\");\n },\n set: function(value) {\n this.entity.default_value = value.join(\"\\n\");\n }\n },\n\n /**\n * チェックボックスの初期値を取得\n *\n * チェックボックスを利用している場合、初期値欄とプレビューの双方向反映のために利用する。\n * 利用するには、プレビュー用のテンプレートで、v-model=\"checkboxDefaultValue\" を指定する。\n */\n checkboxDefaultValue: {\n get: function() {\n if(!this.entity.default_value) return false;\n return this.entity.default_value === '1';\n },\n set: function(value) {\n this.entity.default_value = value ? '1' : '';\n }\n },\n\n /**\n * チェックボックスのラベルを取得\n *\n * @todo プラグインへの依存を解決する\n * @returns {string|*}\n */\n checkboxLabel: {\n get: function () {\n if(this.entity.meta && this.entity.meta.BcCcCheckbox !== undefined) {\n return this.entity.meta.BcCcCheckbox.label;\n }\n return '';\n },\n set: function(value) {\n if(this.entity.meta) {\n if(this.entity.meta.BcCcCheckbox !== undefined) {\n this.entity.meta.BcCcCheckbox.label = value;\n } else {\n this.entity.meta.BcCcCheckbox = {\n label: value\n }\n }\n } else {\n this.entity.meta = {\n BcCcCheckbox: {\n label: value\n }\n };\n }\n }\n }\n },\n\n /**\n * Methods\n */\n methods: {\n\n /**\n * 表示を初期化する\n */\n initView() {\n // テンプレート内のツールチップがリセットされてしまうため再度ヘルプのツールチップを設定\n $.bcUtil.initTooltip();\n if(!this.entity.validate) {\n this.entity.validate = [];\n }\n this.initByType();\n this.initValidateOptionControls();\n $preview = $(\"#CustomFieldPreview\");\n $preview.appendTo('body');\n $(window).on('scroll', function () {\n var bottom = $(document).innerHeight() - $(window).innerHeight();\n if (bottom <= $(window).scrollTop() + 10) {\n $preview.fadeOut(500);\n } else {\n if (vm.displayPreview && $preview.css('display') === 'none') {\n $preview.fadeIn(500);\n }\n }\n });\n $preview.show();\n },\n\n /**\n * プレビューを非表示にする\n */\n hidePreview() {\n this.displayPreview = false;\n $(\"#CustomFieldPreview\").fadeOut(500);\n },\n\n /**\n * 全てのオプション行を非表示にする\n */\n hideAllOptionsRow: function () {\n this.showRowDefaultValue = false;\n this.showRowSource = false;\n this.showRowText = false;\n this.showRowCheck = false;\n this.showRowRegex = false;\n this.showRowPlaceholder = false;\n },\n /**\n * フィールドタイプによって表示を変更する\n */\n initByType: function () {\n\n const type = $('#type').val();\n let $rowType = $(`#RowMeta${type}`);\n\n $('.bca-row-meta').hide();\n\n // プラグインのメタフィールド\n if ($rowType.length) {\n $rowType.show();\n }\n\n const setting = this.settings[this.entity.type];\n\n if (setting === undefined) {\n this.hideAllOptionsRow();\n return;\n }\n\n this.initRow(setting);\n this.initValidateControl(setting);\n this.initPreview(this.entity.type, setting);\n },\n\n /**\n * 行の表示を初期化する\n */\n initRow: function (setting) {\n\n // 初期値(デフォルト:表示)\n if (setting.useDefaultValue === undefined || setting.useDefaultValue === true) {\n this.showRowDefaultValue = true;\n } else {\n this.showRowDefaultValue = false;\n this.entity.default_value = '';\n }\n\n // 選択リスト(デフォルト:非表示)\n if (setting.useSource === true) {\n this.showRowSource = true;\n } else {\n this.showRowSource = false;\n this.entity.source = '';\n }\n\n // テキスト関連(デフォルト:非表示)\n if (setting.useSize === true || setting.useLines === true ||\n setting.useMaxLength === true || setting.useCounter === true) {\n this.showRowText = true;\n } else {\n this.showRowText = false;\n }\n\n // サイズ(デフォルト:非表示)\n if (setting.useSize === true) {\n this.showControlSize = true;\n } else {\n this.showControlSize = false;\n this.entity.size = '';\n }\n // ライン(デフォルト:非表示)\n if (setting.useLine === true) {\n this.showControlLine = true;\n } else {\n this.showControlLine = false;\n this.entity.line = '';\n }\n // 最大値(デフォルト:非表示)\n if (setting.useMaxLength === true) {\n this.showControlMaxLength = true;\n } else {\n this.showControlMaxLength = false;\n this.entity.max_length = '';\n }\n\n // 自動変換(デフォルト:非表示)\n if (setting.useAutoConvert === true) {\n this.showControlAutoConvert = true;\n } else {\n this.showControlAutoConvert = false;\n this.entity.auto_convert = '';\n }\n\n // カウンター(デフォルト:非表示)\n if (setting.useCounter === true) {\n this.showControlCounter = true;\n } else {\n this.showControlCounter = false;\n this.entity.counter = false;\n }\n\n // 正規表現(デフォルト:非表示)\n if (setting.useCheckRegex === true) {\n this.showRowRegex = true;\n } else {\n this.showRowRegex = false;\n this.entity.regex = '';\n this.entity.regex_error_message = '';\n }\n\n // プレースホルダー(デフォルト:非表示)\n if (setting.usePlaceholder === true) {\n this.showRowPlaceholder = true;\n } else {\n this.showRowPlaceholder = false;\n this.entity.placeholder = '';\n }\n\n // 入力チェック(デフォルト:非表示)\n if (setting.useCheckEmail === true || setting.useCheckEmailConfirm === true ||\n setting.useCheckEmailConfirm === true || setting.useCheckNumber === true ||\n setting.useCheckHankaku === true || setting.useCheckZenkakuKatakana === true ||\n setting.useCheckZenkakuHiragana === true || setting.useCheckDatetime === true ||\n setting.useCheckMaxFileSize === true || setting.useCheckFileExt === true) {\n this.showRowCheck = true;\n } else {\n this.showRowCheck = false;\n }\n },\n\n /**\n * プレビューを初期化する\n *\n * @param type\n * @param setting\n */\n initPreview: function (type, setting) {\n this.showPreview['NonSupport'] = false;\n Object.keys(this.settings).forEach(function (key) {\n this.showPreview[key] = false;\n }, this);\n if (setting.preview) {\n this.showPreview[type] = true;\n } else {\n this.showPreview['NonSupport'] = true;\n }\n },\n\n /**\n * 入力チェックフィールドの指定した値のチェックを外す\n * @param target\n */\n uncheckValidateControl: function (target) {\n if (!this.entity.validate) return;\n const index = this.entity.validate.indexOf(target);\n if(index !== -1) {\n this.entity.validate.splice(index, 1);\n }\n },\n\n /**\n * 入力チェックフィールドを初期化する\n *\n * 複数チェックボックスの options をコントロールするにあたり、\n * 時間的な問題でjQueryのままで一旦実装。\n *\n * @param setting\n */\n initValidateControl(setting) {\n // Eメールチェック(デフォルト:非表示)\n if (setting.useCheckEmail === true) {\n $(\"#validate-email\").parent().show();\n } else {\n $(\"#validate-email\").parent().hide();\n this.uncheckValidateControl('EMAIL');\n }\n\n // Eメール確認チェック(デフォルト:非表示)\n if (setting.useCheckEmailConfirm === true) {\n $(\"#validate-email_confirm\").parent().show();\n } else {\n $(\"#validate-email_confirm\").parent().hide();\n this.uncheckValidateControl('EMAIL_CONFIRM');\n }\n\n // 数値チェック(デフォルト:非表示)\n if (setting.useCheckNumber === true) {\n $(\"#validate-number\").parent().show();\n } else {\n $(\"#validate-number\").parent().hide();\n this.uncheckValidateControl('NUMBER');\n }\n\n // 半角英数チェック(デフォルト:非表示)\n if (setting.useCheckHankaku === true) {\n $(\"#validate-hankaku\").parent().show();\n } else {\n $(\"#validate-hankaku\").parent().hide();\n this.uncheckValidateControl('HANKAKU');\n }\n\n // 全角カタカナチェック(デフォルト:非表示)\n if (setting.useCheckZenkakuKatakana === true) {\n $(\"#validate-zenkaku_katakana\").parent().show();\n } else {\n $(\"#validate-zenkaku_katakana\").parent().hide();\n this.uncheckValidateControl('ZENKAKU_KATAKANA');\n }\n\n // 全角ひらがなチェック(デフォルト:非表示)\n if (setting.useCheckZenkakuHiragana === true) {\n $(\"#validate-zenkaku_hiragana\").parent().show();\n } else {\n $(\"#validate-zenkaku_hiragana\").parent().hide();\n this.uncheckValidateControl('ZENKAKU_HIRAGANA');\n }\n\n // 日付チェック(デフォルト:非表示)\n if (setting.useCheckDatetime === true) {\n $(\"#validate-datetime\").parent().show();\n } else {\n $(\"#validate-datetime\").parent().hide();\n this.uncheckValidateControl('DATETIME');\n }\n\n // ファイルアップロードサイズ制限(デフォルト:非表示)\n if (setting.useCheckMaxFileSize === true) {\n $(\"#validate-max_file_size\").parent().show();\n } else {\n $(\"#validate-max_file_size\").parent().hide();\n this.uncheckValidateControl('MAX_FILE_SIZE');\n }\n\n // ファイル拡張子チェック(デフォルト:非表示)\n if (setting.useCheckFileExt === true) {\n $(\"#validate-file_ext\").parent().show();\n } else {\n $(\"#validate-file_ext\").parent().hide();\n this.uncheckValidateControl('FILE_EXT');\n }\n },\n\n /**\n * 入力チェックのオプションのコントロールを初期化する\n */\n initValidateOptionControls() {\n this.initEmailConfirm();\n this.initMaxFileSize();\n this.initFileExt();\n },\n\n /**\n * Eメール比較先フィールド名の表示を切り替える\n */\n initEmailConfirm: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('EMAIL_CONFIRM')) {\n this.showControlEmailConfirm = true;\n } else {\n this.showControlEmailConfirm = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.email_confirm = '';\n }\n }\n },\n\n /**\n * ファイルアップロードサイズ上限の表示を切り替える\n */\n initMaxFileSize: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('MAX_FILE_SIZE')) {\n $('#ControlMaxFileSize').show();\n this.showControlMaxFileSize = true;\n } else {\n this.showControlMaxFileSize = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.max_file_size = '';\n }\n }\n },\n\n /**\n * アップロードを許可する拡張子の表示を切り替える\n */\n initFileExt: function () {\n if(this.entity.validate === null || this.entity.validate === undefined) return;\n if (this.entity.validate.includes('FILE_EXT')) {\n this.showControlFileExt = true;\n } else {\n this.showControlFileExt = false;\n if(this.entity.meta && this.entity.meta.BcCustomContent !== undefined) {\n this.entity.meta.BcCustomContent.file_ext = '';\n }\n }\n }\n }\n});\n"],"names":["vm","Vue","el","data","script","$","settings","JSON","parse","attr","entity","showRowDefaultValue","showRowSource","showRowText","showRowCheck","showRowRegex","showRowPlaceholder","showControlEmailConfirm","showControlMaxFileSize","showControlFileExt","showControlSize","showControlLine","showControlMaxLength","showControlAutoConvert","showControlCounter","showPreview","sourceMultiCheckbox","sourceRadio","sourceSelect","displayPreview","mounted","this","initView","computed","arraySource","source","split","map","v","replace","length","multipleDefaultValue","get","default_value","set","value","join","checkboxDefaultValue","checkboxLabel","meta","undefined","BcCcCheckbox","label","methods","bcUtil","initTooltip","validate","initByType","initValidateOptionControls","$preview","appendTo","window","on","document","innerHeight","scrollTop","fadeOut","css","fadeIn","show","hidePreview","hideAllOptionsRow","type","val","$rowType","concat","hide","setting","initRow","initValidateControl","initPreview","useDefaultValue","useSource","useSize","useLines","useMaxLength","useCounter","size","useLine","line","max_length","useAutoConvert","auto_convert","counter","useCheckRegex","regex","regex_error_message","usePlaceholder","placeholder","useCheckEmail","useCheckEmailConfirm","useCheckNumber","useCheckHankaku","useCheckZenkakuKatakana","useCheckZenkakuHiragana","useCheckDatetime","useCheckMaxFileSize","useCheckFileExt","Object","keys","forEach","key","preview","uncheckValidateControl","target","index","indexOf","splice","parent","initEmailConfirm","initMaxFileSize","initFileExt","includes","BcCustomContent","email_confirm","max_file_size","file_ext"],"sourceRoot":""} \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js b/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js index ca112e9f49..01036ae5ca 100644 --- a/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js +++ b/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js @@ -1,2 +1,2 @@ -(()=>{"use strict";var t,e={4959:(t,e,i)=>{var a=i(1608),r=i.n(a),o=function(){var t=this,e=t._self._c;return e("div",{attrs:{id:"FavoriteListWrap"}},[e("h2",{staticClass:"bca-nav-favorite-title"},[e("button",{staticClass:"bca-collapse__btn bca-nav-favorite-title-button",attrs:{type:"button",id:"btn-favorite-expand","data-bca-collapse":"favorite-collapse","data-bca-target":"#favoriteBody","aria-expanded":t.ariaExpanded,"aria-controls":"favoriteBody"},on:{click:t.changeOpenFavorite}},[t._v("\n "+t._s(t.i18nFavorite)+"\n "),e("i",{staticClass:"bca-icon--chevron-down bca-nav-favorite-title-icon"})])]),t._v(" "),t.favorites.length?e("ul",{staticClass:"favorite-menu-list bca-nav-favorite-list bca-collapse",style:"display:"+t.favoriteBoxOpened,attrs:{id:"favoriteBody"}},t._l(t.favorites,(function(i,a){return e("li",{key:a,staticClass:"bca-nav-favorite-list-item",attrs:{id:"FavoriteRow"+i.id,"data-id":i.id},on:{mousedown:function(e){return t.changeSelected(i)}}},[e("a",{attrs:{href:t.baseUrl+i.url,title:i.url}},[e("span",{staticClass:"bca-nav-favorite-list-item-label"},[t._v(t._s(i.name))])])])})),0):e("ul",{staticClass:"favorite-menu-list bca-nav-favorite-list bca-collapse",style:"display:"+t.favoriteBoxOpened,attrs:{id:"favoriteBody"}},[e("li",{staticClass:"no-data"},[e("small",[t._v(t._s(t.i18nNoData))])])]),t._v(" "),e("div",{staticClass:"ui-widget",attrs:{id:"FavoriteDialog"}},[e("modal",{ref:"modalFavoriteForm",attrs:{scrollable:!1,hidden:""}},[e("favorite-form",{ref:"FavoriteForm",attrs:{"user-id":t.userId,"current-page-url":t.currentPageUrl,"current-page-name":t.currentPageName,"current-favorite":t.currentFavorite},on:{formUpdated:t.formUpdated,formSubmitted:t.formSubmitted}}),t._v(" "),e("template",{slot:"footer"},[e("button",{staticClass:"bca-btn",attrs:{type:"button"},on:{click:function(e){return t.$refs.modalFavoriteForm.closeModal()}}},[t._v(t._s(t.buttonCancel))]),t._v(" \n "),e("button",{staticClass:"bca-btn",attrs:{type:"button",disabled:t.formError},on:{click:function(e){return t.$refs.FavoriteForm.formSubmit()}}},[t._v("\n "+t._s(t.buttonSubmit)+"\n ")])])],2)],1)])};o._withStripped=!0;var n=i(8071),s=function(){var t=this,e=t._self._c;return e("form",{attrs:{method:"POST",id:"FavoriteAjaxForm"}},[e("h2",{staticClass:"bca-main__header-title"},[t._v(t._s(t.windowTitle))]),t._v(" "),e("input",{attrs:{type:"hidden",name:"id"},domProps:{value:t.id}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"user_id"},domProps:{value:t.userId}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"_csrfToken"}}),t._v(" "),e("dl",[e("dt",[e("label",{attrs:{for:"FavoriteName"}},[t._v(t._s(t.labelTitle))])]),t._v(" "),e("dd",[e("span",{staticClass:"bca-textbox"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.name,expression:"name"}],staticClass:"required",attrs:{type:"text",id:"FavoriteName",placeholder:t.labelTitle,size:"30",name:"name",autofocus:""},domProps:{value:t.name},on:{input:[function(e){e.target.composing||(t.name=e.target.value)},t.formUpdated]}})]),e("br"),t._v(" "),t.$v.name.$invalid?e("div",{staticClass:"invalid-feedback"},[t._v(t._s(t.alertRequire))]):t._e()]),t._v(" "),e("dt",[e("label",{attrs:{for:"FavoriteUrl"}}),t._v(t._s(t.labelUrl))]),t._v(" "),e("dd",[e("span",{staticClass:"bca-textbox"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],staticClass:"required",attrs:{type:"text",id:"FavoriteUrl",placeholder:t.labelUrl,size:"30",name:"url"},domProps:{value:t.url},on:{input:[function(e){e.target.composing||(t.url=e.target.value)},t.formUpdated]}})]),e("br"),t._v(" "),t.$v.url.$invalid?e("div",{staticClass:"invalid-feedback"},[t._v(t._s(t.alertRequire))]):t._e()])])])};s._withStripped=!0;var l=i(9285),d=(l.validationMixin,l.default,i(8836).required);const c={name:"FavoriteForm",data:function(){return{alertRequire:bcI18n.alertRequire,windowTitle:null,addTitle:bcI18n.addTitle,editTitle:bcI18n.editTitle,labelTitle:bcI18n.labelTitle,labelUrl:bcI18n.labelUrl,name:"",url:"",id:""}},validations:{name:{required:d},url:{required:d}},props:["userId","currentPageName","currentPageUrl","currentFavorite"],mounted:function(){this.currentFavorite?(this.id=this.currentFavorite.id,this.name=this.currentFavorite.name,this.url=this.currentFavorite.url,this.windowTitle=this.editTitle):(this.name=this.currentPageName,this.url=this.currentPageUrl,this.windowTitle=this.addTitle)},methods:{formUpdated:function(){this.$emit("formUpdated",this.$v.$invalid)},formSubmit:function(){var t;t=this.id?$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/edit/"+this.id+".json":$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/add.json";var e=this.userId,i=this.name,a=this.url,r=this;$.bcToken.check((function(){n.Z.post(t,{user_id:e,name:i,url:a,_csrfToken:$.bcToken.key}).then(function(t){t.data&&($("#Waiting").hide(),$.bcToken.key=null,r.$emit("formSubmitted"))}.bind(this)).catch((function(t){if(t.response){var e=t.response.data.message+"\n",i=t.response.data.errors;Object.keys(i).forEach((function(t){Object.keys(i[t]).forEach((function(a){e=e+"\n"+i[t][a]}))})),alert(e)}else console.log("Error",t.message);$("#Waiting").hide(),$.bcToken.key=null,r.$emit("formSubmitted")}))}),{useUpdate:!1,hideLoader:!1})}}};var u=i(5440);const v=(0,u.Z)(c,s,[],!1,null,null,null).exports;var f=function(){var t=this,e=t._self._c;return t.showModal?e("transition",{attrs:{name:"modal",appear:""}},[e("div",{staticClass:"modal modal-overlay",on:{click:function(e){return e.target!==e.currentTarget?null:t.closeModal.apply(null,arguments)}}},[e("div",{staticClass:"modal-window"},[e("div",{staticClass:"modal-content"},[t._t("default")],2),t._v(" "),e("footer",{staticClass:"modal-footer"},[t._t("footer",(function(){return[e("button",{attrs:{type:"button"},on:{click:t.closeModal}},[t._v("Close")])]}))],2)])])]):t._e()};f._withStripped=!0;const h={props:{scrollable:Boolean},data:function(){return{showModal:!1}},methods:{openModal:function(t){this.showModal=!0,this.$nextTick((function(){this.scrollable?($(".modal-overlay").css("align-items","normal"),$(".modal-window").css("overflow","scroll").css("display","grid")):($(".modal-overlay").css("align-items","center"),$(".modal-window").css("overflow","hidden")),this.$emit("modal-opened",t)}))},closeModal:function(){this.$emit("modal-closed"),this.showModal=!1}}};const m={data:function(){return{favoriteBoxOpened:"none",buttonSubmit:bcI18n.buttonSubmit,buttonCancel:bcI18n.buttonCancel,i18nFavorite:bcI18n.i18nFavorite,i18nNoData:bcI18n.i18nNoData,i18nEdit:bcI18n.i18nEdit,i18nDelete:bcI18n.i18nDelete,favorites:[],ariaExpanded:"true",baseUrl:$.bcUtil.baseUrl,formError:!1,favorite:{},currentFavorite:null}},props:["userId","currentPageName","currentPageUrl"],components:{FavoriteForm:v,Modal:(0,u.Z)(h,f,[],!1,null,null,null).exports},mounted:function(){this.initFavorite()},methods:{formUpdated:function(t){this.formError=t},initFavorite:function(){this.refresh();var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/get_favorite_box_opened.json";n.Z.get(t).then(function(t){"1"===t.data.result?(this.favoriteBoxOpened="block",this.ariaExpanded="false"):(this.favoriteBoxOpened="none",this.ariaExpanded="true")}.bind(this)),$.contextMenu({selector:".favorite-menu-list li",items:{FavoriteEdit:{name:bcI18n.i18nEdit,icon:"edit"},FavoriteDelete:{name:bcI18n.i18nDelete,icon:"delete"}},callback:this.contextMenuClickHandler})},changeSelected:function(t){this.currentFavorite=t},changeOpenFavorite:function(){var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/save_favorite_box";"block"===this.favoriteBoxOpened?(this.favoriteBoxOpened="none",this.ariaExpanded="true",$.bcToken.check((function(){n.Z.post(t+".json",{},{headers:{"X-CSRF-Token":$.bcToken.key}})}),{loaderType:"none"})):(this.favoriteBoxOpened="block",this.ariaExpanded="false",$.bcToken.check((function(){n.Z.post(t+"/1.json",{},{headers:{"X-CSRF-Token":$.bcToken.key}})}),{loaderType:"none"}))},refresh:function(){var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/index.json";n.Z.get(t).then(function(t){this.favorites=t.data.favorites}.bind(this))},openModal:function(t){this.$refs.modalFavoriteForm.openModal(t)},formSubmitted:function(){this.refresh(),this.$refs.modalFavoriteForm.closeModal()},contextMenuClickHandler:function(t,e,i){switch(t){case"FavoriteEdit":this.openModal();break;case"FavoriteDelete":if(!confirm(bcI18n.commonConfirmDeleteMessage))return!1;var a=this.currentFavorite.id;$.bcToken.check((function(){$("#Waiting").show(),n.Z.post($.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/delete/"+a+".json",{},{headers:{"X-CSRF-Token":$.bcToken.key}}).then(function(t){200===t.status?$("#FavoriteRow"+a).fadeOut(300,(function(){$(this).remove()})):alert(bcI18n.alertServerError),$("#Waiting").hide()}.bind(this)).catch((function(t){alert(bcI18n.alertServerError),$("#Waiting").hide()}))}),{hideLoader:!1})}}}};const p=(0,u.Z)(m,o,[],!1,null,null,null).exports;var b=i(9285);({mounted:function(){this.initView(),this.registerEvents()},initView:function(){$("body").append($("#FavoritesMenu")),r().use(b.default),new(r())({el:"#FavoriteMenu",components:{FavoriteIndex:p}}),$("#BtnFavoriteHelp").bt({trigger:"click",positions:"top",shadow:!0,shadowOffsetX:3,shadowOffsetY:3,shadowBlur:8,shadowColor:"rgba(0,0,0,.8)",shadowOverlap:!1,noShadowOpts:{strokeStyle:"#999",strokeWidth:3},width:"360px",spikeLength:12,spikeGirth:18,padding:15,cornerRadius:0,strokeWidth:6,strokeStyle:"#690",fill:"rgba(255, 255, 255, 1.00)",cssStyles:{fontSize:"12px"},showTip:function(t){$(t).fadeIn(200)},hideTip:function(t,e){$(t).animate({opacity:0},100,e)},contentSelector:"$(this).next('.helptext').html()"}),this.initFavoriteList(),$("#FavoriteAjaxForm").validate()},registerEvents:function(){$("#BtnFavoriteAdd").click((function(){document.querySelector("#FavoriteListWrap").__vue__.openModal()})),$("#FavoriteAjaxForm").submit((function(){return!1}))},favoriteSortStartHandler:function(t,e){$("ul.favorite-menu-list .placeholder").css("height",e.item.height()),e.item.startIndex=e.item.index()},favoriteSortUpdateHandler:function(t,e){var i=$(".favorite-menu-list"),a=e.item.index()-e.item.startIndex,r=e.item.attr("data-id");$.bcToken.check((function(){var t={id:r,offset:a,_csrfToken:$.bcToken.key};return $.ajax({url:$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/change_sort.json",type:"POST",data:t,dataType:"text",beforeSend:function(){$("#Waiting").show()},success:function(t){i.find("li").each((function(t){$(this).attr("id","FavoriteRow"+t)}))},error:function(){i.sortable("cancel"),alert(bcI18n.favoriteAlertMessage1)},complete:function(){$("#Waiting").hide()}})}),{hideLoader:!1})},initFavoriteList:function(){var t=$(".favorite-menu-list"),e=$(".favorite-menu-list li");e.unbind();try{t.sortable("destroy")}catch(t){}t.sortable({scroll:!0,opacity:.8,zIndex:55,containment:"body",tolerance:"pointer",distance:5,cursor:"pointer",placeholder:"ui-widget-content placeholder",revert:100,start:this.favoriteSortStartHandler,update:this.favoriteSortUpdateHandler});var i=1;e.each((function(){$(this).attr("class").match(/no-data/)||null!=$(this).find("a").html()?($(this).attr("id","FavoriteRow"+i),i++):$(this).remove()}))}}).mounted()}},i={};function a(t){var r=i[t];if(void 0!==r)return r.exports;var o=i[t]={exports:{}};return e[t].call(o.exports,o,o.exports,a),o.exports}a.m=e,t=[],a.O=(e,i,r,o)=>{if(!i){var n=1/0;for(c=0;c=o)&&Object.keys(a.O).every((t=>a.O[t](i[l])))?i.splice(l--,1):(s=!1,o0&&t[c-1][2]>o;c--)t[c]=t[c-1];t[c]=[i,r,o]},a.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return a.d(e,{a:e}),e},a.d=(t,e)=>{for(var i in e)a.o(e,i)&&!a.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),a.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),a.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.j=7689,(()=>{var t={7689:0};a.O.j=e=>0===t[e];var e=(e,i)=>{var r,o,[n,s,l]=i,d=0;if(n.some((e=>0!==t[e]))){for(r in s)a.o(s,r)&&(a.m[r]=s[r]);if(l)var c=l(a)}for(e&&e(i);da(4959)));r=a.O(r)})(); +(()=>{"use strict";var t,e={1754:(t,e,i)=>{var a=i(1608),r=i.n(a),o=function(){var t=this,e=t._self._c;return e("div",{attrs:{id:"FavoriteListWrap"}},[e("h2",{staticClass:"bca-nav-favorite-title"},[e("button",{staticClass:"bca-collapse__btn bca-nav-favorite-title-button",attrs:{type:"button",id:"btn-favorite-expand","data-bca-collapse":"favorite-collapse","data-bca-target":"#favoriteBody","aria-expanded":t.ariaExpanded,"aria-controls":"favoriteBody"},on:{click:t.changeOpenFavorite}},[t._v("\n "+t._s(t.i18nFavorite)+"\n "),e("i",{staticClass:"bca-icon--chevron-down bca-nav-favorite-title-icon"})])]),t._v(" "),t.favorites.length?e("ul",{staticClass:"favorite-menu-list bca-nav-favorite-list bca-collapse",style:"display:"+t.favoriteBoxOpened,attrs:{id:"favoriteBody"}},t._l(t.favorites,(function(i,a){return e("li",{key:a,staticClass:"bca-nav-favorite-list-item",attrs:{id:"FavoriteRow"+i.id,"data-id":i.id},on:{mousedown:function(e){return t.changeSelected(i)}}},[e("a",{attrs:{href:t.baseUrl+i.url,title:i.url}},[e("span",{staticClass:"bca-nav-favorite-list-item-label"},[t._v(t._s(i.name))])])])})),0):e("ul",{staticClass:"favorite-menu-list bca-nav-favorite-list bca-collapse",style:"display:"+t.favoriteBoxOpened,attrs:{id:"favoriteBody"}},[e("li",{staticClass:"no-data"},[e("small",[t._v(t._s(t.i18nNoData))])])]),t._v(" "),e("div",{staticClass:"ui-widget",attrs:{id:"FavoriteDialog"}},[e("modal",{ref:"modalFavoriteForm",attrs:{scrollable:!1,hidden:""}},[e("favorite-form",{ref:"FavoriteForm",attrs:{"user-id":t.userId,"current-page-url":t.currentPageUrl,"current-page-name":t.currentPageName,"current-favorite":t.currentFavorite},on:{formUpdated:t.formUpdated,formSubmitted:t.formSubmitted}}),t._v(" "),e("template",{slot:"footer"},[e("button",{staticClass:"bca-btn",attrs:{type:"button"},on:{click:function(e){return t.$refs.modalFavoriteForm.closeModal()}}},[t._v(t._s(t.buttonCancel))]),t._v(" \n "),e("button",{staticClass:"bca-btn",attrs:{type:"button",disabled:t.formError},on:{click:function(e){return t.$refs.FavoriteForm.formSubmit()}}},[t._v("\n "+t._s(t.buttonSubmit)+"\n ")])])],2)],1)])};o._withStripped=!0;var n=i(8071),s=function(){var t=this,e=t._self._c;return e("form",{attrs:{method:"POST",id:"FavoriteAjaxForm"}},[e("h2",{staticClass:"bca-main__header-title"},[t._v(t._s(t.windowTitle))]),t._v(" "),e("input",{attrs:{type:"hidden",name:"id"},domProps:{value:t.id}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"user_id"},domProps:{value:t.userId}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"_csrfToken"}}),t._v(" "),e("dl",[e("dt",[e("label",{attrs:{for:"FavoriteName"}},[t._v(t._s(t.labelTitle))])]),t._v(" "),e("dd",[e("span",{staticClass:"bca-textbox"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.name,expression:"name"}],staticClass:"required",attrs:{type:"text",id:"FavoriteName",placeholder:t.labelTitle,size:"30",name:"name",autofocus:""},domProps:{value:t.name},on:{input:[function(e){e.target.composing||(t.name=e.target.value)},t.formUpdated]}})]),e("br"),t._v(" "),t.$v.name.$invalid?e("div",{staticClass:"invalid-feedback"},[t._v(t._s(t.alertRequire))]):t._e()]),t._v(" "),e("dt",[e("label",{attrs:{for:"FavoriteUrl"}}),t._v(t._s(t.labelUrl))]),t._v(" "),e("dd",[e("span",{staticClass:"bca-textbox"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],staticClass:"required",attrs:{type:"text",id:"FavoriteUrl",placeholder:t.labelUrl,size:"30",name:"url"},domProps:{value:t.url},on:{input:[function(e){e.target.composing||(t.url=e.target.value)},t.formUpdated]}})]),e("br"),t._v(" "),t.$v.url.$invalid?e("div",{staticClass:"invalid-feedback"},[t._v(t._s(t.alertRequire))]):t._e()])])])};s._withStripped=!0;var l=i(9285),d=(l.validationMixin,l.default,i(8836).required);const c={name:"FavoriteForm",data:function(){return{alertRequire:bcI18n.alertRequire,windowTitle:null,addTitle:bcI18n.addTitle,editTitle:bcI18n.editTitle,labelTitle:bcI18n.labelTitle,labelUrl:bcI18n.labelUrl,name:"",url:"",id:""}},validations:{name:{required:d},url:{required:d}},props:["userId","currentPageName","currentPageUrl","currentFavorite"],mounted:function(){this.currentFavorite?(this.id=this.currentFavorite.id,this.name=this.currentFavorite.name,this.url=this.currentFavorite.url,this.windowTitle=this.editTitle):(this.name=this.currentPageName,this.url=this.currentPageUrl,this.windowTitle=this.addTitle)},methods:{formUpdated:function(){this.$emit("formUpdated",this.$v.$invalid)},formSubmit:function(){var t;t=this.id?$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/edit/"+this.id+".json":$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/add.json";var e=this.userId,i=this.name,a=this.url,r=this;$.bcToken.check((function(){n.Z.post(t,{user_id:e,name:i,url:a,_csrfToken:$.bcToken.key}).then(function(t){t.data&&($("#Waiting").hide(),$.bcToken.key=null,r.$emit("formSubmitted"))}.bind(this)).catch((function(t){if(t.response){var e=t.response.data.message+"\n",i=t.response.data.errors;Object.keys(i).forEach((function(t){Object.keys(i[t]).forEach((function(a){e=e+"\n"+i[t][a]}))})),alert(e)}else console.log("Error",t.message);$("#Waiting").hide(),$.bcToken.key=null,r.$emit("formSubmitted")}))}),{useUpdate:!1,hideLoader:!1})}}};var u=i(5440);const v=(0,u.Z)(c,s,[],!1,null,null,null).exports;var f=function(){var t=this,e=t._self._c;return t.showModal?e("transition",{attrs:{name:"modal",appear:""}},[e("div",{staticClass:"modal modal-overlay",on:{click:function(e){return e.target!==e.currentTarget?null:t.closeModal.apply(null,arguments)}}},[e("div",{staticClass:"modal-window"},[e("div",{staticClass:"modal-content"},[t._t("default")],2),t._v(" "),e("footer",{staticClass:"modal-footer"},[t._t("footer",(function(){return[e("button",{attrs:{type:"button"},on:{click:t.closeModal}},[t._v("Close")])]}))],2)])])]):t._e()};f._withStripped=!0;const h={props:{scrollable:Boolean},data:function(){return{showModal:!1}},methods:{openModal:function(t){this.showModal=!0,this.$nextTick((function(){this.scrollable?($(".modal-overlay").css("align-items","normal"),$(".modal-window").css("overflow","scroll").css("display","grid")):($(".modal-overlay").css("align-items","center"),$(".modal-window").css("overflow","hidden")),this.$emit("modal-opened",t)}))},closeModal:function(){this.$emit("modal-closed"),this.showModal=!1}}};const m={data:function(){return{favoriteBoxOpened:"none",buttonSubmit:bcI18n.buttonSubmit,buttonCancel:bcI18n.buttonCancel,i18nFavorite:bcI18n.i18nFavorite,i18nNoData:bcI18n.i18nNoData,i18nEdit:bcI18n.i18nEdit,i18nDelete:bcI18n.i18nDelete,favorites:[],ariaExpanded:"true",baseUrl:$.bcUtil.baseUrl,formError:!1,favorite:{},currentFavorite:null}},props:["userId","currentPageName","currentPageUrl"],components:{FavoriteForm:v,Modal:(0,u.Z)(h,f,[],!1,null,null,null).exports},mounted:function(){this.initFavorite()},methods:{formUpdated:function(t){this.formError=t},initFavorite:function(){this.refresh();var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/get_favorite_box_opened.json";n.Z.get(t).then(function(t){"1"===t.data.result?(this.favoriteBoxOpened="block",this.ariaExpanded="false"):(this.favoriteBoxOpened="none",this.ariaExpanded="true")}.bind(this)),$.contextMenu({selector:".favorite-menu-list li",items:{FavoriteEdit:{name:bcI18n.i18nEdit,icon:"edit"},FavoriteDelete:{name:bcI18n.i18nDelete,icon:"delete"}},callback:this.contextMenuClickHandler})},changeSelected:function(t){this.currentFavorite=t},changeOpenFavorite:function(){var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/save_favorite_box";"block"===this.favoriteBoxOpened?(this.favoriteBoxOpened="none",this.ariaExpanded="true",$.bcToken.check((function(){n.Z.post(t+".json",{},{headers:{"X-CSRF-Token":$.bcToken.key}})}),{loaderType:"none"})):(this.favoriteBoxOpened="block",this.ariaExpanded="false",$.bcToken.check((function(){n.Z.post(t+"/1.json",{},{headers:{"X-CSRF-Token":$.bcToken.key}})}),{loaderType:"none"}))},refresh:function(){var t=$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/index.json";n.Z.get(t).then(function(t){this.favorites=t.data.favorites}.bind(this))},openModal:function(t){this.$refs.modalFavoriteForm.openModal(t)},formSubmitted:function(){this.refresh(),this.currentFavorite=null,this.$refs.modalFavoriteForm.closeModal()},contextMenuClickHandler:function(t,e,i){switch(t){case"FavoriteEdit":this.openModal();break;case"FavoriteDelete":if(!confirm(bcI18n.commonConfirmDeleteMessage))return!1;var a=this.currentFavorite.id,r=this;$.bcToken.check((function(){$("#Waiting").show(),n.Z.post($.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/delete/"+a+".json",{},{headers:{"X-CSRF-Token":$.bcToken.key}}).then(function(t){200===t.status?(r.refresh(),r.currentFavorite=null):alert(bcI18n.alertServerError),$("#Waiting").hide()}.bind(this)).catch((function(t){alert(bcI18n.alertServerError),$("#Waiting").hide()}))}),{hideLoader:!1})}}}};const p=(0,u.Z)(m,o,[],!1,null,null,null).exports;var b=i(9285);({mounted:function(){this.initView(),this.registerEvents()},initView:function(){$("body").append($("#FavoritesMenu")),r().use(b.default),new(r())({el:"#FavoriteMenu",components:{FavoriteIndex:p}}),$("#BtnFavoriteHelp").bt({trigger:"click",positions:"top",shadow:!0,shadowOffsetX:3,shadowOffsetY:3,shadowBlur:8,shadowColor:"rgba(0,0,0,.8)",shadowOverlap:!1,noShadowOpts:{strokeStyle:"#999",strokeWidth:3},width:"360px",spikeLength:12,spikeGirth:18,padding:15,cornerRadius:0,strokeWidth:6,strokeStyle:"#690",fill:"rgba(255, 255, 255, 1.00)",cssStyles:{fontSize:"12px"},showTip:function(t){$(t).fadeIn(200)},hideTip:function(t,e){$(t).animate({opacity:0},100,e)},contentSelector:"$(this).next('.helptext').html()"}),this.initFavoriteList(),$("#FavoriteAjaxForm").validate()},registerEvents:function(){$("#BtnFavoriteAdd").click((function(){document.querySelector("#FavoriteListWrap").__vue__.openModal()})),$("#FavoriteAjaxForm").submit((function(){return!1}))},favoriteSortStartHandler:function(t,e){$("ul.favorite-menu-list .placeholder").css("height",e.item.height()),e.item.startIndex=e.item.index()},favoriteSortUpdateHandler:function(t,e){var i=$(".favorite-menu-list"),a=e.item.index()-e.item.startIndex,r=e.item.attr("data-id");$.bcToken.check((function(){var t={id:r,offset:a,_csrfToken:$.bcToken.key};return $.ajax({url:$.bcUtil.apiAdminBaseUrl+"bc-favorite/favorites/change_sort.json",type:"POST",data:t,dataType:"text",beforeSend:function(){$("#Waiting").show()},success:function(t){i.find("li").each((function(t){$(this).attr("id","FavoriteRow"+t)}))},error:function(){i.sortable("cancel"),alert(bcI18n.favoriteAlertMessage1)},complete:function(){$("#Waiting").hide()}})}),{hideLoader:!1})},initFavoriteList:function(){var t=$(".favorite-menu-list"),e=$(".favorite-menu-list li");e.unbind();try{t.sortable("destroy")}catch(t){}t.sortable({scroll:!0,opacity:.8,zIndex:55,containment:"body",tolerance:"pointer",distance:5,cursor:"pointer",placeholder:"ui-widget-content placeholder",revert:100,start:this.favoriteSortStartHandler,update:this.favoriteSortUpdateHandler});var i=1;e.each((function(){$(this).attr("class").match(/no-data/)||null!=$(this).find("a").html()?($(this).attr("id","FavoriteRow"+i),i++):$(this).remove()}))}}).mounted()}},i={};function a(t){var r=i[t];if(void 0!==r)return r.exports;var o=i[t]={exports:{}};return e[t].call(o.exports,o,o.exports,a),o.exports}a.m=e,t=[],a.O=(e,i,r,o)=>{if(!i){var n=1/0;for(c=0;c=o)&&Object.keys(a.O).every((t=>a.O[t](i[l])))?i.splice(l--,1):(s=!1,o0&&t[c-1][2]>o;c--)t[c]=t[c-1];t[c]=[i,r,o]},a.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return a.d(e,{a:e}),e},a.d=(t,e)=>{for(var i in e)a.o(e,i)&&!a.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},a.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),a.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),a.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.j=7689,(()=>{var t={7689:0};a.O.j=e=>0===t[e];var e=(e,i)=>{var r,o,[n,s,l]=i,d=0;if(n.some((e=>0!==t[e]))){for(r in s)a.o(s,r)&&(a.m[r]=s[r]);if(l)var c=l(a)}for(e&&e(i);da(1754)));r=a.O(r)})(); //# sourceMappingURL=main.bundle.js.map \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js.map b/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js.map index 5679e74ff0..0c935cef5b 100644 --- a/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js.map +++ b/plugins/bc-admin-third/webroot/bc_favorite/js/admin/favorites/main.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"bc_favorite/js/admin/favorites/main.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/webpack/runtime/chunk loaded","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue","webpack://bc-admin-third/src/bc_favorite/js/admin/favorites/form.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue?ade0","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue?26b7","webpack://bc-admin-third/./src/js/common/modal.vue","webpack://bc-admin-third/src/js/common/modal.vue","webpack://bc-admin-third/./src/js/common/modal.vue?c67e","webpack://bc-admin-third/./src/js/common/modal.vue?4869","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue?305a","webpack://bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue?cdc0","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/main.js","webpack://bc-admin-third/webpack/bootstrap","webpack://bc-admin-third/webpack/runtime/compat get default export","webpack://bc-admin-third/webpack/runtime/define property getters","webpack://bc-admin-third/webpack/runtime/global","webpack://bc-admin-third/webpack/runtime/hasOwnProperty shorthand","webpack://bc-admin-third/webpack/runtime/make namespace object","webpack://bc-admin-third/webpack/runtime/runtimeId","webpack://bc-admin-third/webpack/runtime/jsonp chunk loading","webpack://bc-admin-third/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var render = function render() {\n var _vm = this,\n _c = _vm._self._c\n return _c(\"div\", { attrs: { id: \"FavoriteListWrap\" } }, [\n _c(\"h2\", { staticClass: \"bca-nav-favorite-title\" }, [\n _c(\n \"button\",\n {\n staticClass: \"bca-collapse__btn bca-nav-favorite-title-button\",\n attrs: {\n type: \"button\",\n id: \"btn-favorite-expand\",\n \"data-bca-collapse\": \"favorite-collapse\",\n \"data-bca-target\": \"#favoriteBody\",\n \"aria-expanded\": _vm.ariaExpanded,\n \"aria-controls\": \"favoriteBody\",\n },\n on: { click: _vm.changeOpenFavorite },\n },\n [\n _vm._v(\n \"\\n \" + _vm._s(_vm.i18nFavorite) + \"\\n \"\n ),\n _c(\"i\", {\n staticClass: \"bca-icon--chevron-down bca-nav-favorite-title-icon\",\n }),\n ]\n ),\n ]),\n _vm._v(\" \"),\n _vm.favorites.length\n ? _c(\n \"ul\",\n {\n staticClass:\n \"favorite-menu-list bca-nav-favorite-list bca-collapse\",\n style: \"display:\" + _vm.favoriteBoxOpened,\n attrs: { id: \"favoriteBody\" },\n },\n _vm._l(_vm.favorites, function (favorite, i) {\n return _c(\n \"li\",\n {\n key: i,\n staticClass: \"bca-nav-favorite-list-item\",\n attrs: {\n id: \"FavoriteRow\" + favorite.id,\n \"data-id\": favorite.id,\n },\n on: {\n mousedown: function ($event) {\n return _vm.changeSelected(favorite)\n },\n },\n },\n [\n _c(\n \"a\",\n {\n attrs: {\n href: _vm.baseUrl + favorite.url,\n title: favorite.url,\n },\n },\n [\n _c(\n \"span\",\n { staticClass: \"bca-nav-favorite-list-item-label\" },\n [_vm._v(_vm._s(favorite.name))]\n ),\n ]\n ),\n ]\n )\n }),\n 0\n )\n : _c(\n \"ul\",\n {\n staticClass:\n \"favorite-menu-list bca-nav-favorite-list bca-collapse\",\n style: \"display:\" + _vm.favoriteBoxOpened,\n attrs: { id: \"favoriteBody\" },\n },\n [\n _c(\"li\", { staticClass: \"no-data\" }, [\n _c(\"small\", [_vm._v(_vm._s(_vm.i18nNoData))]),\n ]),\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"ui-widget\", attrs: { id: \"FavoriteDialog\" } },\n [\n _c(\n \"modal\",\n {\n ref: \"modalFavoriteForm\",\n attrs: { scrollable: false, hidden: \"\" },\n },\n [\n _c(\"favorite-form\", {\n ref: \"FavoriteForm\",\n attrs: {\n \"user-id\": _vm.userId,\n \"current-page-url\": _vm.currentPageUrl,\n \"current-page-name\": _vm.currentPageName,\n \"current-favorite\": _vm.currentFavorite,\n },\n on: {\n formUpdated: _vm.formUpdated,\n formSubmitted: _vm.formSubmitted,\n },\n }),\n _vm._v(\" \"),\n _c(\"template\", { slot: \"footer\" }, [\n _c(\n \"button\",\n {\n staticClass: \"bca-btn\",\n attrs: { type: \"button\" },\n on: {\n click: function ($event) {\n return _vm.$refs.modalFavoriteForm.closeModal()\n },\n },\n },\n [_vm._v(_vm._s(_vm.buttonCancel))]\n ),\n _vm._v(\" \\n \"),\n _c(\n \"button\",\n {\n staticClass: \"bca-btn\",\n attrs: { type: \"button\", disabled: _vm.formError },\n on: {\n click: function ($event) {\n return _vm.$refs.FavoriteForm.formSubmit()\n },\n },\n },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm.buttonSubmit) +\n \"\\n \"\n ),\n ]\n ),\n ]),\n ],\n 2\n ),\n ],\n 1\n ),\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","var render = function render() {\n var _vm = this,\n _c = _vm._self._c\n return _c(\"form\", { attrs: { method: \"POST\", id: \"FavoriteAjaxForm\" } }, [\n _c(\"h2\", { staticClass: \"bca-main__header-title\" }, [\n _vm._v(_vm._s(_vm.windowTitle)),\n ]),\n _vm._v(\" \"),\n _c(\"input\", {\n attrs: { type: \"hidden\", name: \"id\" },\n domProps: { value: _vm.id },\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n attrs: { type: \"hidden\", name: \"user_id\" },\n domProps: { value: _vm.userId },\n }),\n _vm._v(\" \"),\n _c(\"input\", { attrs: { type: \"hidden\", name: \"_csrfToken\" } }),\n _vm._v(\" \"),\n _c(\"dl\", [\n _c(\"dt\", [\n _c(\"label\", { attrs: { for: \"FavoriteName\" } }, [\n _vm._v(_vm._s(_vm.labelTitle)),\n ]),\n ]),\n _vm._v(\" \"),\n _c(\"dd\", [\n _c(\"span\", { staticClass: \"bca-textbox\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.name,\n expression: \"name\",\n },\n ],\n staticClass: \"required\",\n attrs: {\n type: \"text\",\n id: \"FavoriteName\",\n placeholder: _vm.labelTitle,\n size: \"30\",\n name: \"name\",\n autofocus: \"\",\n },\n domProps: { value: _vm.name },\n on: {\n input: [\n function ($event) {\n if ($event.target.composing) return\n _vm.name = $event.target.value\n },\n _vm.formUpdated,\n ],\n },\n }),\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm.$v.name.$invalid\n ? _c(\"div\", { staticClass: \"invalid-feedback\" }, [\n _vm._v(_vm._s(_vm.alertRequire)),\n ])\n : _vm._e(),\n ]),\n _vm._v(\" \"),\n _c(\"dt\", [\n _c(\"label\", { attrs: { for: \"FavoriteUrl\" } }),\n _vm._v(_vm._s(_vm.labelUrl)),\n ]),\n _vm._v(\" \"),\n _c(\"dd\", [\n _c(\"span\", { staticClass: \"bca-textbox\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.url,\n expression: \"url\",\n },\n ],\n staticClass: \"required\",\n attrs: {\n type: \"text\",\n id: \"FavoriteUrl\",\n placeholder: _vm.labelUrl,\n size: \"30\",\n name: \"url\",\n },\n domProps: { value: _vm.url },\n on: {\n input: [\n function ($event) {\n if ($event.target.composing) return\n _vm.url = $event.target.value\n },\n _vm.formUpdated,\n ],\n },\n }),\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm.$v.url.$invalid\n ? _c(\"div\", { staticClass: \"invalid-feedback\" }, [\n _vm._v(_vm._s(_vm.alertRequire)),\n ])\n : _vm._e(),\n ]),\n ]),\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./form.vue?vue&type=template&id=1472c2b6\"\nimport script from \"./form.vue?vue&type=script&lang=js\"\nexport * from \"./form.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render() {\n var _vm = this,\n _c = _vm._self._c\n return _vm.showModal\n ? _c(\"transition\", { attrs: { name: \"modal\", appear: \"\" } }, [\n _c(\n \"div\",\n {\n staticClass: \"modal modal-overlay\",\n on: {\n click: function ($event) {\n if ($event.target !== $event.currentTarget) return null\n return _vm.closeModal.apply(null, arguments)\n },\n },\n },\n [\n _c(\"div\", { staticClass: \"modal-window\" }, [\n _c(\n \"div\",\n { staticClass: \"modal-content\" },\n [_vm._t(\"default\")],\n 2\n ),\n _vm._v(\" \"),\n _c(\n \"footer\",\n { staticClass: \"modal-footer\" },\n [\n _vm._t(\"footer\", function () {\n return [\n _c(\n \"button\",\n {\n attrs: { type: \"button\" },\n on: { click: _vm.closeModal },\n },\n [_vm._v(\"Close\")]\n ),\n ]\n }),\n ],\n 2\n ),\n ]),\n ]\n ),\n ])\n : _vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./modal.vue?vue&type=template&id=25b6d697\"\nimport script from \"./modal.vue?vue&type=script&lang=js\"\nexport * from \"./modal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=2848a746\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS User Community \n *\n * @copyright Copyright (c) baserCMS User Community\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license http://basercms.net/license/index.html MIT License\n */\n\nimport Vue from 'vue/dist/vue.js'\nimport FavoriteIndex from \"./index.vue\";\nimport Vuelidate from 'vuelidate'\n\n/**\n * よく使う項目の処理を行う\n */\n\nconst favoriteList = {\n\n /**\n * 初期化\n */\n mounted() {\n this.initView();\n this.registerEvents();\n },\n\n /**\n * 表示初期化\n */\n initView() {\n $(\"body\").append($(\"#FavoritesMenu\"));\n\n Vue.use(Vuelidate)\n new Vue({\n el: '#FavoriteMenu',\n components: {\n FavoriteIndex\n },\n });\n\n $(\"#BtnFavoriteHelp\").bt({\n trigger: 'click',\n positions: 'top',\n shadow: true,\n shadowOffsetX: 3,\n shadowOffsetY: 3,\n shadowBlur: 8,\n shadowColor: 'rgba(0,0,0,.8)',\n shadowOverlap: false,\n noShadowOpts: {\n strokeStyle: '#999',\n strokeWidth: 3\n },\n width: '360px',\n spikeLength: 12,\n spikeGirth: 18,\n padding: 15,\n cornerRadius: 0,\n strokeWidth: 6, /*no stroke*/\n strokeStyle: '#690',\n fill: 'rgba(255, 255, 255, 1.00)',\n cssStyles: {\n fontSize: '12px'\n },\n showTip: function (box) {\n $(box).fadeIn(200);\n },\n hideTip: function (box, callback) {\n $(box).animate({\n opacity: 0\n }, 100, callback);\n },\n contentSelector: \"$(this).next('.helptext').html()\"\n });\n\n // お気に入り初期化\n this.initFavoriteList();\n\n // バリデーション\n $(\"#FavoriteAjaxForm\").validate();\n\n },\n\n /**\n * イベント登録\n */\n registerEvents() {\n $(\"#BtnFavoriteAdd\").click(function () {\n document.querySelector('#FavoriteListWrap').__vue__.openModal();\n });\n $(\"#FavoriteAjaxForm\").submit(function () {\n return false\n });\n },\n\n /**\n * 並び替え開始時イベント\n */\n favoriteSortStartHandler(event, ui) {\n $(\"ul.favorite-menu-list .placeholder\").css('height', ui.item.height());\n ui.item.startIndex = ui.item.index();\n },\n\n /**\n * 並び順を更新時イベント\n */\n favoriteSortUpdateHandler(event, ui) {\n var $sortTable = $(\".favorite-menu-list\");\n var offset = ui.item.index() - ui.item.startIndex;\n var id = ui.item.attr('data-id');\n\n $.bcToken.check(function () {\n var data = {\n 'id': id,\n 'offset': offset,\n '_csrfToken': $.bcToken.key\n };\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'bc-favorite/favorites/change_sort.json',\n type: 'POST',\n data: data,\n dataType: 'text',\n beforeSend: function () {\n $(\"#Waiting\").show();\n },\n success: function (result) {\n $sortTable.find(\"li\").each(function (index) {\n $(this).attr('id', 'FavoriteRow' + index);\n });\n },\n error: function () {\n $sortTable.sortable(\"cancel\");\n alert(bcI18n.favoriteAlertMessage1);\n },\n complete: function () {\n $(\"#Waiting\").hide();\n }\n });\n }, {hideLoader: false});\n },\n\n /**\n * 行を初期化\n */\n initFavoriteList() {\n const $favoriteMenuList = $(\".favorite-menu-list\");\n const $favoriteMenuListLi = $(\".favorite-menu-list li\");\n\n // イベント削除\n $favoriteMenuListLi.unbind();\n try {\n $favoriteMenuList.sortable(\"destroy\");\n } catch (e) {\n }\n\n $favoriteMenuList.sortable({\n scroll: true,\n opacity: 0.80,\n zIndex: 55,\n containment: 'body',\n tolerance: 'pointer',\n distance: 5,\n cursor: 'pointer',\n placeholder: 'ui-widget-content placeholder',\n /*handle: \".favorite-menu-list li a\",*/\n revert: 100,\n start: this.favoriteSortStartHandler,\n update: this.favoriteSortUpdateHandler\n });\n\n var i = 1;\n $favoriteMenuListLi.each(function () {\n // アクセス制限によってリンクが出力されていない場合はLIごと削除する\n if (!$(this).attr('class').match(/no-data/) && $(this).find('a').html() == null) {\n $(this).remove();\n } else {\n $(this).attr('id', 'FavoriteRow' + (i));\n i++;\n }\n });\n }\n}\n\n\nfavoriteList.mounted();\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.j = 7689;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t7689: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkbc_admin_third\"] = self[\"webpackChunkbc_admin_third\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [5000], () => (__webpack_require__(4959)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","render","_vm","this","_c","_self","attrs","id","staticClass","type","ariaExpanded","on","click","changeOpenFavorite","_v","_s","i18nFavorite","favorites","length","style","favoriteBoxOpened","_l","favorite","i","key","mousedown","$event","changeSelected","href","baseUrl","url","title","name","i18nNoData","ref","scrollable","hidden","userId","currentPageUrl","currentPageName","currentFavorite","formUpdated","formSubmitted","slot","$refs","modalFavoriteForm","closeModal","buttonCancel","disabled","formError","FavoriteForm","formSubmit","buttonSubmit","_withStripped","method","windowTitle","domProps","value","for","labelTitle","directives","rawName","expression","placeholder","size","autofocus","input","target","composing","$v","$invalid","alertRequire","_e","labelUrl","_require","require","required","validationMixin","data","bcI18n","addTitle","editTitle","validations","props","mounted","methods","$emit","apiUrl","$","bcUtil","apiAdminBaseUrl","favoriteForm","bcToken","check","axios","post","user_id","_csrfToken","then","response","hide","bind","error","errorMessage","message","errors","Object","keys","forEach","subKey","alert","console","log","useUpdate","hideLoader","showModal","appear","currentTarget","apply","arguments","_t","Boolean","openModal","index","$nextTick","css","i18nEdit","i18nDelete","components","Modal","initFavorite","refresh","get","result","contextMenu","selector","items","icon","callback","contextMenuClickHandler","headers","loaderType","indexUrl","options","res","confirm","commonConfirmDeleteMessage","show","status","fadeOut","remove","alertServerError","initView","registerEvents","append","Vue","Vuelidate","el","FavoriteIndex","bt","trigger","positions","shadow","shadowOffsetX","shadowOffsetY","shadowBlur","shadowColor","shadowOverlap","noShadowOpts","strokeStyle","strokeWidth","width","spikeLength","spikeGirth","padding","cornerRadius","fill","cssStyles","fontSize","showTip","box","fadeIn","hideTip","animate","opacity","contentSelector","initFavoriteList","validate","document","querySelector","__vue__","submit","favoriteSortStartHandler","event","ui","item","height","startIndex","favoriteSortUpdateHandler","$sortTable","offset","attr","ajax","dataType","beforeSend","success","find","each","sortable","favoriteAlertMessage1","complete","$favoriteMenuList","$favoriteMenuListLi","unbind","e","scroll","zIndex","containment","tolerance","distance","cursor","revert","start","update","match","html","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","push","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"bc_favorite/js/admin/favorites/main.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/webpack/runtime/chunk loaded","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue","webpack://bc-admin-third/src/bc_favorite/js/admin/favorites/form.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue?ade0","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/form.vue?26b7","webpack://bc-admin-third/./src/js/common/modal.vue","webpack://bc-admin-third/src/js/common/modal.vue","webpack://bc-admin-third/./src/js/common/modal.vue?c67e","webpack://bc-admin-third/./src/js/common/modal.vue?4869","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue?305a","webpack://bc-admin-third/src/bc_favorite/js/admin/favorites/index.vue","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/index.vue?cdc0","webpack://bc-admin-third/./src/bc_favorite/js/admin/favorites/main.js","webpack://bc-admin-third/webpack/bootstrap","webpack://bc-admin-third/webpack/runtime/compat get default export","webpack://bc-admin-third/webpack/runtime/define property getters","webpack://bc-admin-third/webpack/runtime/global","webpack://bc-admin-third/webpack/runtime/hasOwnProperty shorthand","webpack://bc-admin-third/webpack/runtime/make namespace object","webpack://bc-admin-third/webpack/runtime/runtimeId","webpack://bc-admin-third/webpack/runtime/jsonp chunk loading","webpack://bc-admin-third/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"FavoriteListWrap\"}},[_c('h2',{staticClass:\"bca-nav-favorite-title\"},[_c('button',{staticClass:\"bca-collapse__btn bca-nav-favorite-title-button\",attrs:{\"type\":\"button\",\"id\":\"btn-favorite-expand\",\"data-bca-collapse\":\"favorite-collapse\",\"data-bca-target\":\"#favoriteBody\",\"aria-expanded\":_vm.ariaExpanded,\"aria-controls\":\"favoriteBody\"},on:{\"click\":_vm.changeOpenFavorite}},[_vm._v(\"\\n \"+_vm._s(_vm.i18nFavorite)+\"\\n \"),_c('i',{staticClass:\"bca-icon--chevron-down bca-nav-favorite-title-icon\"})])]),_vm._v(\" \"),(_vm.favorites.length)?_c('ul',{staticClass:\"favorite-menu-list bca-nav-favorite-list bca-collapse\",style:('display:' + _vm.favoriteBoxOpened),attrs:{\"id\":\"favoriteBody\"}},_vm._l((_vm.favorites),function(favorite,i){return _c('li',{key:i,staticClass:\"bca-nav-favorite-list-item\",attrs:{\"id\":'FavoriteRow' + favorite.id,\"data-id\":favorite.id},on:{\"mousedown\":function($event){return _vm.changeSelected(favorite)}}},[_c('a',{attrs:{\"href\":_vm.baseUrl + favorite.url,\"title\":favorite.url}},[_c('span',{staticClass:\"bca-nav-favorite-list-item-label\"},[_vm._v(_vm._s(favorite.name))])])])}),0):_c('ul',{staticClass:\"favorite-menu-list bca-nav-favorite-list bca-collapse\",style:('display:' + _vm.favoriteBoxOpened),attrs:{\"id\":\"favoriteBody\"}},[_c('li',{staticClass:\"no-data\"},[_c('small',[_vm._v(_vm._s(_vm.i18nNoData))])])]),_vm._v(\" \"),_c('div',{staticClass:\"ui-widget\",attrs:{\"id\":\"FavoriteDialog\"}},[_c('modal',{ref:\"modalFavoriteForm\",attrs:{\"scrollable\":false,\"hidden\":\"\"}},[_c('favorite-form',{ref:\"FavoriteForm\",attrs:{\"user-id\":_vm.userId,\"current-page-url\":_vm.currentPageUrl,\"current-page-name\":_vm.currentPageName,\"current-favorite\":_vm.currentFavorite},on:{\"formUpdated\":_vm.formUpdated,\"formSubmitted\":_vm.formSubmitted}}),_vm._v(\" \"),_c('template',{slot:\"footer\"},[_c('button',{staticClass:\"bca-btn\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.$refs.modalFavoriteForm.closeModal()}}},[_vm._v(_vm._s(_vm.buttonCancel))]),_vm._v(\" \\n \"),_c('button',{staticClass:\"bca-btn\",attrs:{\"type\":\"button\",\"disabled\":_vm.formError},on:{\"click\":function($event){return _vm.$refs.FavoriteForm.formSubmit()}}},[_vm._v(\"\\n \"+_vm._s(_vm.buttonSubmit)+\"\\n \")])])],2)],1)])\n}\nvar staticRenderFns = []\nrender._withStripped = true\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{attrs:{\"method\":\"POST\",\"id\":\"FavoriteAjaxForm\"}},[_c('h2',{staticClass:\"bca-main__header-title\"},[_vm._v(_vm._s(_vm.windowTitle))]),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"id\"},domProps:{\"value\":_vm.id}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"user_id\"},domProps:{\"value\":_vm.userId}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"_csrfToken\"}}),_vm._v(\" \"),_c('dl',[_c('dt',[_c('label',{attrs:{\"for\":\"FavoriteName\"}},[_vm._v(_vm._s(_vm.labelTitle))])]),_vm._v(\" \"),_c('dd',[_c('span',{staticClass:\"bca-textbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.name),expression:\"name\"}],staticClass:\"required\",attrs:{\"type\":\"text\",\"id\":\"FavoriteName\",\"placeholder\":_vm.labelTitle,\"size\":\"30\",\"name\":\"name\",\"autofocus\":\"\"},domProps:{\"value\":(_vm.name)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.name=$event.target.value},_vm.formUpdated]}})]),_c('br'),_vm._v(\" \"),(_vm.$v.name.$invalid)?_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(_vm._s(_vm.alertRequire))]):_vm._e()]),_vm._v(\" \"),_c('dt',[_c('label',{attrs:{\"for\":\"FavoriteUrl\"}}),_vm._v(_vm._s(_vm.labelUrl))]),_vm._v(\" \"),_c('dd',[_c('span',{staticClass:\"bca-textbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.url),expression:\"url\"}],staticClass:\"required\",attrs:{\"type\":\"text\",\"id\":\"FavoriteUrl\",\"placeholder\":_vm.labelUrl,\"size\":\"30\",\"name\":\"url\"},domProps:{\"value\":(_vm.url)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.url=$event.target.value},_vm.formUpdated]}})]),_c('br'),_vm._v(\" \"),(_vm.$v.url.$invalid)?_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(_vm._s(_vm.alertRequire))]):_vm._e()])])])\n}\nvar staticRenderFns = []\nrender._withStripped = true\nexport { render, staticRenderFns }","\n\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./form.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./form.vue?vue&type=template&id=1472c2b6\"\nimport script from \"./form.vue?vue&type=script&lang=js\"\nexport * from \"./form.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showModal)?_c('transition',{attrs:{\"name\":\"modal\",\"appear\":\"\"}},[_c('div',{staticClass:\"modal modal-overlay\",on:{\"click\":function($event){if($event.target !== $event.currentTarget)return null;return _vm.closeModal.apply(null, arguments)}}},[_c('div',{staticClass:\"modal-window\"},[_c('div',{staticClass:\"modal-content\"},[_vm._t(\"default\")],2),_vm._v(\" \"),_c('footer',{staticClass:\"modal-footer\"},[_vm._t(\"footer\",function(){return [_c('button',{attrs:{\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Close\")])]})],2)])])]):_vm._e()\n}\nvar staticRenderFns = []\nrender._withStripped = true\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./modal.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./modal.vue?vue&type=template&id=25b6d697\"\nimport script from \"./modal.vue?vue&type=script&lang=js\"\nexport * from \"./modal.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-1.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js\"","\n\n\n\n\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=3a8f74d4\"\nimport script from \"./index.vue?vue&type=script&lang=js\"\nexport * from \"./index.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS User Community \n *\n * @copyright Copyright (c) baserCMS User Community\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license http://basercms.net/license/index.html MIT License\n */\n\nimport Vue from 'vue/dist/vue.js'\nimport FavoriteIndex from \"./index.vue\";\nimport Vuelidate from 'vuelidate'\n\n/**\n * よく使う項目の処理を行う\n */\n\nconst favoriteList = {\n\n /**\n * 初期化\n */\n mounted() {\n this.initView();\n this.registerEvents();\n },\n\n /**\n * 表示初期化\n */\n initView() {\n $(\"body\").append($(\"#FavoritesMenu\"));\n\n Vue.use(Vuelidate)\n new Vue({\n el: '#FavoriteMenu',\n components: {\n FavoriteIndex\n },\n });\n\n $(\"#BtnFavoriteHelp\").bt({\n trigger: 'click',\n positions: 'top',\n shadow: true,\n shadowOffsetX: 3,\n shadowOffsetY: 3,\n shadowBlur: 8,\n shadowColor: 'rgba(0,0,0,.8)',\n shadowOverlap: false,\n noShadowOpts: {\n strokeStyle: '#999',\n strokeWidth: 3\n },\n width: '360px',\n spikeLength: 12,\n spikeGirth: 18,\n padding: 15,\n cornerRadius: 0,\n strokeWidth: 6, /*no stroke*/\n strokeStyle: '#690',\n fill: 'rgba(255, 255, 255, 1.00)',\n cssStyles: {\n fontSize: '12px'\n },\n showTip: function (box) {\n $(box).fadeIn(200);\n },\n hideTip: function (box, callback) {\n $(box).animate({\n opacity: 0\n }, 100, callback);\n },\n contentSelector: \"$(this).next('.helptext').html()\"\n });\n\n // お気に入り初期化\n this.initFavoriteList();\n\n // バリデーション\n $(\"#FavoriteAjaxForm\").validate();\n\n },\n\n /**\n * イベント登録\n */\n registerEvents() {\n $(\"#BtnFavoriteAdd\").click(function () {\n document.querySelector('#FavoriteListWrap').__vue__.openModal();\n });\n $(\"#FavoriteAjaxForm\").submit(function () {\n return false\n });\n },\n\n /**\n * 並び替え開始時イベント\n */\n favoriteSortStartHandler(event, ui) {\n $(\"ul.favorite-menu-list .placeholder\").css('height', ui.item.height());\n ui.item.startIndex = ui.item.index();\n },\n\n /**\n * 並び順を更新時イベント\n */\n favoriteSortUpdateHandler(event, ui) {\n var $sortTable = $(\".favorite-menu-list\");\n var offset = ui.item.index() - ui.item.startIndex;\n var id = ui.item.attr('data-id');\n\n $.bcToken.check(function () {\n var data = {\n 'id': id,\n 'offset': offset,\n '_csrfToken': $.bcToken.key\n };\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'bc-favorite/favorites/change_sort.json',\n type: 'POST',\n data: data,\n dataType: 'text',\n beforeSend: function () {\n $(\"#Waiting\").show();\n },\n success: function (result) {\n $sortTable.find(\"li\").each(function (index) {\n $(this).attr('id', 'FavoriteRow' + index);\n });\n },\n error: function () {\n $sortTable.sortable(\"cancel\");\n alert(bcI18n.favoriteAlertMessage1);\n },\n complete: function () {\n $(\"#Waiting\").hide();\n }\n });\n }, {hideLoader: false});\n },\n\n /**\n * 行を初期化\n */\n initFavoriteList() {\n const $favoriteMenuList = $(\".favorite-menu-list\");\n const $favoriteMenuListLi = $(\".favorite-menu-list li\");\n\n // イベント削除\n $favoriteMenuListLi.unbind();\n try {\n $favoriteMenuList.sortable(\"destroy\");\n } catch (e) {\n }\n\n $favoriteMenuList.sortable({\n scroll: true,\n opacity: 0.80,\n zIndex: 55,\n containment: 'body',\n tolerance: 'pointer',\n distance: 5,\n cursor: 'pointer',\n placeholder: 'ui-widget-content placeholder',\n /*handle: \".favorite-menu-list li a\",*/\n revert: 100,\n start: this.favoriteSortStartHandler,\n update: this.favoriteSortUpdateHandler\n });\n\n var i = 1;\n $favoriteMenuListLi.each(function () {\n // アクセス制限によってリンクが出力されていない場合はLIごと削除する\n if (!$(this).attr('class').match(/no-data/) && $(this).find('a').html() == null) {\n $(this).remove();\n } else {\n $(this).attr('id', 'FavoriteRow' + (i));\n i++;\n }\n });\n }\n}\n\n\nfavoriteList.mounted();\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.j = 7689;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t7689: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkbc_admin_third\"] = self[\"webpackChunkbc_admin_third\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [5000], () => (__webpack_require__(1754)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","render","_vm","this","_c","_self","attrs","staticClass","ariaExpanded","on","changeOpenFavorite","_v","_s","i18nFavorite","favorites","length","style","favoriteBoxOpened","_l","favorite","i","key","id","$event","changeSelected","baseUrl","url","name","i18nNoData","ref","userId","currentPageUrl","currentPageName","currentFavorite","formUpdated","formSubmitted","slot","$refs","modalFavoriteForm","closeModal","buttonCancel","formError","FavoriteForm","formSubmit","buttonSubmit","_withStripped","windowTitle","domProps","labelTitle","directives","rawName","value","expression","target","composing","$v","$invalid","alertRequire","_e","labelUrl","_require","require","required","validationMixin","data","bcI18n","addTitle","editTitle","validations","props","mounted","methods","$emit","apiUrl","$","bcUtil","apiAdminBaseUrl","favoriteForm","bcToken","check","axios","post","user_id","_csrfToken","then","response","hide","bind","error","errorMessage","message","errors","Object","keys","forEach","subKey","alert","console","log","useUpdate","hideLoader","showModal","currentTarget","apply","arguments","_t","scrollable","Boolean","openModal","index","$nextTick","css","i18nEdit","i18nDelete","components","Modal","initFavorite","refresh","get","result","contextMenu","selector","items","icon","callback","contextMenuClickHandler","headers","loaderType","indexUrl","options","res","confirm","commonConfirmDeleteMessage","t","show","status","alertServerError","initView","registerEvents","append","Vue","Vuelidate","el","FavoriteIndex","bt","trigger","positions","shadow","shadowOffsetX","shadowOffsetY","shadowBlur","shadowColor","shadowOverlap","noShadowOpts","strokeStyle","strokeWidth","width","spikeLength","spikeGirth","padding","cornerRadius","fill","cssStyles","fontSize","showTip","box","fadeIn","hideTip","animate","opacity","contentSelector","initFavoriteList","validate","click","document","querySelector","__vue__","submit","favoriteSortStartHandler","event","ui","item","height","startIndex","favoriteSortUpdateHandler","$sortTable","offset","attr","ajax","type","dataType","beforeSend","success","find","each","sortable","favoriteAlertMessage1","complete","$favoriteMenuList","$favoriteMenuListLi","unbind","e","scroll","zIndex","containment","tolerance","distance","cursor","placeholder","revert","start","update","match","html","remove","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","window","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","push","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/js/admin/common.bundle.js b/plugins/bc-admin-third/webroot/js/admin/common.bundle.js index a7c9dd1963..b2c3f80433 100644 --- a/plugins/bc-admin-third/webroot/js/admin/common.bundle.js +++ b/plugins/bc-admin-third/webroot/js/admin/common.bundle.js @@ -98,7 +98,7 @@ * @since 5.0.0 * @license https://basercms.net/license/index.html MIT License */ -!function(e){e.bcTree={shiftOnAnchor:!1,ctrlOnAnchor:!1,contextmenuAddOnly:!1,settings:[],dropTarget:null,dragTarget:null,treeDom:null,jsTree:null,listDisplayed:null,beforeParentId:null,beforePosition:null,currentSiteId:1,config:{isAdmin:!1,isUseMoveContents:!1,adminPrefix:"admin",editInIndexDisabled:!1},_inited:!1,init:function(t){t&&e.extend(e.bcTree.config,t),e.bcTree._inited=!0},load:function(){if(e.bcUtil.showLoader(),e.bcTree._inited){e("#viewsetting-mode").val();e.bcTree.listDisplayed=e.bcTimeUtil.getNowDateTime(),e.bcTree._init(),e(e.bcTree).trigger("loaded"),e.bcUtil.hideLoader()}},_init:function(){if(!e("#ContentsTreeList").length)return!1;e.bcTree.settings=e.parseJSON(e("#bcmanagecontent").val()),e.bcTree.treeDom=e("#ContentsTreeList"),e.bcTree.createTree(),e.bcTree.jsTree=e.bcTree.treeDom.jstree(!0),e.bcTree.treeDom.bind("move_node.jstree",(function(t,n){e.bcTree.beforeParentId=n.old_parent,e.bcTree.beforePosition=n.old_position})),e.bcTree.treeDom.bind("dblclick",e.bcTree.updateShiftAndCtrlOnAnchor),e.bcTree.treeDom.bind("dblclick.jstree",(function(t){if("trash"==e("#viewsetting-mode").val())return!1;var n=e(t.target).closest("li").attr("id"),r=e.bcTree.jsTree.get_node(n).data.jstree;("default"==r.type||r.alias)&&(null!=e.bcTree.settings[r.contentType]&&e.bcTree.settings[r.contentType].editDisabled||(r.alias?e.bcTree.openUrl(e.bcUtil.adminBaseUrl+"baser-core/contents/edit_alias/"+r.contentId):null==e.bcTree.settings[r.contentType]?e.bcTree.openUrl(e.bcTree.createLink(e.baseUrl()+"/"+e.bcTree.config.baserCorePrefix+"/"+e.bcTree.config.adminPrefix+"/contents/edit",r.contentId,r.contentParentId,r.contentEntityId)):void 0!==e.bcTree.settings[r.contentType].url.dblclick?e.bcTree.openUrl(e.bcTree.createLink(e.bcTree.settings[r.contentType].url.dblclick,r.contentId,r.contentParentId,r.contentEntityId)):e.bcTree.openUrl(e.bcTree.createLink(e.bcTree.settings[r.contentType].url.edit,r.contentId,r.contentParentId,r.contentEntityId))))})),e.bcTree.treeDom.on("show_contextmenu.jstree",(function(){e("ul.jstree-contextmenu li").each((function(){e.bcTree.isAliasMenuByLabel(e.trim(e(this).text()))&&e(this).find("a i").after(''),e.bcTree.isAddMenuByLabel(e.trim(e(this).text()))&&e(this).find("a i").after('')}))})),e.bcTree.treeDom.on("after_open.jstree",(function(t){e.bcTree.refreshTree()})),e.bcTree.treeDom.on("set_text.jstree",(function(t){e.bcTree.refreshTree()})),e.bcTree.treeDom.on("ready.jstree",(function(t){e.bcTree.treeDom.show(),e.bcTree.refreshTree()}))},destroy:function(){e.bcTree.treeDom&&(e.bcTree.treeDom.unbind("dblclick"),e.bcTree.treeDom.unbind("dblclick.jstree"),e.bcTree.treeDom.unbind("show_contextmenu.jstree"),e.bcTree.treeDom.unbind("after_open.jstree"),e.bcTree.treeDom.unbind("set_text.jstree"),e.bcTree.treeDom.unbind("ready.jstree"),e.bcTree.treeDom.remove()),e.bcTree.shiftOnAnchor=!1,e.bcTree.ctrlOnAnchor=!1,e.bcTree.contextmenuAddOnly=!1,e.bcTree.settings=[],e.bcTree.dropTarget=null,e.bcTree.dragTarget=null,e.bcTree.treeDom=null,e.bcTree.jsTree=null},createTree:function(){e.bcTree.treeDom.jstree({core:{themes:{name:"proton",stripes:!0,variant:"large"},multiple:!1,force_text:!0,check_callback:function(t,n,r,o,a){if("move_node"==t)return!!e.bcTree.config.isUseMoveContents&&("folder"!=r.type||r.data.jstree.alias||n.data.jstree.contentSiteRoot?(e.bcTree.dropTarget=null,e.bcTree.dragTarget=null,!1):(e.bcTree.dropTarget=r,e.bcTree.dragTarget=n,!0))}},plugins:["dnd","changed","state","wholerow","contextmenu","types"],dnd:{large_drop_target:!0},types:{default:{},folder:{}},state:{key:"jstree-"+e.bcTree.currentSiteId,events:"open_all.jstree close_all.jstree changed.jstree open_node.jstree close_node.jstree check_node.jstree uncheck_node.jstree"},contextmenu:{show_at_node:!1,items:function(t){var n,r=t.data.jstree,o=e("#viewsetting-mode").val();n="folder"!==r.type||t.data.jstree.alias?e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_parent(t)):t;var a=!1,i=!1,c=null,s=null,l=null,d=!1;void 0!==e.bcTree.settings[r.contentType]&&(a=r.editDisabled,i=r.manageDisabled,s=e.bcTree.settings[r.contentType].url.manage,c=e.bcTree.settings[r.contentType].url.edit,l=e.bcTree.settings[r.contentType].url.copy,d=!0);var u,b={};d&&r.status&&r.contentFullUrl&&!e.bcTree.contextmenuAddOnly&&"index"===o&&e.extend(!0,b,{view:{label:bcI18n.bcTreeCheck,icon:"bca-icon--preview",action:function(t){e.bcTree.openUrl(r.contentFullUrl,!0)}}}),!d||e.bcTree.config.editInIndexDisabled||a||r.contentSiteRoot||"index"!==o||e.bcTree.contextmenuAddOnly||r.related||(r.status?r.status&&e.extend(!0,b,{unpublish:{label:bcI18n.bcTreeUnpublish,icon:"bca-icon--unpublish",action:function(n){e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/change_status.json",type:"PATCH",data:{id:r.contentId,status:"unpublish",type:r.contentType,siteId:r.contentSiteId,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){t.data.jstree.status=!1,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}}):e.extend(!0,b,{publish:{label:bcI18n.bcTreePublish,icon:"bca-icon--publish",action:function(n){e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/change_status.json",type:"PATCH",data:{id:r.contentId,status:"publish",type:r.contentType,siteId:r.contentSiteId,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){t.data.jstree.status=!0,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}})),i||e.bcTree.contextmenuAddOnly||!s||"index"!==o||r.alias||e.extend(!0,b,{manage:{label:bcI18n.bcTreeManage,icon:"bca-icon--th-list",action:function(t){e.bcTree.openUrl(e.bcTree.createLink(s,r.contentId,r.contentParentId,r.contentEntityId))}}}),!d||e.bcTree.config.editInIndexDisabled||a||e.bcTree.contextmenuAddOnly||r.contentSiteRoot||"index"!==o||r.related||e.extend(!0,b,{rename:{label:bcI18n.bcTreeRename,icon:"bca-icon--rename",action:function(n){e.bcTree.renameContent(t,t.text)}}}),!d||a||e.bcTree.contextmenuAddOnly||"index"!==o||e.extend(!0,b,{edit:{label:bcI18n.bcTreeEdit,icon:"bca-icon--edit",action:function(n){t.data.jstree.alias?e.bcTree.openUrl(e.bcUtil.adminBaseUrl+"baser-core/contents/edit_alias/"+r.contentId):e.bcTree.openUrl(e.bcTree.createLink(c,r.contentId,r.contentParentId,r.contentEntityId))}}}),a||e.bcTree.contextmenuAddOnly||"ContentFolder"===r.contentType||r.alias||!l||"index"!==o||e.extend(!0,b,{copy:{label:bcI18n.bcTreeCopy,icon:"bca-icon--copy",action:function(r){e.bcTree.copyContent(n,t)}}}),u=r.alias?bcI18n.bcTreeDelete:bcI18n.bcTreeToTrash,e.bcTree.config.editInIndexDisabled||a||r.deleteDisabled||e.bcTree.contextmenuAddOnly||r.contentSiteRoot||"index"!==o||e.extend(!0,b,{delete:{label:u,icon:"bca-icon--delete",action:function(n){var o=bcI18n.bcTreeConfirmToTrash;r.alias&&(o=bcI18n.bcTreeConfirmDeleteAlias),confirm(o)&&e.bcTree.deleteContent(t)}}}),"trash"===o&&e.extend(!0,b,{return:{_disabled:a,label:bcI18n.bcTreeUndo,icon:"bca-icon--undo",action:function(n){r.alias?e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/exists/"+r.contentAliasId+".json",type:"GET",dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},complete:function(){e.bcUtil.hideLoader()}}).done((function(n){n.exists?e.bcTree.returnContent(t):e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage1)})):e.bcTree.returnContent(t)}},empty:{_disabled:!e.bcTree.config.isAdmin,label:bcI18n.bcTreeEmptyTrash,icon:"bca-icon--ban",action:function(t){confirm(bcI18n.bcTreeConfirmMessage1)&&e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/trash_empty.json",type:"DELETE",dataType:"json",data:{empty:!0,_csrfToken:e.bcToken.key},beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(t){if(t){var n=[];e("li.jstree-node").each((function(t){n.push(e.bcTree.jsTree.get_node(this))})),e.bcTree.jsTree.delete_node(n),e.bcUtil.showNoticeMessage(t.message),e("#DataList").html('
'+bcI18n.bcTreeInfoMessage1+"
")}},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage2,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}});var h=e.extend(!0,{},e.bcTree.settings);if(delete h.Default,t.data.jstree.alias&&delete h.ContentAlias,"index"===o){var f={},T=1;e.each(h,(function(t,o){7===T&&(f.Etc={separator_before:!1,separator_after:!1,label:"その他...",submenu:{}}),T<=6?o.addDisabled||(f[t]=e.bcTree.createMenu(o,n,r,T)):o.addDisabled||(f.Etc.submenu[t]=e.bcTree.createMenu(o,n,r,T)),T++})),e.extend(!0,b,f)}return b}}})},isAddMenuByLabel:function(t){var n=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_selected()),r=e.extend(!0,{},e.bcTree.settings);delete r.Default,n.data.jstree.alias&&delete r.ContentAlias;var o=1,a=!1;return e.each(r,(function(e){t==o+"."+this.title&&(a=!0),o++})),a},isAliasMenuByLabel:function(t){var n=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_selected()),r=e.extend(!0,{},e.bcTree.settings);delete r.Default,n.data.jstree.alias&&delete r.ContentAlias;var o=1,a=!1;return e.each(r,(function(e){return"Default"==e||(!(!n.data.jstree.alias||"ContentLink"!=e)||(t==o+"."+this.title&&!this.multiple&&this.exists&&(a=!0),void o++))})),a},refreshTree:function(t){void 0===t&&(t=!1);var n=e.bcTree.jsTree.get_json("#",{flat:!0});sort=1,e(n).each((function(){e.bcTree.jsTree.get_node(this.id).data.jstree.sort=sort,sort++})),e("li.jstree-node").each((function(n){var r=e.bcTree.jsTree.get_node(this);t&&(r.data.jstree.contentFullUrl=!1),e(this).find("div.jstree-wholerow").each((function(){return e(this).removeClass("jstree-unpublish-odd jstree-unpublish-even jstree-publish-odd jstree-publish-even"),!1})),0==r.data.jstree.status?n%2==0?e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-unpublish-odd"),!1})):e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-unpublish-even"),!1})):n%2==0?e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-publish-odd"),!1})):e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-publish-even"),!1})),r.data.jstree.alias&&e(this).find("a i.jstree-icon:first").after(''),e(this).find("a.jstree-anchor:first").after(''),e(this).find(".content-name").remove(),r.data.jstree.name&&e(this).find("a.jstree-anchor:first").after('( '+decodeURIComponent(r.data.jstree.name)+" )")})),e("span.function").on("click",(function(t){return e.bcTree.jsTree.deselect_all(),e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_node(e(this).parent().attr("id"))),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),!1})),e("span.function").on("contextmenu",(function(t){return e.bcTree.jsTree.deselect_all(),e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_node(e(this).parent().attr("id"))),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),!1})),e.bcTree.config.isUseMoveContents&&e(".jstree-icon").css("cursor","move")},returnContent:function(t){e.bcToken.check((function(){return e(location).prop("href",e.bcUtil.adminBaseUrl+"baser-core/contents/trash_return/"+t.data.jstree.contentId)}),{hideLoader:!1})},openUrl:function(t,n){n=void 0!==n&&n,e.bcTree.ctrlOnAnchor||n?window.open(t):e.bcTree.shiftOnAnchor?window.open(t,"_blank"):window.location.href=t},createMenu:function(t,n,r,o){var a,i,c="default",s=null,l=bcI18n.bcTreeNewTitle.sprintf(t.title),d=t.plugin,u=t.type,b=null;if(a=i=t.url.icon?t.url.icon:t.icon,"ContentFolder"==t.type){var h=!0;c="folder"}else if("ContentLink"==t.type)var f=!0;else"ContentAlias"==t.type?(a=r.icon,s=r.contentId,d=r.contentPlugin,u=r.contentType,l=bcI18n.bcTreeAliasTitle.sprintf(r.contentTitle),b=r.contentEntityId):!t.multiple&&t.exists&&(l=bcI18n.bcTreeAliasTitle.sprintf(t.existsTitle));return{label:""+o+"."+t.title,icon:i,separator_before:h,separator_after:f,action:function(){e.bcTree.createContent(n,{type:c,icon:a,contentParentId:n.data.jstree.contentId,contentTitle:l,contentPlugin:d,contentType:u,contentSiteId:n.data.jstree.contentSiteId,contentAliasId:s,contentEntityId:b})}}},createContent:function(t,n){var r={icon:null,type:"default",status:!1,contentId:null,contentParentId:null,contentTitle:bcI18n.bcTreeUnNamedTitle,contentPlugin:null,contentType:null,contentEntityId:null,contentFullUrl:null,contentSiteId:null,contentAliasId:null};e.extend(!0,r,n),n=r;var o="";!e.bcTree.settings[n.contentType].multiple&&e.bcTree.settings[n.contentType].exists||n.contentAliasId?(o=e.bcUtil.apiAdminBaseUrl+"baser-core/contents/add_alias.json",n.alias=!0):o=e.bcTree.settings[n.contentType].url.add;var a=e.bcTree.jsTree.create_node(t,{text:n.contentTitle,data:{jstree:n}}),i=e.bcTree.jsTree.get_node(a);e.bcTree.jsTree.edit(i,n.contentTitle,(function(t){e.bcToken.check((function(){var r={parent_id:n.contentParentId,title:t.text,plugin:n.contentPlugin,type:n.contentType,site_id:n.contentSiteId,alias_id:n.contentAliasId,entity_id:n.contentEntityId};return e.ajax({url:o,type:"POST",data:{_csrfToken:e.bcToken.key,content:r},dataType:"json",beforeSend:function(){this.data=e.bcTree.fillExtraData(this.data,n),e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(r){e.bcUtil.showNoticeMessage(r.message),e.bcTree.settings[n.contentType].exists=!0,e.bcTree.settings[n.contentType].existsTitle=t.text,n.contentId=r.content.id,n.contentEntityId=r.content.entity_id,n.name=decodeURIComponent(r.content.name),i.data.jstree=n,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage6,t),e.bcTree.jsTree.delete_node(i),e.bcUtil.hideLoader()}}).then((function(){return e.bcUtil.ajax(e.bcUtil.apiAdminBaseUrl+"baser-core/contents/get_full_url/"+n.contentId+".json",{},{type:"GET",dataType:"json"}).done((function(e){n.contentFullUrl=decodeURI(e.fullUrl),i.data.jstree=n,"ContentFolder"==n.contentType&&(i.type="folder")}))}))}),{hideLoader:!1})}))},fillExtraData:function(t,n){var r=function(){switch(n.contentType){case"ContentFolder":return{folder_template:"",page_template:""};case"Page":return{contents:"",draft:"",page_template:"",code:""}}}();return r&&(t+="&"+encodeURI(e.param(r))),t},deleteContent:function(t){var n=t.data.jstree;e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/delete/"+n.contentId+".json",type:"POST",data:{id:n.contentId,entity_id:n.contentEntityId,alias:n.alias,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(r){e.bcUtil.showNoticeMessage(r.message),e.bcToken.key=null,e.bcTree.jsTree.delete_node(t);for(var o=e.bcTree.jsTree.get_json(null,{flat:!0}),a=0;a/g,">"),e.ajax(e.bcUtil.apiAdminBaseUrl+"baser-core/contents/get_full_url/"+r.contentId+".json",{type:"GET",dataType:"json"}).done((function(n){r.contentFullUrl=n.fullUrl;var o=e.bcTree.jsTree.create_node(t,{text:r.contentTitle,data:{jstree:r}}),a=e.bcTree.jsTree.get_node(o);a.data.jstree=r,"ContentFolder"===r.contentType&&(a.type="folder"),e.bcUtil.hideLoader(),e.bcTree.renameContent(a,r.contentTitle,!0)}))},error:function(t){e.bcToken.key=null,e.bcUtil.showAjaxError(bcI18n.commonCopyFailedMessage,t),e.bcUtil.hideLoader()}})}),{useUpdate:!1,hideLoader:!1})},renameContent:function(t,n,r){void 0===r&&(r=!1);var o=n;e.bcTree.jsTree.edit(t,o,(function(a){var i=a.text;if(e.bcTree.jsTree.rename_node(a,i),o===i)return!1;e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/rename.json",type:"PATCH",dataType:"json",data:{id:t.data.jstree.contentId,title:i,first:+r,_csrfToken:e.bcToken.key},beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){n||e.bcUtil.showNoticeMessage(n.message),e.bcTree.settings[t.data.jstree.contentType].existsTitle=a.text,a.data.jstree.contentFullUrl=n.url,a.data.jstree.name=n.name,e.bcTree.refreshTree()},error:function(t){e.bcTree.jsTree.rename_node(a,n),t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage5,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}))},createLink:function(e,t,n,r){var o=e;return r&&(o+="/"+r),t&&(o+="/content_id:"+t),n&&(o+="/parent_id:"+n),o},orderContent:function(t,n){e.bcTree.changeNormalCursor();var r=!1,o=e.bcTree.jsTree.get_node(n.element);o||(o=e.bcTree.dragTarget),o||(r=!0);var a=o.data.jstree.sort;e.bcTree.refreshTree();var i=o.data.jstree.sort-a;if(0==i&&(e.bcTree.dropTarget||(r=!0),o.data.jstree.contentParentId==e.bcTree.dropTarget.data.jstree.contentId&&(r=!0)),r||!confirm(bcI18n.commonSortSaveConfirmMessage))return o.parent!=e.bcTree.beforeParentId||i>=0?e.bcTree.jsTree.move_node(o,e.bcTree.beforeParentId,e.bcTree.beforePosition):e.bcTree.jsTree.move_node(o,e.bcTree.beforeParentId,e.bcTree.beforePosition+1),e.bcTree.refreshTree(),!1;e.bcTree.dropTarget&&e.bcTree.jsTree.open_node(e.bcTree.dropTarget);var c=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_next_dom(o,!0)),s=null;c&&(s=c.data.jstree.contentId),e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/move.json",type:"PATCH",data:{origin:{id:o.data.jstree.contentId,parentId:o.data.jstree.contentParentId,type:o.data.jstree.contentType,entityId:o.data.jstree.contentEntityId},target:{id:s,parentId:e.bcTree.dropTarget.data.jstree.contentId,siteId:e.bcTree.dropTarget.data.jstree.contentSiteId},listDisplayed:e.bcTree.listDisplayed,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(t){o.data.jstree.contentFullUrl=t.url,e.bcTree.refreshTree(!0),o.data.jstree.contentParentId=e.bcTree.dropTarget.data.jstree.contentId,e.bcUtil.showNoticeMessage(t.message),e.bcUtil.hideLoader()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonSortSaveFailedMessage,t),e.bcTree.load()},complete:function(){}})}),{hideLoader:!1})},showMenuByOuter:function(t){return e.bcTree.contextmenuAddOnly=!0,e.bcTree.jsTree.get_selected().length||e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_json()),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),e.bcTree.contextmenuAddOnly=!1,!1},updateShiftAndCtrlOnAnchor:function(t){e.bcTree.shiftOnAnchor=t.shiftKey,e.bcTree.ctrlOnAnchor=t.ctrlKey||t.metaKey},changeDnDCursor:function(){e("#ContentsTreeList .jstree-wholerow").css("cursor","move"),e("#ContentsTreeList .jstree-anchor").css("cursor","move"),e("#ContentsTreeList .function").css("cursor","move"),e("#ContentsTreeList .jstree-ocl").css("cursor","move")},changeNormalCursor:function(){e("#ContentsTreeList .jstree-wholerow").css("cursor","pointer"),e("#ContentsTreeList .jstree-anchor").css("cursor","pointer"),e("#ContentsTreeList .function").css("cursor","pointer"),e("#ContentsTreeList .jstree-ocl").css("cursor","pointer")}}}(jQuery)},319:()=>{ +!function(e){e.bcTree={shiftOnAnchor:!1,ctrlOnAnchor:!1,contextmenuAddOnly:!1,settings:[],dropTarget:null,dragTarget:null,treeDom:null,jsTree:null,listDisplayed:null,beforeParentId:null,beforePosition:null,currentSiteId:1,config:{isAdmin:!1,isUseMoveContents:!1,adminPrefix:"admin",editInIndexDisabled:!1},_inited:!1,init:function(t){t&&e.extend(e.bcTree.config,t),e.bcTree._inited=!0},load:function(){if(e.bcUtil.showLoader(),e.bcTree._inited){e("#viewsetting-mode").val();e.bcTree.listDisplayed=e.bcTimeUtil.getNowDateTime(),e.bcTree._init(),e(e.bcTree).trigger("loaded"),e.bcUtil.hideLoader()}},_init:function(){if(!e("#ContentsTreeList").length)return!1;e.bcTree.settings=e.parseJSON(e("#bcmanagecontent").val()),e.bcTree.treeDom=e("#ContentsTreeList"),e.bcTree.createTree(),e.bcTree.jsTree=e.bcTree.treeDom.jstree(!0),e.bcTree.treeDom.bind("move_node.jstree",(function(t,n){e.bcTree.beforeParentId=n.old_parent,e.bcTree.beforePosition=n.old_position})),e.bcTree.treeDom.bind("dblclick",e.bcTree.updateShiftAndCtrlOnAnchor),e.bcTree.treeDom.bind("dblclick.jstree",(function(t){if("trash"==e("#viewsetting-mode").val())return!1;var n=e(t.target).closest("li").attr("id"),r=e.bcTree.jsTree.get_node(n).data.jstree;("default"==r.type||r.alias)&&(null!=e.bcTree.settings[r.contentType]&&e.bcTree.settings[r.contentType].editDisabled||(r.alias?e.bcTree.openUrl(e.bcUtil.adminBaseUrl+"baser-core/contents/edit_alias/"+r.contentId):null==e.bcTree.settings[r.contentType]?e.bcTree.openUrl(e.bcTree.createLink(e.baseUrl()+"/"+e.bcTree.config.baserCorePrefix+"/"+e.bcTree.config.adminPrefix+"/contents/edit",r.contentId,r.contentParentId,r.contentEntityId)):void 0!==e.bcTree.settings[r.contentType].url.dblclick?e.bcTree.openUrl(e.bcTree.createLink(e.bcTree.settings[r.contentType].url.dblclick,r.contentId,r.contentParentId,r.contentEntityId)):e.bcTree.openUrl(e.bcTree.createLink(e.bcTree.settings[r.contentType].url.edit,r.contentId,r.contentParentId,r.contentEntityId))))})),e.bcTree.treeDom.on("show_contextmenu.jstree",(function(){e("ul.jstree-contextmenu li").each((function(){e.bcTree.isAliasMenuByLabel(e.trim(e(this).text()))&&e(this).find("a i").after(''),e.bcTree.isAddMenuByLabel(e.trim(e(this).text()))&&e(this).find("a i").after('')}))})),e.bcTree.treeDom.on("after_open.jstree",(function(t){e.bcTree.refreshTree()})),e.bcTree.treeDom.on("set_text.jstree",(function(t){e.bcTree.refreshTree()})),e.bcTree.treeDom.on("ready.jstree",(function(t){e.bcTree.treeDom.show(),e.bcTree.refreshTree()}))},destroy:function(){e.bcTree.treeDom&&(e.bcTree.treeDom.unbind("dblclick"),e.bcTree.treeDom.unbind("dblclick.jstree"),e.bcTree.treeDom.unbind("show_contextmenu.jstree"),e.bcTree.treeDom.unbind("after_open.jstree"),e.bcTree.treeDom.unbind("set_text.jstree"),e.bcTree.treeDom.unbind("ready.jstree"),e.bcTree.treeDom.remove()),e.bcTree.shiftOnAnchor=!1,e.bcTree.ctrlOnAnchor=!1,e.bcTree.contextmenuAddOnly=!1,e.bcTree.settings=[],e.bcTree.dropTarget=null,e.bcTree.dragTarget=null,e.bcTree.treeDom=null,e.bcTree.jsTree=null},createTree:function(){e.bcTree.treeDom.jstree({core:{themes:{name:"proton",stripes:!0,variant:"large"},multiple:!1,force_text:!0,check_callback:function(t,n,r,o,a){if("move_node"==t)return"folder"!=r.type||r.data.jstree.alias||n.data.jstree.contentSiteRoot?(e.bcTree.dropTarget=null,e.bcTree.dragTarget=null,!1):(e.bcTree.dropTarget=r,e.bcTree.dragTarget=n,!0)}},plugins:["dnd","changed","state","wholerow","contextmenu","types"],dnd:{large_drop_target:!0,is_draggable:function(t){return!!e.bcTree.config.isUseMoveContents&&!(t[0].parents.length<=1)}},types:{default:{},folder:{}},state:{key:"jstree-"+e.bcTree.currentSiteId,events:"open_all.jstree close_all.jstree changed.jstree open_node.jstree close_node.jstree check_node.jstree uncheck_node.jstree"},contextmenu:{show_at_node:!1,items:function(t){var n,r=t.data.jstree,o=e("#viewsetting-mode").val();n="folder"!==r.type||t.data.jstree.alias?e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_parent(t)):t;var a=!1,i=!1,c=null,s=null,l=null,d=!1;void 0!==e.bcTree.settings[r.contentType]&&(a=r.editDisabled,i=r.manageDisabled,s=e.bcTree.settings[r.contentType].url.manage,c=e.bcTree.settings[r.contentType].url.edit,l=e.bcTree.settings[r.contentType].url.copy,d=!0);var u,b={};d&&r.status&&r.contentFullUrl&&!e.bcTree.contextmenuAddOnly&&"index"===o&&e.extend(!0,b,{view:{label:bcI18n.bcTreeCheck,icon:"bca-icon--preview",action:function(t){e.bcTree.openUrl(r.contentFullUrl,!0)}}}),!d||e.bcTree.config.editInIndexDisabled||a||r.contentSiteRoot||"index"!==o||e.bcTree.contextmenuAddOnly||r.related||(r.status?r.status&&e.extend(!0,b,{unpublish:{label:bcI18n.bcTreeUnpublish,icon:"bca-icon--unpublish",action:function(n){e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/change_status.json",type:"PATCH",data:{id:r.contentId,status:"unpublish",type:r.contentType,siteId:r.contentSiteId,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){t.data.jstree.status=!1,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}}):e.extend(!0,b,{publish:{label:bcI18n.bcTreePublish,icon:"bca-icon--publish",action:function(n){e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/change_status.json",type:"PATCH",data:{id:r.contentId,status:"publish",type:r.contentType,siteId:r.contentSiteId,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){t.data.jstree.status=!0,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}})),i||e.bcTree.contextmenuAddOnly||!s||"index"!==o||r.alias||e.extend(!0,b,{manage:{label:bcI18n.bcTreeManage,icon:"bca-icon--th-list",action:function(t){e.bcTree.openUrl(e.bcTree.createLink(s,r.contentId,r.contentParentId,r.contentEntityId))}}}),!d||e.bcTree.config.editInIndexDisabled||a||e.bcTree.contextmenuAddOnly||r.contentSiteRoot||"index"!==o||r.related||e.extend(!0,b,{rename:{label:bcI18n.bcTreeRename,icon:"bca-icon--rename",action:function(n){e.bcTree.renameContent(t,t.text)}}}),!d||a||e.bcTree.contextmenuAddOnly||"index"!==o||e.extend(!0,b,{edit:{label:bcI18n.bcTreeEdit,icon:"bca-icon--edit",action:function(n){t.data.jstree.alias?e.bcTree.openUrl(e.bcUtil.adminBaseUrl+"baser-core/contents/edit_alias/"+r.contentId):e.bcTree.openUrl(e.bcTree.createLink(c,r.contentId,r.contentParentId,r.contentEntityId))}}}),a||e.bcTree.contextmenuAddOnly||"ContentFolder"===r.contentType||r.alias||!l||"index"!==o||e.extend(!0,b,{copy:{label:bcI18n.bcTreeCopy,icon:"bca-icon--copy",action:function(r){e.bcTree.copyContent(n,t)}}}),u=r.alias?bcI18n.bcTreeDelete:bcI18n.bcTreeToTrash,e.bcTree.config.editInIndexDisabled||a||r.deleteDisabled||e.bcTree.contextmenuAddOnly||r.contentSiteRoot||"index"!==o||e.extend(!0,b,{delete:{label:u,icon:"bca-icon--delete",action:function(n){var o=bcI18n.bcTreeConfirmToTrash;r.alias&&(o=bcI18n.bcTreeConfirmDeleteAlias),confirm(o)&&e.bcTree.deleteContent(t)}}}),"trash"===o&&e.extend(!0,b,{return:{_disabled:a,label:bcI18n.bcTreeUndo,icon:"bca-icon--undo",action:function(n){r.alias?e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/exists/"+r.contentAliasId+".json",type:"GET",dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},complete:function(){e.bcUtil.hideLoader()}}).done((function(n){n.exists?e.bcTree.returnContent(t):e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage1)})):e.bcTree.returnContent(t)}},empty:{_disabled:!e.bcTree.config.isAdmin,label:bcI18n.bcTreeEmptyTrash,icon:"bca-icon--ban",action:function(t){confirm(bcI18n.bcTreeConfirmMessage1)&&e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/trash_empty.json",type:"DELETE",dataType:"json",data:{empty:!0,_csrfToken:e.bcToken.key},beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(t){if(t){var n=[];e("li.jstree-node").each((function(t){n.push(e.bcTree.jsTree.get_node(this))})),e.bcTree.jsTree.delete_node(n),e.bcUtil.showNoticeMessage(t.message),e("#DataList").html('
'+bcI18n.bcTreeInfoMessage1+"
")}},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage2,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}}});var h=e.extend(!0,{},e.bcTree.settings);if(delete h.Default,t.data.jstree.alias&&delete h.ContentAlias,"index"===o){var f={},T=1;e.each(h,(function(t,o){7===T&&(f.Etc={separator_before:!1,separator_after:!1,label:"その他...",submenu:{}}),T<=6?o.addDisabled||(f[t]=e.bcTree.createMenu(o,n,r,T)):o.addDisabled||(f.Etc.submenu[t]=e.bcTree.createMenu(o,n,r,T)),T++})),e.extend(!0,b,f)}return b}}})},isAddMenuByLabel:function(t){var n=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_selected()),r=e.extend(!0,{},e.bcTree.settings);delete r.Default,n.data.jstree.alias&&delete r.ContentAlias;var o=1,a=!1;return e.each(r,(function(e){t==o+"."+this.title&&(a=!0),o++})),a},isAliasMenuByLabel:function(t){var n=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_selected()),r=e.extend(!0,{},e.bcTree.settings);delete r.Default,n.data.jstree.alias&&delete r.ContentAlias;var o=1,a=!1;return e.each(r,(function(e){return"Default"==e||(!(!n.data.jstree.alias||"ContentLink"!=e)||(t==o+"."+this.title&&!this.multiple&&this.exists&&(a=!0),void o++))})),a},refreshTree:function(t){void 0===t&&(t=!1);var n=e.bcTree.jsTree.get_json("#",{flat:!0});sort=1,e(n).each((function(){e.bcTree.jsTree.get_node(this.id).data.jstree.sort=sort,sort++})),e("li.jstree-node").each((function(n){var r=e.bcTree.jsTree.get_node(this);t&&(r.data.jstree.contentFullUrl=!1),e(this).find("div.jstree-wholerow").each((function(){return e(this).removeClass("jstree-unpublish-odd jstree-unpublish-even jstree-publish-odd jstree-publish-even"),!1})),0==r.data.jstree.status?n%2==0?e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-unpublish-odd"),!1})):e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-unpublish-even"),!1})):n%2==0?e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-publish-odd"),!1})):e(this).find("div.jstree-wholerow").each((function(){return e(this).addClass("jstree-publish-even"),!1})),r.data.jstree.alias&&e(this).find("a i.jstree-icon:first").after(''),e(this).find("a.jstree-anchor:first").after(''),e(this).find(".content-name").remove(),r.data.jstree.name&&e(this).find("a.jstree-anchor:first").after('( '+decodeURIComponent(r.data.jstree.name)+" )")})),e("span.function").on("click",(function(t){return e.bcTree.jsTree.deselect_all(),e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_node(e(this).parent().attr("id"))),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),!1})),e("span.function").on("contextmenu",(function(t){return e.bcTree.jsTree.deselect_all(),e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_node(e(this).parent().attr("id"))),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),!1})),e.bcTree.config.isUseMoveContents&&e(".jstree-icon").css("cursor","move")},returnContent:function(t){e.bcToken.check((function(){return e(location).prop("href",e.bcUtil.adminBaseUrl+"baser-core/contents/trash_return/"+t.data.jstree.contentId)}),{hideLoader:!1})},openUrl:function(t,n){n=void 0!==n&&n,e.bcTree.ctrlOnAnchor||n?window.open(t):e.bcTree.shiftOnAnchor?window.open(t,"_blank"):window.location.href=t},createMenu:function(t,n,r,o){var a,i,c="default",s=null,l=bcI18n.bcTreeNewTitle.sprintf(t.title),d=t.plugin,u=t.type,b=null;if(a=i=t.url.icon?t.url.icon:t.icon,"ContentFolder"==t.type){var h=!0;c="folder"}else if("ContentLink"==t.type)var f=!0;else"ContentAlias"==t.type?(a=r.icon,s=r.contentId,d=r.contentPlugin,u=r.contentType,l=bcI18n.bcTreeAliasTitle.sprintf(r.contentTitle),b=r.contentEntityId):!t.multiple&&t.exists&&(l=bcI18n.bcTreeAliasTitle.sprintf(t.existsTitle));return{label:""+o+"."+t.title,icon:i,separator_before:h,separator_after:f,action:function(){e.bcTree.createContent(n,{type:c,icon:a,contentParentId:n.data.jstree.contentId,contentTitle:l,contentPlugin:d,contentType:u,contentSiteId:n.data.jstree.contentSiteId,contentAliasId:s,contentEntityId:b})}}},createContent:function(t,n){var r={icon:null,type:"default",status:!1,contentId:null,contentParentId:null,contentTitle:bcI18n.bcTreeUnNamedTitle,contentPlugin:null,contentType:null,contentEntityId:null,contentFullUrl:null,contentSiteId:null,contentAliasId:null};e.extend(!0,r,n),n=r;var o="";!e.bcTree.settings[n.contentType].multiple&&e.bcTree.settings[n.contentType].exists||n.contentAliasId?(o=e.bcUtil.apiAdminBaseUrl+"baser-core/contents/add_alias.json",n.alias=!0):o=e.bcTree.settings[n.contentType].url.add;var a=e.bcTree.jsTree.create_node(t,{text:n.contentTitle,data:{jstree:n}}),i=e.bcTree.jsTree.get_node(a);e.bcTree.jsTree.edit(i,n.contentTitle,(function(t){e.bcToken.check((function(){var r={parent_id:n.contentParentId,title:t.text,plugin:n.contentPlugin,type:n.contentType,site_id:n.contentSiteId,alias_id:n.contentAliasId,entity_id:n.contentEntityId};return e.ajax({url:o,type:"POST",data:{_csrfToken:e.bcToken.key,content:r},dataType:"json",beforeSend:function(){this.data=e.bcTree.fillExtraData(this.data,n),e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(r){e.bcUtil.showNoticeMessage(r.message),e.bcTree.settings[n.contentType].exists=!0,e.bcTree.settings[n.contentType].existsTitle=t.text,n.contentId=r.content.id,n.contentEntityId=r.content.entity_id,n.name=decodeURIComponent(r.content.name),i.data.jstree=n,e.bcTree.refreshTree()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage6,t),e.bcTree.jsTree.delete_node(i),e.bcUtil.hideLoader()}}).then((function(){return e.bcUtil.ajax(e.bcUtil.apiAdminBaseUrl+"baser-core/contents/get_full_url/"+n.contentId+".json",{},{type:"GET",dataType:"json"}).done((function(e){n.contentFullUrl=decodeURI(e.fullUrl),i.data.jstree=n,"ContentFolder"==n.contentType&&(i.type="folder")}))}))}),{hideLoader:!1})}))},fillExtraData:function(t,n){var r=function(){switch(n.contentType){case"ContentFolder":return{folder_template:"",page_template:""};case"Page":return{contents:"",draft:"",page_template:"",code:""}}}();return r&&(t+="&"+encodeURI(e.param(r))),t},deleteContent:function(t){var n=t.data.jstree;e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/delete/"+n.contentId+".json",type:"POST",data:{id:n.contentId,entity_id:n.contentEntityId,alias:n.alias,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(r){e.bcUtil.showNoticeMessage(r.message),e.bcToken.key=null,e.bcTree.jsTree.delete_node(t);for(var o=e.bcTree.jsTree.get_json(null,{flat:!0}),a=0;a/g,">"),e.ajax(e.bcUtil.apiAdminBaseUrl+"baser-core/contents/get_full_url/"+r.contentId+".json",{type:"GET",dataType:"json"}).done((function(n){r.contentFullUrl=n.fullUrl;var o=e.bcTree.jsTree.create_node(t,{text:r.contentTitle,data:{jstree:r}}),a=e.bcTree.jsTree.get_node(o);a.data.jstree=r,"ContentFolder"===r.contentType&&(a.type="folder"),e.bcUtil.hideLoader(),e.bcTree.renameContent(a,r.contentTitle,!0)}))},error:function(t){e.bcToken.key=null,e.bcUtil.showAjaxError(bcI18n.commonCopyFailedMessage,t),e.bcUtil.hideLoader()}})}),{useUpdate:!1,hideLoader:!1})},renameContent:function(t,n,r){void 0===r&&(r=!1);var o=n;e.bcTree.jsTree.edit(t,o,(function(a){var i=a.text;if(e.bcTree.jsTree.rename_node(a,i),o===i)return!1;e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/rename.json",type:"PATCH",dataType:"json",data:{id:t.data.jstree.contentId,title:i,first:+r,_csrfToken:e.bcToken.key},beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(n){n||e.bcUtil.showNoticeMessage(n.message),e.bcTree.settings[t.data.jstree.contentType].existsTitle=a.text,a.data.jstree.contentFullUrl=n.url,a.data.jstree.name=n.name,e.bcTree.refreshTree()},error:function(t){e.bcTree.jsTree.rename_node(a,n),t.responseText=null,e.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage5,t)},complete:function(){e.bcUtil.hideLoader()}})}),{hideLoader:!1})}))},createLink:function(e,t,n,r){var o=e;return r&&(o+="/"+r),t&&(o+="/content_id:"+t),n&&(o+="/parent_id:"+n),o},orderContent:function(t,n){e.bcTree.changeNormalCursor();var r=!1,o=e.bcTree.jsTree.get_node(n.element);o||(o=e.bcTree.dragTarget),o||(r=!0);var a=o.data.jstree.sort;e.bcTree.refreshTree();var i=o.data.jstree.sort-a;if(0==i&&(e.bcTree.dropTarget||(r=!0),o.data.jstree.contentParentId==e.bcTree.dropTarget.data.jstree.contentId&&(r=!0)),r||!confirm(bcI18n.commonSortSaveConfirmMessage))return o.parent!=e.bcTree.beforeParentId||i>=0?e.bcTree.jsTree.move_node(o,e.bcTree.beforeParentId,e.bcTree.beforePosition):e.bcTree.jsTree.move_node(o,e.bcTree.beforeParentId,e.bcTree.beforePosition+1),e.bcTree.refreshTree(),!1;e.bcTree.dropTarget&&e.bcTree.jsTree.open_node(e.bcTree.dropTarget);var c=e.bcTree.jsTree.get_node(e.bcTree.jsTree.get_next_dom(o,!0)),s=null;c&&(s=c.data.jstree.contentId),e.bcToken.check((function(){return e.ajax({url:e.bcUtil.apiAdminBaseUrl+"baser-core/contents/move.json",type:"PATCH",data:{origin:{id:o.data.jstree.contentId,parentId:o.data.jstree.contentParentId,type:o.data.jstree.contentType,entityId:o.data.jstree.contentEntityId},target:{id:s,parentId:e.bcTree.dropTarget.data.jstree.contentId,siteId:e.bcTree.dropTarget.data.jstree.contentSiteId},listDisplayed:e.bcTree.listDisplayed,_csrfToken:e.bcToken.key},dataType:"json",beforeSend:function(){e.bcUtil.hideMessage(),e.bcUtil.showLoader()},success:function(t){o.data.jstree.contentFullUrl=t.url,e.bcTree.refreshTree(!0),o.data.jstree.contentParentId=e.bcTree.dropTarget.data.jstree.contentId,e.bcUtil.showNoticeMessage(t.message),e.bcUtil.hideLoader()},error:function(t){t.responseText=null,e.bcUtil.showAjaxError(bcI18n.commonSortSaveFailedMessage,t),e.bcTree.load()},complete:function(){}})}),{hideLoader:!1})},showMenuByOuter:function(t){return e.bcTree.contextmenuAddOnly=!0,e.bcTree.jsTree.get_selected().length||e.bcTree.jsTree.select_node(e.bcTree.jsTree.get_json()),e.bcTree.jsTree.show_contextmenu(e.bcTree.jsTree.get_selected(),t.pageX,t.pageY),e.bcTree.contextmenuAddOnly=!1,!1},updateShiftAndCtrlOnAnchor:function(t){e.bcTree.shiftOnAnchor=t.shiftKey,e.bcTree.ctrlOnAnchor=t.ctrlKey||t.metaKey},changeDnDCursor:function(){e("#ContentsTreeList .jstree-wholerow").css("cursor","move"),e("#ContentsTreeList .jstree-anchor").css("cursor","move"),e("#ContentsTreeList .function").css("cursor","move"),e("#ContentsTreeList .jstree-ocl").css("cursor","move")},changeNormalCursor:function(){e("#ContentsTreeList .jstree-wholerow").css("cursor","pointer"),e("#ContentsTreeList .jstree-anchor").css("cursor","pointer"),e("#ContentsTreeList .function").css("cursor","pointer"),e("#ContentsTreeList .jstree-ocl").css("cursor","pointer")}}}(jQuery)},319:()=>{ /** * baserCMS : Based Website Development Project * Copyright (c) NPO baser foundation diff --git a/plugins/bc-admin-third/webroot/js/admin/common.bundle.js.map b/plugins/bc-admin-third/webroot/js/admin/common.bundle.js.map index 99dc3a796f..163da51548 100644 --- a/plugins/bc-admin-third/webroot/js/admin/common.bundle.js.map +++ b/plugins/bc-admin-third/webroot/js/admin/common.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"js/admin/common.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/webpack/runtime/chunk loaded","webpack://bc-admin-third/./src/js/admin/_lib/jquery.baseUrl.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcBatch.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcCkeditor.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcConfirm.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcCredit.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcJwt.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcSortable.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcTimeUtil.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcToken.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcTree.js","webpack://bc-admin-third/./src/js/admin/_module/sidebar.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcUtil.js","webpack://bc-admin-third/webpack/bootstrap","webpack://bc-admin-third/webpack/runtime/define property getters","webpack://bc-admin-third/webpack/runtime/global","webpack://bc-admin-third/webpack/runtime/hasOwnProperty shorthand","webpack://bc-admin-third/webpack/runtime/make namespace object","webpack://bc-admin-third/webpack/runtime/runtimeId","webpack://bc-admin-third/webpack/runtime/jsonp chunk loading","webpack://bc-admin-third/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * baseUrl プラグイン\n */\n(function( $ ){\n $.baseUrl = function() {\n return $(\"#AdminScript\").attr('data-baseUrl');\n };\n})( jQuery );\n\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcBatch プラグイン\n */\n\n(function ($) {\n $.bcBatch = {\n /**\n * 初期値\n */\n config: {\n batchUrl: '',\n listTable: '#ListTable',\n executeButton: '#BtnApplyBatch',\n methodSelect: '#batch',\n checkAll: '#checkall',\n targetCheckbox: '.batch-targets',\n alertBox: '#AlertMessage',\n loader: '#Waiting',\n flashBox: '#flashMessage'\n },\n /**\n * 初期化\n */\n init: function (config) {\n if (config) {\n $.extend($.bcBatch.config, config);\n }\n this.initList();\n return this;\n },\n /**\n * リストの初期化\n */\n initList: function () {\n\n var config = $.bcBatch.config;\n\n // イベント削除\n $($.bcBatch.config.executeButton).unbind();\n $($.bcBatch.config.methodSelect).unbind();\n $(config.listTable + \" \" + config.targetCheckbox).unbind();\n $(config.checkAll).unbind();\n\n // イベント登録\n $($.bcBatch.config.executeButton).click(function () {\n if (!$(config.targetCheckbox + \":checked\").length) {\n alert(bcI18n.commonSelectDataFailedMessage);\n return false;\n }\n\n if (!confirm(bcI18n.batchConfirmMessage)) {\n return false;\n }\n\n var form = $('
').append($(config.methodSelect).clone().val($(config.methodSelect).val()));\n $(config.targetCheckbox + \":checked\").each(function(){\n var value = $(this).attr('value');\n if(value) {\n form.append($('').val(value));\n }\n });\n\n $.bcToken.check(function () {\n form.append($('').val($.bcToken.key));\n return $.ajax({\n url: config.batchUrl,\n type: 'POST',\n data: form.serialize(),\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.setFlashMessage(result.message);\n location.reload();\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n $.bcToken.key = null;\n var errorMessage = '';\n if (XMLHttpRequest.status === 404) {\n errorMessage = '
' + bcI18n.commonNotFoundProgramMessage;\n } else {\n if (XMLHttpRequest.responseText && XMLHttpRequest.responseText !== 'null') {\n errorMessage = '
' + JSON.parse(XMLHttpRequest.responseText).message;\n } else {\n errorMessage = '
' + errorThrown;\n }\n }\n form.remove();\n $.bcUtil.showAlertMessage(bcI18n.commonBatchExecFailedMessage + '(' + XMLHttpRequest.status + ')' + errorMessage);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n return false;\n });\n\n\n $($.bcBatch.config.methodSelect).change(toolChangeHandler);\n\n $(config.listTable + \" tbody td\").click(function () {\n var checkbox = $(this).parent().find(config.targetCheckbox);\n if (!checkbox.prop('checked')) {\n checkbox.prop('checked', true);\n } else {\n checkbox.prop('checked', false);\n }\n changeRow(checkbox);\n return false;\n });\n\n $(config.listTable + \" tbody td a\").click(function (e) {\n if ($(this).attr('rel') !== 'colorbox') {\n e.stopPropagation();\n }\n });\n\n $(config.listTable + \" \" + config.targetCheckbox).click(function (e) {\n e.stopPropagation();\n });\n\n $(config.listTable + \" \" + config.targetCheckbox).change(function () {\n changeRow($(this));\n });\n\n $(config.checkAll).change(function () {\n if ($(this).prop('checked')) {\n $(config.listTable + \" \" + config.targetCheckbox).prop('checked', true);\n } else {\n $(config.listTable + \" \" + config.targetCheckbox).prop('checked', false);\n }\n $.bcBatch.initRowSelected();\n });\n\n toolChangeHandler();\n $.bcBatch.initRowSelected();\n\n },\n /**\n * 行の選択状態を初期化\n */\n initRowSelected: function () {\n var config = $.bcBatch.config;\n $(config.listTable + \" \" + config.targetCheckbox).each(function () {\n if ($(this).prop('checked')) {\n $(this).parent().parent().addClass('selectedrow');\n } else {\n $(this).parent().parent().removeClass('selectedrow');\n }\n });\n }\n\n };\n\n /**\n * バッチ処理ドロップダウン変更時イベント\n */\n function toolChangeHandler() {\n var config = $.bcBatch.config;\n if ($(config.methodSelect).val()) {\n $(config.executeButton).removeAttr('disabled');\n } else {\n $(config.executeButton).prop('disabled', true);\n }\n }\n})(jQuery);\n\nfunction changeRow(checkbox) {\n if (checkbox.attr('checked') !== undefined) {\n $(checkbox).parent().parent().addClass('selectedrow');\n } else {\n $(checkbox).parent().parent().removeClass('selectedrow');\n }\n}\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * bcCkeditor プラグイン\n */\n(function ($) {\n $.bcCkeditor = {\n\n /**\n * editor\n */\n editor: {},\n\n /**\n * 初期化チェックフラグ\n */\n initStatus: false,\n\n /**\n * スタイル初期化チェックフラグ\n */\n styleInitStatus: false,\n\n /**\n * エディタを表示する\n * @param config\n */\n show: function (config) {\n this.setUpConfig(config);\n if (!this.initStatus) {\n CKEDITOR.addStylesSet('basercms', config.initialStyle);\n this.initStatus = true;\n }\n if (!this.styleInitStatus && config.editorStyle.length) {\n this.editorStyle.map((editor, key) => CKEDITOR.addStylesSet(key, editor));\n this.styleInitStatus = true;\n }\n config.themeEditorCsses.map((css) => {\n if (Array.isArray(CKEDITOR.config.contentsCss)) {\n CKEDITOR.config.contentsCss.push(css);\n }\n });\n this.editor[config.ckeditorField] = CKEDITOR.replace(config.editorDomId, config.editorOptions);\n this.setUpDraft(config);\n this.setUpToolBar(config);\n },\n\n /**\n * 基本設定\n * @param config\n */\n setUpConfig: function (config) {\n CKEDITOR.config.allowedContent = true;\n CKEDITOR.config.extraPlugins = 'draft,showprotected';\n CKEDITOR.config.stylesCombo_stylesSet = config.editorStylesSet;\n CKEDITOR.config.protectedSource.push(/<\\?[\\s\\S]*?\\?>/g);\n // 空「i」タグを消さないようにする\n CKEDITOR.dtd.$removeEmpty[\"i\"] = false;\n // 空「span」タグを消さないようにする\n CKEDITOR.dtd.$removeEmpty[\"span\"] = false;\n if (config.editorUrl) {\n CKEDITOR.config.templates_files = [config.editorUrl];\n }\n if (config.editorEnterBr) {\n CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR;\n }\n // 複数入ることを前提に配列型に変更\n if (typeof CKEDITOR.config.contentsCss === 'string') {\n CKEDITOR.config.contentsCss = [CKEDITOR.config.contentsCss];\n }\n },\n\n /**\n * 下書き設定\n * @param config\n */\n setUpDraft: function(config)\n {\n if (!config.editorUseDraft) return;\n this.editor[config.ckeditorField].on('pluginsLoaded', function () {\n if (config.editorUseDraft) {\n if (config.draftAreaId) {\n this.draftDraftAreaId = config.draftAreaId;\n }\n if (config.publishAreaId) {\n this.draftPublishAreaId = config.publishAreaId;\n }\n if (config.editorReadonlyPublish) {\n this.draftReadOnlyPublish = true;\n }\n }\n });\n this.editor[config.ckeditorField].on('instanceReady', function () {\n if (config.editorDisableDraft) {\n this.execCommand('changePublish');\n this.execCommand('disableDraft');\n }\n if (config.editorDisablePublish) {\n this.execCommand('changeDraft');\n this.execCommand('disablePublish');\n }\n this.on('beforeCommandExec', function (e) {\n if (e.data.name === 'changePublish' || e.data.name === 'copyPublish') {\n $(`#${config.previewModeId}`).val('default');\n } else if (e.data.name === 'changeDraft' || e.data.name === 'copyDraft') {\n $(`#${config.previewModeId}`).val('draft');\n }\n });\n });\n },\n\n /**\n * ツールバー設定\n * @param config\n */\n setUpToolBar: function(config)\n {\n this.editor[config.ckeditorField].on('instanceReady', function () {\n if (this.getCommand('maximize').uiItems.length > 0) {\n // ツールバーの表示を切り替え\n this.getCommand('maximize').on('state', () => {\n if (this.state === 1) {\n $(\"#ToolBar\").hide();\n } else {\n $(\"#ToolBar\").show();\n }\n });\n }\n });\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcConfirm\n */\n\n(function ($) {\n $.bcConfirm = {\n config: {\n title: bcI18n.bcConfirmTitle1,\n message: bcI18n.bcConfirmAlertMessage1,\n defaultCancel: true,\n ok: null\n },\n show: function (config) {\n $.extend($.bcConfirm.config, config);\n var message = $(\"
\").html($.bcConfirm.config.message);\n message.dialog({\n modal: true,\n title: $.bcConfirm.config.title,\n width: '50%',\n buttons: {\n \"キャンセル\": function () {\n $(this).dialog(\"close\");\n },\n \"OK\": function () {\n $(this).dialog(\"close\");\n if (typeof ($.bcConfirm.config.ok) == 'function') {\n $.bcConfirm.config.ok();\n } else {\n alert(bcI18n.bcConfirmAlertMessage2);\n }\n }\n }\n });\n }\n };\n})(jQuery);\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcCredit\n */\n\n(function ($) {\n $.bcCredit = {\n show: function () {\n $.ajax({\n url: $.bcUtil.adminBaseUrl + 'baser-core/utilities/credit',\n type: \"GET\",\n success: function (result) {\n let hideTarget;\n let isLogin = false;\n let $html = $(\"html\");\n let $page = $(\"#Page\");\n let $credit = $(\"#Credit\");\n if ($(\"#SideBar\").css('display') === 'none') {\n openedFavorite = false;\n hideTarget = \"#Contents\";\n } else {\n openedFavorite = true;\n hideTarget = \"#Contents, #SideBar\";\n }\n if ($credit.length) {\n isLogin = true;\n $credit.remove();\n }\n\n if ($html.css('margin-top') !== '0px') {\n $html.prepend(result);\n } else {\n $page.prepend(result);\n }\n // 再度読み込み直す\n $credit = $(\"#Credit\");\n let $creditScroller = $(\"#CreditScroller\");\n\n if (isLogin) {\n $credit.show();\n } else {\n $credit.fadeIn(1000);\n }\n $page.css('overflow', 'hidden');\n if (!isLogin) {\n $(\"#Footer\").fadeOut(500);\n $(hideTarget).fadeOut(500, function () {\n $(\"#Footer\").fadeIn(2000);\n $.bcCredit.setViewSize();\n });\n }\n $creditScroller.fadeIn(1000);\n\n //リサイズイベント\n $(window).resize(function () {\n $.bcCredit.resizeScroll();\n });\n\n var scrollSpeed = 1;\n var height = $creditScroller.height();\n var posX = $(window).height();\n var id = setInterval(function () {\n if (posX < -height + $(window).height() / 2) {\n clearInterval(id);\n }\n posX -= scrollSpeed;\n $creditScroller.css(\"margin-top\", posX + \"px\");\n }, 40);\n\n $credit.click(function () {\n clearTimeout(id);\n $credit.fadeOut(1000, function () {\n $credit.remove();\n });\n if ($('#Login').length > 0) {\n hideTarget = \"\";\n $(\"#Wrap\").css('height', '280px');\n $(\"#LoginInner\").css('color', '#333');\n } else {\n $(\"#Wrap\").css('height', 'auto');\n if (!openedFavorite) {\n hideTarget = \"#Contents\";\n } else {\n hideTarget = \"#Contents, #SideBar\";\n }\n $(hideTarget).fadeIn(1000);\n }\n $page.css('height', 'auto').css('overflow', 'auto');\n });\n\n $(\"#CreditScrollerInner\").click(function (e) {\n if (e && e.stopPropagation) {\n e.stopPropagation();\n } else {\n window.event.cancelBubble = true;\n }\n });\n }\n });\n },\n\n /**\n * 表示領域を設定\n */\n setViewSize: function(){\n let $toolBar = $(\"#ToolBar\");\n let $credit = $(\"#Credit\");\n let $page = $(\"#Page\");\n let $html = $(\"html\");\n $(\"#Wrap\").css('height', '280px');\n $html.height($html.height() - $toolBar.outerHeight() * 1);\n $credit.height($page.height() + $toolBar.outerHeight() * 1);\n $credit.width($page.width());\n },\n\n /**\n * スクロールバーを非表示に\n */\n resizeScroll: function(){\n let $toolBar = $(\"#ToolBar\");\n let $credit = $(\"#Credit\");\n let $page = $(\"#Page\");\n let $html = $(\"html\");\n let $body = $(\"body\");\n $html.height($html.height() - $toolBar.outerHeight() * 1);\n $body.height($body.height() - $toolBar.outerHeight() * 1);\n $credit.width($page.width());\n $credit.height($page.height() + $toolBar.outerHeight() * 1);\n }\n };\n})(jQuery);\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n $.bcJwt = {\n\n /**\n * Access Token\n */\n accessToken: null,\n\n /**\n * Init\n */\n init: function() {\n let refreshToken = localStorage.getItem('refreshToken');\n if(refreshToken && refreshToken !== 'null') {\n this.getToken(refreshToken)\n }\n },\n\n /**\n * Login\n */\n login: function (email, password, saved, successCallback, errorCallback) {\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/users/login.json',\n type: 'post',\n data: {\n email: email,\n password: password,\n saved: (saved !== undefined && saved)? 1 : ''\n },\n dataType: 'json'\n }).done(function (response) {\n if (response) {\n this.setToken(response.access_token, response.refresh_token)\n if(successCallback) {\n successCallback(response);\n }\n }\n }.bind(this)).fail(function () {\n if(errorCallback) {\n errorCallback()\n }\n })\n },\n\n /**\n * Get Token\n * @param refreshToken\n */\n getToken: function (refreshToken) {\n if(!refreshToken) {\n return\n }\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/users/refresh_token.json',\n type: 'get',\n async: false,\n headers: {\n \"Authorization\": refreshToken,\n 'Content-Type': 'application/json'\n },\n dataType: 'json',\n }).done(function (response) {\n if (response) {\n this.setToken(response.access_token, response.refresh_token)\n } else {\n alert('APIトークンが取得できませんでした。ブラウザをリロードしてください。')\n }\n }.bind(this)).fail(function(error){\n if (error.status === 401) {\n localStorage.setItem('refreshToken', '')\n }\n })\n },\n\n /**\n * Set Token\n * @param accessToken\n * @param refreshToken\n */\n setToken: function (accessToken, refreshToken) {\n this.accessToken = accessToken\n localStorage.setItem('refreshToken', refreshToken);\n },\n\n /**\n * Logout\n */\n logout: function () {\n this.removeToken()\n },\n\n /**\n * Remove Token\n */\n removeToken: function () {\n localStorage.setItem('refreshToken', null);\n this.accessToken = null\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n\n $.bcSortable = {\n updateSortUrl : null,\n init: function (config) {\n this.updateSortUrl = config.updateSortUrl\n var sortHandle = $(\".sort-handle\");\n var sortTable = $(\".sort-table\");\n // イベント削除\n sortHandle.unbind();\n // 初期化されてない場合にメソッドを実行すると処理が止まってしまう為 try を利用\n try {\n $(sortTable).sortable(\"destroy\");\n } catch (e) {\n }\n // イベント登録\n var sortableOptions = {\n scroll: true,\n items: \"tr.sortable\",\n opacity: 1,\n zIndex: 55,\n containment: 'body',\n tolerance: 'pointer',\n distance: 5,\n cursor: 'move',\n handle: \".sort-handle\",\n placeholder: 'ui-sortable-placeholder',\n revert: 100,\n start: this.sortStartHandler,\n update: this.sortUpdateHandler\n };\n sortHandle.css('cursor', 'move');\n sortTable.sortable(sortableOptions);\n sortHandle.click(function (e) {\n e.stopPropagation();\n });\n },\n\n /**\n * 並び替え開始時イベント\n */\n sortStartHandler: function (event, ui) {\n var placeholder = $(\".ui-sortable-placeholder\");\n placeholder.css('height', ui.item.height());\n },\n\n /**\n * 並び順を更新時イベント\n */\n sortUpdateHandler: function (event, ui) {\n var target = ui.item;\n var targetNum = $(\".sort-table\" + \" \" + \"tr.sortable\").index(target) + 1;\n var sourceNum = target.attr('id').replace('Row', '');\n var offset = targetNum - sourceNum;\n var sortTable = $(\".sort-table\");\n var form = $('').hide();\n var sortId = $('').attr('type', 'hidden').attr('name', 'id').val(target.find('.id').val());\n var sortOffset = $('').attr('type', 'hidden').attr('name', 'offset').val(offset);\n form.append(sortId).append(sortOffset);\n\n $.bcToken.check(function () {\n form.append($.bcToken.getHiddenToken());\n var data = form.serialize();\n form.find('input[name=\"_csrfToken\"]').remove();\n return $.ajax({\n url: $.bcSortable.updateSortUrl,\n type: 'POST',\n data: data,\n dataType: 'text',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function () {\n sortTable.find(\"tr.sortable\").each(function (i, v) {\n $(this).attr('id', 'Row' + (i + 1));\n });\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest.status === 404) {\n errorMessage = '
' + bcI18n.commonNotFoundProgramMessage;\n } else {\n if (XMLHttpRequest.responseText) {\n errorMessage = '
' + JSON.parse(XMLHttpRequest.responseText).message;\n } else {\n errorMessage = '
' + errorThrown;\n }\n }\n sortTable.sortable(\"cancel\");\n $.bcUtil.showAlertMessage(bcI18n.commonBatchExecFailedMessage + '(' + XMLHttpRequest.status + ')' + errorMessage)\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n };\n\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n $.bcTimeUtil = {\n\n /**\n * 現在の日時を文字列で取得する\n *\n * @returns {string}\n */\n getNowDateTime : function () {\n return $.bcTimeUtil.getNowDate() + ' ' + $.bcTimeUtil.getNowTime();\n },\n\n /**\n * 現在の日付を文字列で取得する\n *\n * @returns {string}\n */\n getNowDate : function () {\n var date = new Date();\n var year = date.getFullYear();\n var month = date.getMonth() + 1;\n var day = date.getDate();\n if (month < 10) month = '0' + month;\n if (day < 10) day = '0' + day;\n return year + '/' + month + '/' + day;\n },\n\n /**\n * 現在の時間を文字列で取得する\n *\n * @returns {string}\n */\n getNowTime : function () {\n var date = new Date();\n var hour = date.getHours();\n var minute = date.getMinutes();\n if (hour < 10) hour = '0' + hour;\n if (minute < 10) minute = '0' + minute;\n return hour + ':' + minute;\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * bcTokenプラグイン\n *\n * フロントエンドでCakePHPのセキュリティコンポーネントのトークンの管理等を行う\n */\n\n(function ($) {\n\n $.bcToken = {\n\n /**\n * トークン\n */\n key: null,\n\n /**\n * トークンを取得済かどうか\n */\n requested: false,\n\n /**\n * トークンを取得中かどうか\n */\n requesting: false,\n\n /**\n * トークンURL\n */\n url: null,\n\n /**\n * デフォルトトークンURL\n */\n defaultUrl: '/baser-core/bc_form/get_token?requestview=false',\n\n /**\n * 初期化\n */\n init: function () {\n this.setTokenUrl();\n },\n\n /**\n * トークンを取得しているかどうかチェックし、取得していない場合取得する\n * コールバック処理を登録する前提となっており、コールバック処理完了後、再度、新しいトークンを取得する\n *\n * @param callback\n * @param config\n */\n check: function (callback, config) {\n if (this.requesting) {\n var timer = setInterval(function () {\n if (!$.bcToken.requesting) {\n clearInterval(timer);\n if (callback) {\n $.bcToken.execCallback(callback, config);\n }\n }\n }, 100);\n } else {\n if (!this.key) {\n this.update(config).done(function () {\n if (callback) {\n $.bcToken.execCallback(callback, config);\n }\n });\n } else {\n if (callback) {\n this.execCallback(callback, config);\n }\n }\n }\n },\n\n /**\n * コールバック処理を実行\n * @param callback\n * @param config\n */\n execCallback: function (callback, config) {\n var _config = {\n useUpdate: true\n };\n if (config !== undefined) {\n config = $.extend(_config, config);\n } else {\n config = _config;\n }\n var result = callback();\n if (config.useUpdate) {\n config.hideLoader = true;\n config.loaderType = 'none';\n if (result) {\n result.always(function () {\n $.bcToken.update(config);\n });\n } else {\n this.update(config);\n }\n }\n },\n\n /**\n * 新しいトークンをサーバーより取得する\n *\n * @param config\n */\n update: function (config) {\n var _config = {\n type: 'GET'\n };\n if (config !== undefined) {\n config = $.extend(_config, config);\n } else {\n config = _config;\n }\n this.requesting = true;\n return $.bcUtil.ajax(this.url, function (result) {\n $.bcToken.key = result;\n $.bcToken.requesting = false;\n $('input[name=\"_csrfToken\"]').val($.bcToken.key);\n }, $.extend(true, {}, config));\n },\n\n /**\n * トークンを取得した空のフォームを取得する\n * コールバック処理の引数として利用可能\n * @param url\n * @param options\n * @param callback\n * @param config\n */\n getForm: function (url, options, callback, config) {\n var form = $('');\n form.attr('action', url).attr('method', 'post');\n this.check(function () {\n form.append($.bcToken.getHiddenToken());\n if (options.fields) form.append(options.fields);\n if (options.unlocked) form.append(options.unlocked);\n if (options.debug) form.append(options.debug);\n callback(form);\n }, config);\n },\n\n /**\n * トークン用の hidden タグを取得する\n *\n * @returns {*}\n */\n getHiddenToken: function () {\n return $('').val(this.key);\n },\n\n /**\n * 指定したURLに対しトークンを付加した上でPOST送信を行う\n * @param url\n * @param options\n */\n submitToken: function (url, options) {\n this.getForm(url, options, function (form) {\n $('body').append(form);\n form.submit();\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * 指定したセレクターのリンクのクリックイベントについて、\n * トークン付加前提のフォーム送信処理に置き換える\n *\n * CakePHP の postLink に対応\n * postLink を利用した場合、ローダーを表示するなどの処理を割り込ませる事ができないが、\n * CakePHP が生成するフォームでなく、こちらで生成するフォームを利用することで、ローダーを表示できるようにした。\n * @param selector\n */\n replaceLinkToSubmitToken: function (selector) {\n $(selector).each(function () {\n if ($(this).attr('onclick')) {\n var regex = /document\\.(post_.+?).submit\\(\\)/;\n var result = $(this).attr('onclick').match(regex);\n if (result) {\n $(this).attr('data-post-link-form-id', result[1]);\n }\n $(this).get(0).onclick = '';\n $(this).removeAttr('onclick');\n }\n });\n $(selector).click(function () {\n if ($(this).attr('data-confirm-message')) {\n var message = $(this).attr('data-confirm-message');\n if (!confirm(message)) {\n return false;\n }\n }\n let url = $(this).attr('href');\n let options = {};\n if ($(this).attr('data-post-link-form-id')) {\n let postLinkForm = $(\"form[name='\" + $(this).attr('data-post-link-form-id') + \"']\");\n let fields = postLinkForm.find(\"input[name='_Token[fields]']\");\n let unlocked = postLinkForm.find(\"input[name='_Token[unlocked]']\");\n let debug = postLinkForm.find(\"input[name='_Token[debug]']\");\n url = postLinkForm.attr('action');\n options = {\n fields: (fields.length) ? fields : null,\n unlocked: (unlocked.length) ? unlocked : null,\n debug: (debug.length) ? debug : null\n }\n }\n // key を null にしておくことで、トークンを再取得時の loading が表示されるようになる\n $.bcToken.key = null;\n $.bcToken.submitToken(url, options);\n return false;\n });\n },\n\n /**\n * トークン発行URLのセット\n * @param url トークン発行URL。nullの場合はデフォルトURL\n */\n setTokenUrl: function (url) {\n this.url = url != null ? url : $.bcUtil.baseUrl + this.defaultUrl;\n return this;\n }\n\n };\n\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * jsTree 設定\n */\n\n(function ($) {\n $.bcTree = {\n\n /**\n * リンクをクリックする際にShiftキーを押しているかどうか\n */\n shiftOnAnchor: false,\n\n /**\n * リンクをクリックする際にCtrlキーを押しているかどうか\n */\n ctrlOnAnchor: false,\n\n /**\n * コンテキストメニューを追加項目のみとする\n */\n contextmenuAddOnly: false,\n\n /**\n * 設定 BcManageContent より値を取得\n */\n settings: [],\n\n /**\n * ドラッグターゲット\n */\n dropTarget: null,\n\n /**\n * ドロップターゲット\n */\n dragTarget: null,\n\n /**\n * ツリー構造のDOM(jQueryオブジェクト)\n */\n treeDom: null,\n\n /**\n * jsTree実体\n */\n jsTree: null,\n\n /**\n * 一覧を表示した時間\n */\n listDisplayed: null,\n\n /**\n * ノードを移動する場合の直前の親ID\n */\n beforeParentId: null,\n\n /**\n * ノードを移動する場合の直前のポジション\n */\n beforePosition: null,\n\n /**\n * 現在のサイトid\n */\n currentSiteId: 1,\n\n /**\n * 設定\n */\n config: {\n isAdmin: false,\n isUseMoveContents: false,\n adminPrefix: 'admin',\n editInIndexDisabled: false\n },\n\n /**\n * 初期化済かどうか\n */\n _inited: false,\n\n /**\n * 初期化\n * @param config\n */\n init: function (config) {\n if (config) {\n $.extend($.bcTree.config, config);\n }\n $.bcTree._inited = true;\n },\n /**\n * ツリーを読み込む\n */\n load: function () {\n $.bcUtil.showLoader();\n if (!$.bcTree._inited) {\n return;\n }\n const mode = $(\"#viewsetting-mode\").val();\n let url;\n $.bcTree.listDisplayed = $.bcTimeUtil.getNowDateTime();\n $.bcTree._init();\n $($.bcTree).trigger('loaded');\n $.bcUtil.hideLoader();\n },\n\n /**\n * ツリーを初期化する\n */\n _init: function () {\n if (!$('#ContentsTreeList').length) {\n return false;\n }\n $.bcTree.settings = $.parseJSON($(\"#bcmanagecontent\").val());\n $.bcTree.treeDom = $('#ContentsTreeList');\n $.bcTree.createTree();\n $.bcTree.jsTree = $.bcTree.treeDom.jstree(true);\n $.bcTree.treeDom.bind(\"move_node.jstree\", function (e, data) {\n $.bcTree.beforeParentId = data.old_parent;\n $.bcTree.beforePosition = data.old_position;\n });\n\n // ダブルクリックイベント\n $.bcTree.treeDom.bind(\"dblclick\", $.bcTree.updateShiftAndCtrlOnAnchor);\n\n // ダブルクリックイベント\n $.bcTree.treeDom.bind(\"dblclick.jstree\", function (event) {\n var mode = $(\"#viewsetting-mode\").val();\n if (mode == 'trash') {\n return false;\n }\n var nodeId = $(event.target).closest(\"li\").attr('id');\n var data = $.bcTree.jsTree.get_node(nodeId).data.jstree;\n if (data.type == 'default' || data.alias) {\n if ($.bcTree.settings[data.contentType] == undefined || !$.bcTree.settings[data.contentType].editDisabled) {\n if (!data.alias) {\n if ($.bcTree.settings[data.contentType] == undefined) {\n $.bcTree.openUrl($.bcTree.createLink($.baseUrl() + '/' + $.bcTree.config.baserCorePrefix + '/' + $.bcTree.config.adminPrefix + '/contents/edit', data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n if ($.bcTree.settings[data.contentType]['url']['dblclick'] !== undefined) {\n $.bcTree.openUrl($.bcTree.createLink($.bcTree.settings[data.contentType]['url']['dblclick'], data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n $.bcTree.openUrl($.bcTree.createLink($.bcTree.settings[data.contentType]['url']['edit'], data.contentId, data.contentParentId, data.contentEntityId));\n }\n }\n } else {\n $.bcTree.openUrl($.bcUtil.adminBaseUrl + 'baser-core' + '/contents/edit_alias/' + data.contentId);\n }\n }\n }\n });\n\n // コンテキストメニュー表示イベント\n $.bcTree.treeDom.on(\"show_contextmenu.jstree\", function () {\n $(\"ul.jstree-contextmenu li\").each(function () {\n if ($.bcTree.isAliasMenuByLabel($.trim($(this).text()))) {\n $(this).find('a i').after('');\n }\n if ($.bcTree.isAddMenuByLabel($.trim($(this).text()))) {\n $(this).find('a i').after('');\n }\n });\n });\n\n // フォルダ展開イベント\n $.bcTree.treeDom.on(\"after_open.jstree\", function (e) {\n $.bcTree.refreshTree();\n });\n\n // テキスト変更イベント\n // コンテンツ追加のリネーム時\n $.bcTree.treeDom.on(\"set_text.jstree\", function (e) {\n $.bcTree.refreshTree();\n });\n\n // ロード完了イベント\n $.bcTree.treeDom.on(\"ready.jstree\", function (e) {\n $.bcTree.treeDom.show();\n $.bcTree.refreshTree();\n });\n\n },\n\n /**\n * ツリーを破棄する\n */\n destroy: function () {\n if ($.bcTree.treeDom) {\n $.bcTree.treeDom.unbind(\"dblclick\");\n $.bcTree.treeDom.unbind(\"dblclick.jstree\");\n $.bcTree.treeDom.unbind(\"show_contextmenu.jstree\");\n $.bcTree.treeDom.unbind(\"after_open.jstree\");\n $.bcTree.treeDom.unbind(\"set_text.jstree\");\n $.bcTree.treeDom.unbind(\"ready.jstree\");\n $.bcTree.treeDom.remove();\n }\n $.bcTree.shiftOnAnchor = false;\n $.bcTree.ctrlOnAnchor = false;\n $.bcTree.contextmenuAddOnly = false;\n $.bcTree.settings = [];\n $.bcTree.dropTarget = null;\n $.bcTree.dragTarget = null;\n $.bcTree.treeDom = null;\n $.bcTree.jsTree = null;\n },\n\n /**\n * ツリー構造を生成する\n */\n createTree: function () {\n\n // ツリービュー生成\n $.bcTree.treeDom.jstree({\n 'core': {\n 'themes': {\n 'name': 'proton',\n \"stripes\": true,\n \"variant\": \"large\"\n },\n \"multiple\": false,\n \"force_text\": true,\n \"check_callback\": function (operation, node, node_parent, node_position, more) {\n if (operation == 'move_node') {\n if (!$.bcTree.config.isUseMoveContents) {\n return false;\n }\n if (node_parent.type == 'folder' && !node_parent.data.jstree.alias && !node.data.jstree.contentSiteRoot) {\n $.bcTree.dropTarget = node_parent;\n $.bcTree.dragTarget = node;\n return true;\n } else {\n $.bcTree.dropTarget = null;\n $.bcTree.dragTarget = null\n return false;\n }\n }\n }\n },\n \"plugins\": [\n \"dnd\",\n \"changed\",\n \"state\",\n \"wholerow\",\n \"contextmenu\",\n \"types\"\n ],\n \"dnd\": {\n \"large_drop_target\": true\n },\n \"types\": {\n \"default\": {},\n \"folder\": {}\n },\n \"state\": {\n \"key\": 'jstree-' + $.bcTree.currentSiteId,\n \"events\": \"open_all.jstree close_all.jstree changed.jstree open_node.jstree close_node.jstree check_node.jstree uncheck_node.jstree\"\n },\n \"contextmenu\": {\n \"show_at_node\": false,\n \"items\": function (node) {\n var maxContents = 6;\n var data = node.data.jstree;\n var mode = $(\"#viewsetting-mode\").val();\n var parent;\n if (data.type === 'folder' && !node.data.jstree.alias) {\n parent = node;\n } else {\n parent = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_parent(node));\n }\n\n var editDisabled = false;\n var manageDisabled = false;\n var editUrl = null;\n var manageUrl = null;\n var copyUrl = null;\n var isEnabled = false;\n\n if ($.bcTree.settings[data.contentType] !== undefined) {\n editDisabled = data.editDisabled;\n manageDisabled = data.manageDisabled;\n manageUrl = $.bcTree.settings[data.contentType]['url']['manage'];\n editUrl = $.bcTree.settings[data.contentType]['url']['edit'];\n copyUrl = $.bcTree.settings[data.contentType]['url']['copy'];\n isEnabled = true;\n }\n\n var menu = {};\n\n // 確認\n // - 公開されている\n // - URLがある\n if (isEnabled && data.status && data.contentFullUrl && !$.bcTree.contextmenuAddOnly && mode === 'index') {\n $.extend(true, menu, {\n \"view\": {\n label: bcI18n.bcTreeCheck,\n \"icon\": \"bca-icon--preview\",\n \"action\": function (obj) {\n $.bcTree.openUrl(data.contentFullUrl, true);\n }\n }\n });\n }\n\n // 公開・非公開\n // - サイトルートではない\n // - 関連データではない\n if (isEnabled && !$.bcTree.config.editInIndexDisabled && !editDisabled && !data.contentSiteRoot && mode === 'index' && !$.bcTree.contextmenuAddOnly && !data.related) {\n if (!data.status) {\n $.extend(true, menu, {\n \"publish\": {\n label: bcI18n.bcTreePublish,\n \"icon\": \"bca-icon--publish\",\n \"action\": function (obj) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/change_status.json',\n type: 'PATCH',\n data: {\n id: data.contentId,\n status: 'publish',\n type: data.contentType,\n siteId: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.status = true;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n });\n } else if (data.status) {\n $.extend(true, menu, {\n \"unpublish\": {\n label: bcI18n.bcTreeUnpublish,\n \"icon\": \"bca-icon--unpublish\",\n \"action\": function (obj) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/change_status.json',\n type: 'PATCH',\n data: {\n id: data.contentId,\n status: 'unpublish',\n type: data.contentType,\n siteId: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.status = false;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n });\n }\n }\n\n // 管理\n // - 管理権限あり\n // - 管理機能サポート\n // - エイリアスではない\n if (!manageDisabled && !$.bcTree.contextmenuAddOnly && manageUrl && mode === 'index' && !data.alias) {\n $.extend(true, menu, {\n \"manage\": {\n label: bcI18n.bcTreeManage,\n \"icon\": \"bca-icon--th-list\",\n \"action\": function (obj) {\n $.bcTree.openUrl($.bcTree.createLink(manageUrl, data.contentId, data.contentParentId, data.contentEntityId));\n }\n }\n });\n }\n\n // 名称変更\n // - 編集権限あり\n // - サイトルートでない\n // − サイト関連データでない\n if (isEnabled && !$.bcTree.config.editInIndexDisabled && !editDisabled && !$.bcTree.contextmenuAddOnly && !data.contentSiteRoot && mode === 'index' && !data.related) {\n $.extend(true, menu, {\n \"rename\": {\n label: bcI18n.bcTreeRename,\n \"icon\": \"bca-icon--rename\",\n \"action\": function (obj) {\n $.bcTree.renameContent(node, node.text);\n }\n }\n });\n }\n\n // 編集\n // - 編集権限あり\n if (isEnabled && !editDisabled && !$.bcTree.contextmenuAddOnly && mode === 'index') {\n $.extend(true, menu, {\n \"edit\": {\n label: bcI18n.bcTreeEdit,\n \"icon\": \"bca-icon--edit\",\n \"action\": function (obj) {\n if (!node.data.jstree.alias) {\n $.bcTree.openUrl($.bcTree.createLink(editUrl, data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n $.bcTree.openUrl($.bcUtil.adminBaseUrl + 'baser-core' + '/contents/edit_alias/' + data.contentId);\n }\n }\n }\n });\n }\n\n // コピー\n // - 編集権限あり\n // - フォルダーでない\n // - コピー機能サポート\n if (!editDisabled && !$.bcTree.contextmenuAddOnly && data.contentType !== 'ContentFolder' && !data.alias && copyUrl && mode === 'index') {\n $.extend(true, menu, {\n \"copy\": {\n label: bcI18n.bcTreeCopy,\n \"icon\": \"bca-icon--copy\",\n \"action\": function (obj) {\n $.bcTree.copyContent(parent, node);\n }\n }\n });\n }\n var deleteLabel;\n if (data.alias) {\n deleteLabel = bcI18n.bcTreeDelete;\n } else {\n deleteLabel = bcI18n.bcTreeToTrash;\n }\n\n // 削除\n // - 編集権限あり\n // - サイトルートでない\n if (!$.bcTree.config.editInIndexDisabled && !editDisabled && !data.deleteDisabled && !$.bcTree.contextmenuAddOnly && !data.contentSiteRoot && mode === 'index') {\n $.extend(true, menu, {\n \"delete\": {\n label: deleteLabel,\n \"icon\": \"bca-icon--delete\",\n \"action\": function (obj) {\n var message = bcI18n.bcTreeConfirmToTrash;\n if (data.alias) {\n message = bcI18n.bcTreeConfirmDeleteAlias;\n }\n if (confirm(message)) {\n $.bcTree.deleteContent(node);\n }\n }\n }\n });\n }\n if (mode === 'trash') {\n $.extend(true, menu, {\n \"return\": {\n _disabled: editDisabled,\n label: bcI18n.bcTreeUndo,\n \"icon\": \"bca-icon--undo\",\n \"action\": function (obj) {\n if (data.alias) {\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/exists/' + data.contentAliasId + '.json',\n type: 'GET',\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n }).done(function (result) {\n if (result.exists) {\n $.bcTree.returnContent(node);\n } else {\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage1);\n }\n });\n } else {\n $.bcTree.returnContent(node);\n }\n }\n },\n \"empty\": {\n _disabled: !$.bcTree.config.isAdmin,\n label: bcI18n.bcTreeEmptyTrash,\n \"icon\": \"bca-icon--ban\",\n \"action\": function (obj) {\n if (confirm(bcI18n.bcTreeConfirmMessage1)) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/trash_empty.json',\n type: 'DELETE',\n dataType: 'json',\n data: {\n empty: true,\n _csrfToken: $.bcToken.key,\n },\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n if (result) {\n var nodes = [];\n $(\"li.jstree-node\").each(function (i) {\n nodes.push($.bcTree.jsTree.get_node(this));\n });\n $.bcTree.jsTree.delete_node(nodes);\n $.bcUtil.showNoticeMessage(result.message);\n $(\"#DataList\").html('
' + bcI18n.bcTreeInfoMessage1 + '
');\n }\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage2, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n }\n });\n }\n\n var settings = $.extend(true, {}, $.bcTree.settings);\n\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n\n if (mode === 'index') {\n var addMenu = {};\n var counter = 1;\n\n $.each(settings, function (i, val) {\n if (counter === maxContents + 1) {\n addMenu['Etc'] = {\n \"separator_before\": false,\n \"separator_after\": false,\n \"label\": \"その他...\",\n \"submenu\": {}\n }\n }\n if (counter <= maxContents) {\n if (!val.addDisabled) {\n addMenu[i] = $.bcTree.createMenu(val, parent, data, counter);\n }\n } else {\n if (!val.addDisabled) {\n addMenu['Etc']['submenu'][i] = $.bcTree.createMenu(val, parent, data, counter);\n }\n }\n counter++;\n });\n $.extend(true, menu, addMenu);\n }\n return menu;\n }\n }\n });\n },\n\n /**\n * メニューのラベルから登録メニューかどうかをチェックする\n *\n * @param name\n * @returns {boolean}\n */\n isAddMenuByLabel: function (name) {\n var node = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_selected());\n var settings = $.extend(true, {}, $.bcTree.settings);\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n var counter = 1;\n var result = false;\n $.each(settings, function (i) {\n if (name == counter + '.' + this.title) {\n result = true;\n }\n counter++;\n });\n return result;\n },\n\n /**\n * メニューのラベルからエイリアスかどうかをチェックする\n *\n * @param name\n * @returns {boolean}\n */\n isAliasMenuByLabel: function (name) {\n var node = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_selected());\n var settings = $.extend(true, {}, $.bcTree.settings);\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n var counter = 1;\n var result = false;\n $.each(settings, function (i) {\n if (i == 'Default') {\n return true;\n }\n if (node.data.jstree.alias && i == 'ContentLink') {\n return true;\n }\n if (name == counter + '.' + this.title && !this.multiple && this.exists) {\n result = true;\n }\n counter++;\n });\n return result;\n },\n\n /**\n * ツリーを更新する\n */\n refreshTree: function (disableCheck) {\n if (disableCheck === undefined) {\n disableCheck = false;\n }\n var treeData = $.bcTree.jsTree.get_json('#', {flat: true});\n sort = 1;\n // 並び順を特定する番号を更新する\n $(treeData).each(function () {\n var node = $.bcTree.jsTree.get_node(this.id);\n node.data.jstree.sort = sort;\n sort++;\n });\n // 公開状態によってカラーリングを更新する\n $(\"li.jstree-node\").each(function (i) {\n var node = $.bcTree.jsTree.get_node(this);\n // =====================================================================================================\n // コンテンツをドラッグ&ドロップした際に、階層が変更となると、フロントエンドの確認を行う為のURLの更新も行う必要がある。\n // 現在、対象コンテンツは更新されるが、フォルダの場合、子のコンテンツのURLが更新できていない為、\n // 確認ボタンをクリックするとNot Found となる。そのため一時的な対策として、確認ボタンを無効にする\n // TODO D&Dの際、子コンテンツのURLを返却し全てのコンテンツの確認ができるようにする\n // =====================================================================================================\n if (disableCheck) {\n node.data.jstree.contentFullUrl = false;\n }\n\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).removeClass('jstree-unpublish-odd jstree-unpublish-even jstree-publish-odd jstree-publish-even');\n return false;\n });\n if (node.data.jstree.status == false) {\n if (i % 2 == 0) {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-unpublish-odd');\n return false;\n });\n } else {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-unpublish-even');\n return false;\n });\n }\n } else {\n if (i % 2 == 0) {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-publish-odd');\n return false;\n });\n } else {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-publish-even');\n return false;\n });\n }\n }\n if (node.data.jstree.alias) {\n $(this).find('a i.jstree-icon:first').after('');\n }\n $(this).find('a.jstree-anchor:first').after('');\n $(this).find('.content-name').remove();\n if (node.data.jstree.name) {\n $(this).find('a.jstree-anchor:first').after('( ' + decodeURIComponent(node.data.jstree.name) + ' )')\n }\n });\n $(\"span.function\").on('click', function (e) {\n $.bcTree.jsTree.deselect_all();\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_node($(this).parent().attr('id')));\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n return false;\n });\n $(\"span.function\").on('contextmenu', function (e) {\n $.bcTree.jsTree.deselect_all();\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_node($(this).parent().attr('id')));\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n return false;\n });\n if ($.bcTree.config.isUseMoveContents) {\n $(\".jstree-icon\").css('cursor', 'move');\n }\n },\n\n /**\n * ゴミ箱から元にもどす\n *\n * @param node\n */\n returnContent: function (node) {\n $.bcToken.check(function () {\n return $(location).prop('href', $.bcUtil.adminBaseUrl + 'baser-core' + '/contents/trash_return/' + node.data.jstree.contentId);\n }, {hideLoader: false});\n },\n\n /**\n * Open Url\n *\n * @param url\n * @param forceBlank\n */\n openUrl: function (url, forceBlank) {\n forceBlank = forceBlank === undefined ? false : forceBlank;\n if ($.bcTree.ctrlOnAnchor || forceBlank) {\n window.open(url);\n } else if ($.bcTree.shiftOnAnchor) {\n window.open(url, '_blank');\n } else {\n window.location.href = url;\n }\n },\n\n /**\n * Create Menu\n *\n * @param setting\n * @param parent\n * @returns {{label: string, icon: string, action: function}}\n */\n createMenu: function (setting, parent, current, i) {\n var type = 'default';\n var contentAliasId = null;\n var contentTitle = bcI18n.bcTreeNewTitle.sprintf(setting.title);\n var contentPlugin = setting.plugin;\n var contentType = setting.type;\n var contentEntityId = null;\n var iconAdd;\n var iconMenu;\n if (setting.url.icon) {\n iconAdd = iconMenu = setting.url.icon;\n } else {\n iconAdd = iconMenu = setting.icon;\n }\n if (setting.type == 'ContentFolder') {\n var separatorBefore = true;\n type = 'folder';\n } else if (setting.type == 'ContentLink') {\n var separatorAfter = true;\n } else if (setting.type == 'ContentAlias') {\n iconAdd = current.icon;\n contentAliasId = current.contentId;\n contentPlugin = current.contentPlugin;\n contentType = current.contentType;\n contentTitle = bcI18n.bcTreeAliasTitle.sprintf(current.contentTitle);\n contentEntityId = current.contentEntityId;\n } else {\n if ((!setting['multiple'] && setting['exists'])) {\n contentTitle = bcI18n.bcTreeAliasTitle.sprintf(setting['existsTitle']);\n }\n }\n\n return {\n label: \"\" + i + \".\" + setting.title,\n icon: iconMenu,\n separator_before: separatorBefore,\n separator_after: separatorAfter,\n action: function () {\n $.bcTree.createContent(parent, {\n type: type,\n icon: iconAdd,\n contentParentId: parent.data.jstree.contentId,\n contentTitle: contentTitle,\n contentPlugin: contentPlugin,\n contentType: contentType,\n contentSiteId: parent.data.jstree.contentSiteId,\n contentAliasId: contentAliasId,\n contentEntityId: contentEntityId\n });\n }\n };\n },\n\n /**\n * Create Content\n *\n * @param parent\n * @param data\n */\n createContent: function (parent, data) {\n var _data = {\n icon: null,\n type: 'default',\n status: false,\n contentId: null,\n contentParentId: null,\n contentTitle: bcI18n.bcTreeUnNamedTitle,\n contentPlugin: null,\n contentType: null,\n contentEntityId: null,\n contentFullUrl: null,\n contentSiteId: null,\n contentAliasId: null\n };\n $.extend(true, _data, data);\n data = _data;\n var url = '';\n // シングルコンテンツでデータが既に存在する場合 エイリアス作成の場合\n if ((!$.bcTree.settings[data.contentType]['multiple'] && $.bcTree.settings[data.contentType]['exists']) || data.contentAliasId) {\n url = $.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/add_alias.json';\n data.alias = true;\n } else {\n url = $.bcTree.settings[data.contentType]['url']['add'];\n }\n var nodeId = $.bcTree.jsTree.create_node(parent, {\n text: data.contentTitle,\n data: {jstree: data}\n });\n var node = $.bcTree.jsTree.get_node(nodeId);\n $.bcTree.jsTree.edit(node, data.contentTitle, function (editNode) {\n $.bcToken.check(function () {\n const content = {\n parent_id: data.contentParentId,\n title: editNode.text,\n plugin: data.contentPlugin,\n type: data.contentType,\n site_id: data.contentSiteId,\n alias_id: data.contentAliasId,\n entity_id: data.contentEntityId\n };\n return $.ajax({\n url: url,\n type: 'POST',\n data: {\n _csrfToken: $.bcToken.key,\n content: content,\n },\n dataType: 'json',\n beforeSend: function () {\n this.data = $.bcTree.fillExtraData(this.data, data);\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.showNoticeMessage(result.message);\n $.bcTree.settings[data.contentType]['exists'] = true;\n $.bcTree.settings[data.contentType]['existsTitle'] = editNode.text;\n data.contentId = result.content.id;\n data.contentEntityId = result.content.entity_id;\n data.name = decodeURIComponent(result.content.name);\n node.data.jstree = data;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage6, XMLHttpRequest);\n $.bcTree.jsTree.delete_node(node);\n $.bcUtil.hideLoader();\n }\n }).then(function () {\n return $.bcUtil.ajax($.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/get_full_url/' + data.contentId + '.json', {}, {\n type: 'GET',\n dataType: 'json'\n }).done(function (result) {\n data.contentFullUrl = decodeURI(result.fullUrl);\n node.data.jstree = data;\n if (data.contentType == 'ContentFolder') {\n node.type = 'folder'\n }\n });\n });\n }\n , {hideLoader: false});\n });\n },\n /**\n * ポスト用のデータにコンテンツの種類に基づいた不足データを追加する\n *\n * @param postData 送信用データ\n * @param settingData 保持してるデータ\n */\n fillExtraData: function (postData, settingData) {\n const extra = (() => {\n switch (settingData.contentType) {\n case \"ContentFolder\":\n return {\n folder_template: \"\",\n page_template: \"\"\n };\n case \"Page\":\n return {\n contents: \"\",\n draft: \"\",\n page_template: \"\",\n code: \"\"\n };\n default:\n break;\n }\n })();\n if (extra) {\n postData += '&' + encodeURI($.param(extra));\n }\n return postData;\n },\n\n /**\n * Delete Content\n *\n * @param node\n */\n deleteContent: function (node) {\n var data = node.data.jstree;\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/delete/' + data.contentId + '.json',\n type: 'POST',\n data: {\n id: data.contentId,\n entity_id: data.contentEntityId,\n alias: data.alias,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.showNoticeMessage(result.message);\n $.bcToken.key = null;\n $.bcTree.jsTree.delete_node(node);\n // エイリアス削除\n var nodes = $.bcTree.jsTree.get_json(null, {flat: true});\n for (var i = 0; i < nodes.length; i++) {\n if (data.contentId == nodes[i].state.contentAliasId) {\n $.bcTree.jsTree.delete_node(nodes[i]);\n }\n }\n $.bcTree.refreshTree();\n $.bcUtil.hideLoader();\n },\n error: function (XMLHttpRequest) {\n $.bcToken.key = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage4, XMLHttpRequest);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * Copy Content\n *\n * @param parent\n * @param node\n */\n copyContent: function (parent, node) {\n var data = $.extend(true, {}, node.data.jstree);\n data.status = false;\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcTree.settings[data.contentType]['url']['copy'],\n type: 'POST',\n data: {\n content_id: data.contentId,\n entity_id: data.contentEntityId,\n title: data.contentTitle,\n parent_id: data.contentParentId,\n site_id: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcToken.key = null;\n $.bcTree.settings[data.contentType]['exists'] = true;\n $.bcTree.settings[data.contentType]['existsTitle'] = data.contentTitle;\n data.contentId = result.content.id;\n data.name = result.content.name;\n data.contentEntityId = result.content.entity_id;\n data.contentTitle = result.content.title;\n data.contentTitle = data.contentTitle.replace(/&/g, '&')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n .replace(//g, '>');\n $.ajax($.bcUtil.apiAdminBaseUrl + 'baser-core/contents/get_full_url/' + data.contentId + '.json', {\n type: 'GET',\n dataType: 'json'\n }).done(function (result) {\n data.contentFullUrl = result.fullUrl;\n var nodeId = $.bcTree.jsTree.create_node(parent, {\n text: data.contentTitle,\n data: {jstree: data}\n });\n var newNode = $.bcTree.jsTree.get_node(nodeId);\n newNode.data.jstree = data;\n if (data.contentType === 'ContentFolder') {\n newNode.type = 'folder'\n }\n $.bcUtil.hideLoader();\n $.bcTree.renameContent(newNode, data.contentTitle, true);\n });\n },\n error: function (XMLHttpRequest) {\n $.bcToken.key = null;\n $.bcUtil.showAjaxError(bcI18n.commonCopyFailedMessage, XMLHttpRequest);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * Rename Content\n *\n * @param node\n * @param defaultTitle 初期タイトル\n * @param first 新規登録時の初回リネームかどうか\n */\n renameContent: function (node, defaultTitle, first) {\n if (first === undefined) {\n first = false;\n }\n var oldTitle = defaultTitle;\n $.bcTree.jsTree.edit(node, oldTitle, function (editNode) {\n var newTitle = editNode.text;\n $.bcTree.jsTree.rename_node(editNode, newTitle);\n if (oldTitle === newTitle) {\n return false;\n }\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/rename.json',\n type: 'PATCH',\n dataType: 'json',\n data: {\n id: node.data.jstree.contentId,\n title: newTitle,\n first: +first, // 0 Or 1 に変換\n _csrfToken: $.bcToken.key,\n },\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n if (!result) {\n $.bcUtil.showNoticeMessage(result.message);\n }\n $.bcTree.settings[node.data.jstree.contentType]['existsTitle'] = editNode.text;\n editNode.data.jstree.contentFullUrl = result.url;\n editNode.data.jstree.name = result.name;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n $.bcTree.jsTree.rename_node(editNode, defaultTitle);\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage5, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n })\n }, {hideLoader: false});\n });\n },\n\n /**\n * Create Link\n *\n * @param base\n * @param contentParentId\n * @param contentEntityId\n * @returns string\n */\n createLink: function (base, contentId, contentParentId, contentEntityId) {\n var url = base;\n if (contentEntityId) {\n url += '/' + contentEntityId;\n }\n if (contentId) {\n url += '/content_id:' + contentId;\n }\n if (contentParentId) {\n url += '/parent_id:' + contentParentId;\n }\n return url;\n },\n\n /**\n * コンテンツを並び替える\n *\n * @param e\n * @param data\n */\n orderContent: function (e, data) {\n $.bcTree.changeNormalCursor();\n var cancel = false;\n var node = $.bcTree.jsTree.get_node(data.element);\n if (!node) {\n node = $.bcTree.dragTarget;\n }\n if (!node) {\n cancel = true;\n }\n var oldSort = node.data.jstree.sort;\n $.bcTree.refreshTree();\n var newSort = node.data.jstree.sort;\n var offset = newSort - oldSort;\n if (offset == 0) {\n if (!$.bcTree.dropTarget) {\n cancel = true;\n }\n if (node.data.jstree.contentParentId == $.bcTree.dropTarget.data.jstree.contentId) {\n cancel = true;\n }\n }\n\n if (cancel || !confirm(bcI18n.commonSortSaveConfirmMessage)) {\n // コンテンツを別のフォルダに移動するか、コンテンツを上から下に移動\n if (node.parent != $.bcTree.beforeParentId || offset >= 0) {\n $.bcTree.jsTree.move_node(node, $.bcTree.beforeParentId, $.bcTree.beforePosition);\n // コンテンツを下から上に移動\n } else {\n $.bcTree.jsTree.move_node(node, $.bcTree.beforeParentId, $.bcTree.beforePosition + 1);\n }\n $.bcTree.refreshTree();\n return false;\n }\n\n if ($.bcTree.dropTarget) {\n $.bcTree.jsTree.open_node($.bcTree.dropTarget);\n }\n\n var nextNode = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_next_dom(node, true));\n var targetId = null;\n if (nextNode) {\n targetId = nextNode.data.jstree.contentId;\n }\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/move.json',\n type: 'PATCH',\n data: {\n origin: {\n id: node.data.jstree.contentId,\n parentId: node.data.jstree.contentParentId,\n type: node.data.jstree.contentType,\n entityId: node.data.jstree.contentEntityId,\n },\n target: {\n id: targetId,\n parentId: $.bcTree.dropTarget.data.jstree.contentId,\n siteId: $.bcTree.dropTarget.data.jstree.contentSiteId,\n },\n listDisplayed: $.bcTree.listDisplayed,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.contentFullUrl = result.url;\n $.bcTree.refreshTree(true);\n node.data.jstree.contentParentId = $.bcTree.dropTarget.data.jstree.contentId;\n $.bcUtil.showNoticeMessage(result.message);\n $.bcUtil.hideLoader();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonSortSaveFailedMessage, XMLHttpRequest);\n $.bcTree.load();\n },\n complete: function () {\n }\n });\n }, {hideLoader: false});\n },\n\n /**\n * 外部よりメニューを表示する\n *\n * @param e\n * @returns {boolean}\n */\n showMenuByOuter: function (e) {\n $.bcTree.contextmenuAddOnly = true;\n var selected = $.bcTree.jsTree.get_selected();\n if (!selected.length) {\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_json());\n }\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n $.bcTree.contextmenuAddOnly = false;\n return false;\n },\n\n /**\n * Shift / Ctrl キーの押印状態を更新する\n *\n * @param e\n */\n updateShiftAndCtrlOnAnchor: function (e) {\n $.bcTree.shiftOnAnchor = e.shiftKey;\n $.bcTree.ctrlOnAnchor = (e.ctrlKey || e.metaKey);\n },\n\n changeDnDCursor: function () {\n $(\"#ContentsTreeList .jstree-wholerow\").css('cursor', 'move');\n $(\"#ContentsTreeList .jstree-anchor\").css('cursor', 'move');\n $(\"#ContentsTreeList .function\").css('cursor', 'move');\n $(\"#ContentsTreeList .jstree-ocl\").css('cursor', 'move');\n },\n\n changeNormalCursor: function () {\n $(\"#ContentsTreeList .jstree-wholerow\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .jstree-anchor\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .function\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .jstree-ocl\").css('cursor', 'pointer');\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n\n/**\n * サイドバーのコンテンツメニューを設定する\n */\nwindow.addEventListener('DOMContentLoaded', function () {\n\tvar componentId = 'AdminMenu';\n\tvar tmpl = document.querySelector('[data-js-tmpl=\"' + componentId + '\"]');\n\tvar dataStore = document.getElementById(componentId);\n\tvar data = null;\n\ttry {\n\t\tdata = JSON.parse(dataStore ? dataStore.textContent : '{}');\n\t} catch (error) {\n\t\tif (window.console) {\n\t\t\tconsole.warn('管理メニューのデータが破損しています(JSONデータが不正です)')\n\t\t}\n\t}\n\n\tif (tmpl && data && data.menuList && data.menuList.length) {\n\n\t\tvar contentList = [];\n\t\tvar systemList = [];\n\n\t\tdata.menuList.forEach(function (item, i) {\n\t\t\tif (item.type === 'system') {\n\t\t\t\t//item.menus = item.menus.filter(function (menu) { return menu.url !== item.url });\n\t\t\t\tsystemList.push(item);\n\t\t\t} else {\n\t\t\t\tcontentList.push(item);\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * for deubg\n\t\t */\n\t\t// console.log($.extend(true, {}, contentList));\n\t\t// console.log($.extend(true, {}, systemList));\n\n\t\ttmpl.hidden = false;\n\t\tvar isSystemSettingPage = systemList.some(function (item) { return (item.current || item.expanded); });\n\t\tvar app = new Vue({\n\t\t\tel: tmpl,\n\t\t\tdata: {\n\t\t\t\tsystemExpanded: isSystemSettingPage,\n\t\t\t\tbaseURL: $.baseUrl(),\n\t\t\t\tcurrentSiteId: data.currentSiteId,\n\t\t\t\tcontentList: contentList,\n\t\t\t\tisSystemSettingPage: isSystemSettingPage,\n\t\t\t\tsystemList: systemList,\n\t\t\t\tavailableVersions: null,\n\t\t\t\tuseUpdateNotice: data.useUpdateNotice\n\t\t\t},\n mounted() {\n if(!this.useUpdateNotice) return;\n $.get($.bcUtil.apiAdminBaseUrl + 'baser-core/plugins/get_available_core_version_info.json', function (response){\n if(response.availableCoreVersionInfo !== undefined) {\n app.availableVersions = Object.keys(response.availableCoreVersionInfo.versions).length;\n }\n });\n },\n\t\t\tmethods: {\n\t\t\t\topenSystem () {\n\t\t\t\t\tapp.systemExpanded = !app.systemExpanded;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t} else {\n\n\t\tif (window.console) {\n\t\t\tconsole.warn('データが空のため、管理メニューは表示されませんでした');\n\t\t}\n\n\t}\n\n});\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\nimport Cookies from 'js-cookie'\n\n(function ($) {\n $.bcUtil = {\n /**\n * hideMessage() を無効にする\n */\n disabledHideMessage: false,\n\n\n /**\n * ベースとなるURL\n */\n baseUrl: null,\n\n /**\n * BaserCoreプレフィックス\n */\n baserCorePrefix: null,\n\n /**\n * 管理画面用URLプレフィックス\n */\n adminPrefix: null,\n\n /**\n * 管理画面用のベースURL\n */\n adminBaseUrl: null,\n\n /**\n * API用のベースURL\n */\n apiBaseUrl: null,\n\n /**\n * 管理画面用APIのベースURL\n */\n apiAdminBaseUrl: null,\n\n /**\n * Ajaxローダーのパス\n */\n ajaxLoaderPath: null,\n\n /**\n * Ajaxローダー(小)のパス\n */\n ajaxLoaderSmallPath: null,\n\n /**\n * 初期化\n *\n * @param config\n */\n init: function (config) {\n if(config === undefined) config = {};\n var adminScript = $(\"#AdminScript\");\n $.bcUtil.baseUrl = adminScript.attr('data-baseUrl');\n $.bcUtil.baserCorePrefix = adminScript.attr('data-baserCorePrefix');\n $.bcUtil.adminPrefix = adminScript.attr('data-adminPrefix');\n $.bcUtil.ajaxLoaderPath = adminScript.attr('data-ajaxLoaderPath');\n $.bcUtil.ajaxLoaderSmallPath = adminScript.attr('data-ajaxLoaderSmallPath');\n $.bcUtil.frontFullUrl = adminScript.attr('data-frontFullUrl');\n if (config.baseUrl !== undefined) {\n $.bcUtil.baseUrl = config.baseUrl;\n }\n if (config.baserCorePrefix !== undefined) {\n $.bcUtil.baserCorePrefix = config.baserCorePrefix;\n }\n if (config.adminPrefix !== undefined) {\n $.bcUtil.adminPrefix = config.adminPrefix;\n }\n if (config.ajaxLoaderPath !== undefined) {\n $.bcUtil.ajaxLoaderPath = config.ajaxLoaderPath;\n }\n if (config.ajaxLoaderSmallPath !== undefined) {\n $.bcUtil.ajaxLoaderSmallPath = config.ajaxLoaderSmallPath;\n }\n $.bcUtil.adminBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/' + $.bcUtil.adminPrefix + '/';\n $.bcUtil.apiBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/api/';\n $.bcUtil.apiAdminBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/api/admin/';\n this.setUpTextCounter();\n },\n\n /**\n * アラートメッセージを表示\n *\n * @param message\n */\n showAlertMessage: function (message) {\n $.bcUtil.hideMessage();\n $(\"#BcSystemMessage\")\n .removeClass('notice-messge alert-message')\n .addClass('alert-message')\n .html(message);\n $(\"#BcMessageBox\").fadeIn(500);\n },\n\n /**\n * ノーティスメッセージを表示\n *\n * @param message\n */\n showNoticeMessage: function (message) {\n $.bcUtil.hideMessage();\n $(\"#BcSystemMessage\")\n .removeClass('notice-messge alert-message')\n .addClass('notice-message')\n .html(message);\n $(\"#BcMessageBox\").fadeIn(500);\n },\n\n /**\n * メッセージを隠す\n */\n hideMessage: function () {\n if (!$.bcUtil.disabledHideMessage) {\n $(\"#BcMessageBox\").fadeOut(200);\n $(\"#AlertMessage\").fadeOut(200);\n $(\"#MessageBox\").fadeOut(200);\n }\n },\n\n /**\n * ローダーを表示\n */\n showLoader: function (type, selector, key) {\n if (type == undefined || (type != 'none' && selector == undefined)) {\n type = 'over';\n }\n switch (type) {\n case 'over':\n $(\"#Waiting\").show();\n break;\n case 'inner':\n var div = $('
').css({'text-align': 'center'}).attr('id', key);\n var img = $('').attr('src', $.bcUtil.ajaxLoaderPath);\n div.html(img);\n $(selector).html(div);\n break;\n case 'after':\n var img = $('').attr('src', $.bcUtil.ajaxLoaderSmallPath).attr('id', key).css({\n 'width':'16px',\n 'vertical-align': 'middle',\n 'margin':'5px'\n });\n $(selector).after(img);\n break;\n case 'target':\n $(selector).show();\n break;\n case 'none':\n break;\n }\n },\n\n /**\n * ローダーを隠す\n */\n hideLoader: function (type, selector, key) {\n if (type == undefined || (type != 'none' && selector == undefined)) {\n type = 'over';\n }\n switch (type) {\n case 'over':\n $(\"#Waiting\").hide();\n break;\n case 'inner':\n $(\"#\" + key).remove();\n break;\n case 'after':\n $(\"#\" + key).remove();\n break;\n case 'target':\n $(selector).show();\n break;\n case 'none':\n break;\n }\n },\n\n /**\n * Ajax\n */\n ajax: function (url, success, config) {\n if (!config) {\n config = {};\n }\n var loaderType, loaderSelector, loaderKey;\n var hideLoader = true;\n if (typeof config.loaderType !== 'undefined') {\n loaderType = config.loaderType;\n delete config.loaderType;\n }\n if (typeof config.loaderSelector !== 'undefined') {\n loaderSelector = config.loaderSelector;\n delete config.loaderSelector;\n loaderKey = loaderSelector.replace(/\\./g, '').replace(/#/g, '').replace(/\\s/g, '') + 'loaderkey';\n }\n if (typeof config.hideLoader !== 'undefined') {\n hideLoader = config.hideLoader;\n delete config.loaderType;\n }\n var ajaxConfig = {\n url: url,\n type: 'POST',\n dataType: 'html',\n beforeSend: function () {\n $.bcUtil.showLoader(loaderType, loaderSelector, loaderKey);\n },\n complete: function () {\n if (hideLoader) {\n $.bcUtil.hideLoader(loaderType, loaderSelector, loaderKey);\n }\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n $.bcUtil.showAjaxError(bcI18n.commonExecFailedMessage, XMLHttpRequest, errorThrown);\n },\n success: success\n };\n if (config) {\n $.extend(ajaxConfig, config);\n }\n return $.ajax(ajaxConfig);\n },\n\n /**\n * Ajax のエラーメッセージを表示\n *\n * @param XMLHttpRequest\n * @param errorThrown\n * @param message\n */\n showAjaxError: function (message, XMLHttpRequest, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest !== undefined && XMLHttpRequest.status) {\n errorMessage = '
(' + XMLHttpRequest.status + ') ';\n }\n if(XMLHttpRequest !== undefined && XMLHttpRequest.responseJSON){\n errorMessage += XMLHttpRequest.responseJSON.message;\n }\n if (XMLHttpRequest !== undefined && XMLHttpRequest.responseText) {\n errorMessage += '
' + XMLHttpRequest.responseText;\n } else if (errorThrown !== undefined) {\n errorMessage += '
' + errorThrown;\n }\n $.bcUtil.showAlertMessage(message + errorMessage);\n },\n\n /**\n * APIのエラーメッセージを表示\n * @param response\n */\n showApiError: function (response) {\n let message = response.responseJSON.message;\n let errors = response.responseJSON.errors;\n if(errors !== undefined) {\n message += \"
\";\n Object.keys(errors).forEach(function (key) {\n message += \"
    \"\n Object.keys(errors[key]).forEach(function (index) {\n message += \"
  • \" + errors[key][index] + \"
  • \";\n });\n message += \"
\"\n });\n }\n $.bcUtil.showAlertMessage(message);\n },\n\n /**\n * フラッシュメッセージをセットする\n *\n * 一度しか表示できないメッセージ\n * @param message\n */\n setFlashMessage: function(message) {\n Cookies.set('bcFlashMessage', message);\n },\n\n /**\n * フラッシュメッセージを表示する\n *\n * 一度表示したら削除する\n */\n showFlashMessage: function () {\n let message = Cookies.get('bcFlashMessage');\n if(message !== undefined) {\n this.showNoticeMessage(message);\n Cookies.remove('bcFlashMessage')\n }\n },\n\n /**\n * ツールチップを初期化する\n *\n * @param config\n */\n initTooltip: function(config) {\n let btConfig = {\n target: '.bca-help',\n content: '.bca-helptext'\n };\n if(config !== undefined) {\n $.extend(btConfig, config);\n }\n let $help = $(btConfig.target);\n if ($help.bt) {\n $(btConfig.content).css('display', 'none');\n $.bt.options.closeWhenOthersOpen = true;\n $help.bt({\n trigger: 'click',\n positions: 'top',\n shadow: true,\n shadowOffsetX: 1,\n shadowOffsetY: 1,\n shadowBlur: 8,\n shadowColor: 'rgba(101,101,101,.6)',\n shadowOverlap: false,\n noShadowOpts: {\n strokeStyle: '#999',\n strokeWidth: 1\n },\n width: '600px',\n /*shrinkToFit: true,*/\n spikeLength: 12,\n spikeGirth: 18,\n padding: 20,\n cornerRadius: 0,\n strokeWidth: 1, /*no stroke*/\n strokeStyle: '#656565',\n fill: 'rgba(255, 255, 255, 1.00)',\n cssStyles: {\n fontSize: '14px'\n },\n showTip: function (box) {\n $(box).fadeIn(200);\n },\n hideTip: function (box, callback) {\n $(box).animate({\n opacity: 0\n }, 100, callback);\n },\n contentSelector: `$(this).next('${btConfig.content}').html()`\n });\n }\n },\n\n /**\n * テキストカウンターをセットアップする\n */\n setUpTextCounter(selector) {\n if(selector === undefined) {\n selector = \".bca-text-counter\";\n }\n const $textCounter = $(selector);\n $textCounter.after('');\n $textCounter.keyup(function (){\n var len = $(this).val().length;\n var maxlen = $(this).attr('maxlength');\n if(!maxlen || maxlen === -1){\n maxlen = '-';\n }\n $(this).next().html(len+' /'+maxlen+'');\n });\n $textCounter.keyup();\n },\n\n };\n})(jQuery);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.j = 3207;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t3207: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkbc_admin_third\"] = self[\"webpackChunkbc_admin_third\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [5000], () => (__webpack_require__(2670)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","$","baseUrl","attr","jQuery","changeRow","checkbox","undefined","parent","addClass","removeClass","toolChangeHandler","config","bcBatch","methodSelect","val","executeButton","removeAttr","prop","batchUrl","listTable","checkAll","targetCheckbox","alertBox","loader","flashBox","init","extend","this","initList","unbind","click","length","alert","bcI18n","commonSelectDataFailedMessage","confirm","batchConfirmMessage","form","append","clone","each","value","bcToken","check","key","ajax","url","type","data","serialize","dataType","beforeSend","bcUtil","hideMessage","showLoader","success","result","setFlashMessage","message","location","reload","error","XMLHttpRequest","textStatus","errorThrown","errorMessage","status","commonNotFoundProgramMessage","responseText","JSON","parse","remove","showAlertMessage","commonBatchExecFailedMessage","hideLoader","useUpdate","change","find","e","stopPropagation","initRowSelected","bcCkeditor","editor","initStatus","styleInitStatus","show","setUpConfig","CKEDITOR","addStylesSet","initialStyle","editorStyle","map","themeEditorCsses","css","Array","isArray","contentsCss","push","ckeditorField","replace","editorDomId","editorOptions","setUpDraft","setUpToolBar","allowedContent","extraPlugins","stylesCombo_stylesSet","editorStylesSet","protectedSource","dtd","$removeEmpty","editorUrl","templates_files","editorEnterBr","enterMode","ENTER_BR","editorUseDraft","on","draftAreaId","draftDraftAreaId","publishAreaId","draftPublishAreaId","editorReadonlyPublish","draftReadOnlyPublish","editorDisableDraft","execCommand","editorDisablePublish","name","concat","previewModeId","_this","getCommand","uiItems","state","hide","bcConfirm","title","bcConfirmTitle1","bcConfirmAlertMessage1","defaultCancel","ok","html","dialog","modal","width","buttons","bcConfirmAlertMessage2","bcCredit","adminBaseUrl","hideTarget","isLogin","$html","$page","$credit","openedFavorite","prepend","$creditScroller","fadeIn","fadeOut","setViewSize","window","resize","resizeScroll","height","posX","id","setInterval","clearInterval","clearTimeout","event","cancelBubble","$toolBar","outerHeight","$body","bcJwt","accessToken","refreshToken","localStorage","getItem","getToken","login","email","password","saved","successCallback","errorCallback","apiAdminBaseUrl","done","response","setToken","access_token","refresh_token","bind","fail","async","headers","setItem","logout","removeToken","bcSortable","updateSortUrl","sortHandle","sortTable","sortable","sortableOptions","scroll","items","opacity","zIndex","containment","tolerance","distance","cursor","handle","placeholder","revert","start","sortStartHandler","update","sortUpdateHandler","ui","item","target","offset","index","sortId","sortOffset","getHiddenToken","i","v","complete","bcTimeUtil","getNowDateTime","getNowDate","getNowTime","date","Date","year","getFullYear","month","getMonth","day","getDate","hour","getHours","minute","getMinutes","requested","requesting","defaultUrl","setTokenUrl","callback","timer","execCallback","_config","loaderType","always","getForm","options","fields","unlocked","debug","submitToken","submit","replaceLinkToSubmitToken","selector","match","get","onclick","postLinkForm","bcTree","shiftOnAnchor","ctrlOnAnchor","contextmenuAddOnly","settings","dropTarget","dragTarget","treeDom","jsTree","listDisplayed","beforeParentId","beforePosition","currentSiteId","isAdmin","isUseMoveContents","adminPrefix","editInIndexDisabled","_inited","load","_init","trigger","parseJSON","createTree","jstree","old_parent","old_position","updateShiftAndCtrlOnAnchor","nodeId","closest","get_node","alias","contentType","editDisabled","openUrl","contentId","createLink","baserCorePrefix","contentParentId","contentEntityId","isAliasMenuByLabel","trim","text","after","isAddMenuByLabel","refreshTree","destroy","operation","node","node_parent","node_position","more","contentSiteRoot","mode","get_parent","manageDisabled","editUrl","manageUrl","copyUrl","isEnabled","deleteLabel","menu","contentFullUrl","label","bcTreeCheck","obj","related","bcTreeUnpublish","siteId","contentSiteId","_csrfToken","showAjaxError","commonChangePublishFailedMessage","bcTreePublish","bcTreeManage","bcTreeRename","renameContent","bcTreeEdit","bcTreeCopy","copyContent","bcTreeDelete","bcTreeToTrash","deleteDisabled","bcTreeConfirmToTrash","bcTreeConfirmDeleteAlias","deleteContent","_disabled","bcTreeUndo","contentAliasId","exists","returnContent","bcTreeAlertMessage1","bcTreeEmptyTrash","bcTreeConfirmMessage1","empty","nodes","delete_node","showNoticeMessage","bcTreeInfoMessage1","bcTreeAlertMessage2","Default","ContentAlias","addMenu","counter","maxContents","addDisabled","createMenu","get_selected","multiple","disableCheck","treeData","get_json","flat","sort","decodeURIComponent","deselect_all","select_node","show_contextmenu","pageX","pageY","forceBlank","open","href","setting","current","iconAdd","iconMenu","contentTitle","bcTreeNewTitle","sprintf","contentPlugin","plugin","icon","separatorBefore","separatorAfter","bcTreeAliasTitle","separator_before","separator_after","action","createContent","_data","bcTreeUnNamedTitle","create_node","edit","editNode","content","parent_id","site_id","alias_id","entity_id","fillExtraData","bcTreeAlertMessage6","then","decodeURI","fullUrl","postData","settingData","extra","folder_template","page_template","contents","draft","code","encodeURI","param","bcTreeAlertMessage4","content_id","newNode","commonCopyFailedMessage","defaultTitle","first","oldTitle","newTitle","rename_node","bcTreeAlertMessage5","base","orderContent","changeNormalCursor","cancel","element","oldSort","commonSortSaveConfirmMessage","move_node","open_node","nextNode","get_next_dom","targetId","origin","parentId","entityId","commonSortSaveFailedMessage","showMenuByOuter","shiftKey","ctrlKey","metaKey","changeDnDCursor","addEventListener","componentId","tmpl","document","querySelector","dataStore","getElementById","textContent","console","warn","menuList","contentList","systemList","forEach","hidden","isSystemSettingPage","some","expanded","app","Vue","el","systemExpanded","baseURL","availableVersions","useUpdateNotice","mounted","availableCoreVersionInfo","Object","keys","versions","methods","openSystem","disabledHideMessage","apiBaseUrl","ajaxLoaderPath","ajaxLoaderSmallPath","adminScript","frontFullUrl","setUpTextCounter","div","img","loaderSelector","loaderKey","ajaxConfig","commonExecFailedMessage","responseJSON","showApiError","errors","Cookies","set","showFlashMessage","initTooltip","btConfig","$help","bt","closeWhenOthersOpen","positions","shadow","shadowOffsetX","shadowOffsetY","shadowBlur","shadowColor","shadowOverlap","noShadowOpts","strokeStyle","strokeWidth","spikeLength","spikeGirth","padding","cornerRadius","fill","cssStyles","fontSize","showTip","box","hideTip","animate","contentSelector","$textCounter","keyup","len","maxlen","next","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","d","definition","o","defineProperty","enumerable","g","globalThis","Function","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/admin/common.bundle.js","mappings":"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","sources":["webpack://bc-admin-third/webpack/runtime/chunk loaded","webpack://bc-admin-third/./src/js/admin/_lib/jquery.baseUrl.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcBatch.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcCkeditor.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcConfirm.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcCredit.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcJwt.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcSortable.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcTimeUtil.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcToken.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcTree.js","webpack://bc-admin-third/./src/js/admin/_module/sidebar.js","webpack://bc-admin-third/./src/js/admin/_lib/jquery.bcUtil.js","webpack://bc-admin-third/webpack/bootstrap","webpack://bc-admin-third/webpack/runtime/define property getters","webpack://bc-admin-third/webpack/runtime/global","webpack://bc-admin-third/webpack/runtime/hasOwnProperty shorthand","webpack://bc-admin-third/webpack/runtime/make namespace object","webpack://bc-admin-third/webpack/runtime/runtimeId","webpack://bc-admin-third/webpack/runtime/jsonp chunk loading","webpack://bc-admin-third/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * baseUrl プラグイン\n */\n(function( $ ){\n $.baseUrl = function() {\n return $(\"#AdminScript\").attr('data-baseUrl');\n };\n})( jQuery );\n\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcBatch プラグイン\n */\n\n(function ($) {\n $.bcBatch = {\n /**\n * 初期値\n */\n config: {\n batchUrl: '',\n listTable: '#ListTable',\n executeButton: '#BtnApplyBatch',\n methodSelect: '#batch',\n checkAll: '#checkall',\n targetCheckbox: '.batch-targets',\n alertBox: '#AlertMessage',\n loader: '#Waiting',\n flashBox: '#flashMessage'\n },\n /**\n * 初期化\n */\n init: function (config) {\n if (config) {\n $.extend($.bcBatch.config, config);\n }\n this.initList();\n return this;\n },\n /**\n * リストの初期化\n */\n initList: function () {\n\n var config = $.bcBatch.config;\n\n // イベント削除\n $($.bcBatch.config.executeButton).unbind();\n $($.bcBatch.config.methodSelect).unbind();\n $(config.listTable + \" \" + config.targetCheckbox).unbind();\n $(config.checkAll).unbind();\n\n // イベント登録\n $($.bcBatch.config.executeButton).click(function () {\n if (!$(config.targetCheckbox + \":checked\").length) {\n alert(bcI18n.commonSelectDataFailedMessage);\n return false;\n }\n\n if (!confirm(bcI18n.batchConfirmMessage)) {\n return false;\n }\n\n var form = $('').append($(config.methodSelect).clone().val($(config.methodSelect).val()));\n $(config.targetCheckbox + \":checked\").each(function(){\n var value = $(this).attr('value');\n if(value) {\n form.append($('').val(value));\n }\n });\n\n $.bcToken.check(function () {\n form.append($('').val($.bcToken.key));\n return $.ajax({\n url: config.batchUrl,\n type: 'POST',\n data: form.serialize(),\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.setFlashMessage(result.message);\n location.reload();\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n $.bcToken.key = null;\n var errorMessage = '';\n if (XMLHttpRequest.status === 404) {\n errorMessage = '
' + bcI18n.commonNotFoundProgramMessage;\n } else {\n if (XMLHttpRequest.responseText && XMLHttpRequest.responseText !== 'null') {\n errorMessage = '
' + JSON.parse(XMLHttpRequest.responseText).message;\n } else {\n errorMessage = '
' + errorThrown;\n }\n }\n form.remove();\n $.bcUtil.showAlertMessage(bcI18n.commonBatchExecFailedMessage + '(' + XMLHttpRequest.status + ')' + errorMessage);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n return false;\n });\n\n\n $($.bcBatch.config.methodSelect).change(toolChangeHandler);\n\n $(config.listTable + \" tbody td\").click(function () {\n var checkbox = $(this).parent().find(config.targetCheckbox);\n if (!checkbox.prop('checked')) {\n checkbox.prop('checked', true);\n } else {\n checkbox.prop('checked', false);\n }\n changeRow(checkbox);\n return false;\n });\n\n $(config.listTable + \" tbody td a\").click(function (e) {\n if ($(this).attr('rel') !== 'colorbox') {\n e.stopPropagation();\n }\n });\n\n $(config.listTable + \" \" + config.targetCheckbox).click(function (e) {\n e.stopPropagation();\n });\n\n $(config.listTable + \" \" + config.targetCheckbox).change(function () {\n changeRow($(this));\n });\n\n $(config.checkAll).change(function () {\n if ($(this).prop('checked')) {\n $(config.listTable + \" \" + config.targetCheckbox).prop('checked', true);\n } else {\n $(config.listTable + \" \" + config.targetCheckbox).prop('checked', false);\n }\n $.bcBatch.initRowSelected();\n });\n\n toolChangeHandler();\n $.bcBatch.initRowSelected();\n\n },\n /**\n * 行の選択状態を初期化\n */\n initRowSelected: function () {\n var config = $.bcBatch.config;\n $(config.listTable + \" \" + config.targetCheckbox).each(function () {\n if ($(this).prop('checked')) {\n $(this).parent().parent().addClass('selectedrow');\n } else {\n $(this).parent().parent().removeClass('selectedrow');\n }\n });\n }\n\n };\n\n /**\n * バッチ処理ドロップダウン変更時イベント\n */\n function toolChangeHandler() {\n var config = $.bcBatch.config;\n if ($(config.methodSelect).val()) {\n $(config.executeButton).removeAttr('disabled');\n } else {\n $(config.executeButton).prop('disabled', true);\n }\n }\n})(jQuery);\n\nfunction changeRow(checkbox) {\n if (checkbox.attr('checked') !== undefined) {\n $(checkbox).parent().parent().addClass('selectedrow');\n } else {\n $(checkbox).parent().parent().removeClass('selectedrow');\n }\n}\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * bcCkeditor プラグイン\n */\n(function ($) {\n $.bcCkeditor = {\n\n /**\n * editor\n */\n editor: {},\n\n /**\n * 初期化チェックフラグ\n */\n initStatus: false,\n\n /**\n * スタイル初期化チェックフラグ\n */\n styleInitStatus: false,\n\n /**\n * エディタを表示する\n * @param config\n */\n show: function (config) {\n this.setUpConfig(config);\n if (!this.initStatus) {\n CKEDITOR.addStylesSet('basercms', config.initialStyle);\n this.initStatus = true;\n }\n if (!this.styleInitStatus && config.editorStyle.length) {\n this.editorStyle.map((editor, key) => CKEDITOR.addStylesSet(key, editor));\n this.styleInitStatus = true;\n }\n config.themeEditorCsses.map((css) => {\n if (Array.isArray(CKEDITOR.config.contentsCss)) {\n CKEDITOR.config.contentsCss.push(css);\n }\n });\n this.editor[config.ckeditorField] = CKEDITOR.replace(config.editorDomId, config.editorOptions);\n this.setUpDraft(config);\n this.setUpToolBar(config);\n },\n\n /**\n * 基本設定\n * @param config\n */\n setUpConfig: function (config) {\n CKEDITOR.config.allowedContent = true;\n CKEDITOR.config.extraPlugins = 'draft,showprotected';\n CKEDITOR.config.stylesCombo_stylesSet = config.editorStylesSet;\n CKEDITOR.config.protectedSource.push(/<\\?[\\s\\S]*?\\?>/g);\n // 空「i」タグを消さないようにする\n CKEDITOR.dtd.$removeEmpty[\"i\"] = false;\n // 空「span」タグを消さないようにする\n CKEDITOR.dtd.$removeEmpty[\"span\"] = false;\n if (config.editorUrl) {\n CKEDITOR.config.templates_files = [config.editorUrl];\n }\n if (config.editorEnterBr) {\n CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR;\n }\n // 複数入ることを前提に配列型に変更\n if (typeof CKEDITOR.config.contentsCss === 'string') {\n CKEDITOR.config.contentsCss = [CKEDITOR.config.contentsCss];\n }\n },\n\n /**\n * 下書き設定\n * @param config\n */\n setUpDraft: function(config)\n {\n if (!config.editorUseDraft) return;\n this.editor[config.ckeditorField].on('pluginsLoaded', function () {\n if (config.editorUseDraft) {\n if (config.draftAreaId) {\n this.draftDraftAreaId = config.draftAreaId;\n }\n if (config.publishAreaId) {\n this.draftPublishAreaId = config.publishAreaId;\n }\n if (config.editorReadonlyPublish) {\n this.draftReadOnlyPublish = true;\n }\n }\n });\n this.editor[config.ckeditorField].on('instanceReady', function () {\n if (config.editorDisableDraft) {\n this.execCommand('changePublish');\n this.execCommand('disableDraft');\n }\n if (config.editorDisablePublish) {\n this.execCommand('changeDraft');\n this.execCommand('disablePublish');\n }\n this.on('beforeCommandExec', function (e) {\n if (e.data.name === 'changePublish' || e.data.name === 'copyPublish') {\n $(`#${config.previewModeId}`).val('default');\n } else if (e.data.name === 'changeDraft' || e.data.name === 'copyDraft') {\n $(`#${config.previewModeId}`).val('draft');\n }\n });\n });\n },\n\n /**\n * ツールバー設定\n * @param config\n */\n setUpToolBar: function(config)\n {\n this.editor[config.ckeditorField].on('instanceReady', function () {\n if (this.getCommand('maximize').uiItems.length > 0) {\n // ツールバーの表示を切り替え\n this.getCommand('maximize').on('state', () => {\n if (this.state === 1) {\n $(\"#ToolBar\").hide();\n } else {\n $(\"#ToolBar\").show();\n }\n });\n }\n });\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcConfirm\n */\n\n(function ($) {\n $.bcConfirm = {\n config: {\n title: bcI18n.bcConfirmTitle1,\n message: bcI18n.bcConfirmAlertMessage1,\n defaultCancel: true,\n ok: null\n },\n show: function (config) {\n $.extend($.bcConfirm.config, config);\n var message = $(\"
\").html($.bcConfirm.config.message);\n message.dialog({\n modal: true,\n title: $.bcConfirm.config.title,\n width: '50%',\n buttons: {\n \"キャンセル\": function () {\n $(this).dialog(\"close\");\n },\n \"OK\": function () {\n $(this).dialog(\"close\");\n if (typeof ($.bcConfirm.config.ok) == 'function') {\n $.bcConfirm.config.ok();\n } else {\n alert(bcI18n.bcConfirmAlertMessage2);\n }\n }\n }\n });\n }\n };\n})(jQuery);\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) baserCMS Users Community \n *\n * @copyright Copyright (c) baserCMS Users Community\n * @link https://basercms.net baserCMS Project\n * @since baserCMS v 2.0.0\n * @license https://basercms.net/license/index.html\n */\n\n/**\n * bcCredit\n */\n\n(function ($) {\n $.bcCredit = {\n show: function () {\n $.ajax({\n url: $.bcUtil.adminBaseUrl + 'baser-core/utilities/credit',\n type: \"GET\",\n success: function (result) {\n let hideTarget;\n let isLogin = false;\n let $html = $(\"html\");\n let $page = $(\"#Page\");\n let $credit = $(\"#Credit\");\n if ($(\"#SideBar\").css('display') === 'none') {\n openedFavorite = false;\n hideTarget = \"#Contents\";\n } else {\n openedFavorite = true;\n hideTarget = \"#Contents, #SideBar\";\n }\n if ($credit.length) {\n isLogin = true;\n $credit.remove();\n }\n\n if ($html.css('margin-top') !== '0px') {\n $html.prepend(result);\n } else {\n $page.prepend(result);\n }\n // 再度読み込み直す\n $credit = $(\"#Credit\");\n let $creditScroller = $(\"#CreditScroller\");\n\n if (isLogin) {\n $credit.show();\n } else {\n $credit.fadeIn(1000);\n }\n $page.css('overflow', 'hidden');\n if (!isLogin) {\n $(\"#Footer\").fadeOut(500);\n $(hideTarget).fadeOut(500, function () {\n $(\"#Footer\").fadeIn(2000);\n $.bcCredit.setViewSize();\n });\n }\n $creditScroller.fadeIn(1000);\n\n //リサイズイベント\n $(window).resize(function () {\n $.bcCredit.resizeScroll();\n });\n\n var scrollSpeed = 1;\n var height = $creditScroller.height();\n var posX = $(window).height();\n var id = setInterval(function () {\n if (posX < -height + $(window).height() / 2) {\n clearInterval(id);\n }\n posX -= scrollSpeed;\n $creditScroller.css(\"margin-top\", posX + \"px\");\n }, 40);\n\n $credit.click(function () {\n clearTimeout(id);\n $credit.fadeOut(1000, function () {\n $credit.remove();\n });\n if ($('#Login').length > 0) {\n hideTarget = \"\";\n $(\"#Wrap\").css('height', '280px');\n $(\"#LoginInner\").css('color', '#333');\n } else {\n $(\"#Wrap\").css('height', 'auto');\n if (!openedFavorite) {\n hideTarget = \"#Contents\";\n } else {\n hideTarget = \"#Contents, #SideBar\";\n }\n $(hideTarget).fadeIn(1000);\n }\n $page.css('height', 'auto').css('overflow', 'auto');\n });\n\n $(\"#CreditScrollerInner\").click(function (e) {\n if (e && e.stopPropagation) {\n e.stopPropagation();\n } else {\n window.event.cancelBubble = true;\n }\n });\n }\n });\n },\n\n /**\n * 表示領域を設定\n */\n setViewSize: function(){\n let $toolBar = $(\"#ToolBar\");\n let $credit = $(\"#Credit\");\n let $page = $(\"#Page\");\n let $html = $(\"html\");\n $(\"#Wrap\").css('height', '280px');\n $html.height($html.height() - $toolBar.outerHeight() * 1);\n $credit.height($page.height() + $toolBar.outerHeight() * 1);\n $credit.width($page.width());\n },\n\n /**\n * スクロールバーを非表示に\n */\n resizeScroll: function(){\n let $toolBar = $(\"#ToolBar\");\n let $credit = $(\"#Credit\");\n let $page = $(\"#Page\");\n let $html = $(\"html\");\n let $body = $(\"body\");\n $html.height($html.height() - $toolBar.outerHeight() * 1);\n $body.height($body.height() - $toolBar.outerHeight() * 1);\n $credit.width($page.width());\n $credit.height($page.height() + $toolBar.outerHeight() * 1);\n }\n };\n})(jQuery);\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n $.bcJwt = {\n\n /**\n * Access Token\n */\n accessToken: null,\n\n /**\n * Init\n */\n init: function() {\n let refreshToken = localStorage.getItem('refreshToken');\n if(refreshToken && refreshToken !== 'null') {\n this.getToken(refreshToken)\n }\n },\n\n /**\n * Login\n */\n login: function (email, password, saved, successCallback, errorCallback) {\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/users/login.json',\n type: 'post',\n data: {\n email: email,\n password: password,\n saved: (saved !== undefined && saved)? 1 : ''\n },\n dataType: 'json'\n }).done(function (response) {\n if (response) {\n this.setToken(response.access_token, response.refresh_token)\n if(successCallback) {\n successCallback(response);\n }\n }\n }.bind(this)).fail(function () {\n if(errorCallback) {\n errorCallback()\n }\n })\n },\n\n /**\n * Get Token\n * @param refreshToken\n */\n getToken: function (refreshToken) {\n if(!refreshToken) {\n return\n }\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/users/refresh_token.json',\n type: 'get',\n async: false,\n headers: {\n \"Authorization\": refreshToken,\n 'Content-Type': 'application/json'\n },\n dataType: 'json',\n }).done(function (response) {\n if (response) {\n this.setToken(response.access_token, response.refresh_token)\n } else {\n alert('APIトークンが取得できませんでした。ブラウザをリロードしてください。')\n }\n }.bind(this)).fail(function(error){\n if (error.status === 401) {\n localStorage.setItem('refreshToken', '')\n }\n })\n },\n\n /**\n * Set Token\n * @param accessToken\n * @param refreshToken\n */\n setToken: function (accessToken, refreshToken) {\n this.accessToken = accessToken\n localStorage.setItem('refreshToken', refreshToken);\n },\n\n /**\n * Logout\n */\n logout: function () {\n this.removeToken()\n },\n\n /**\n * Remove Token\n */\n removeToken: function () {\n localStorage.setItem('refreshToken', null);\n this.accessToken = null\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n\n $.bcSortable = {\n updateSortUrl : null,\n init: function (config) {\n this.updateSortUrl = config.updateSortUrl\n var sortHandle = $(\".sort-handle\");\n var sortTable = $(\".sort-table\");\n // イベント削除\n sortHandle.unbind();\n // 初期化されてない場合にメソッドを実行すると処理が止まってしまう為 try を利用\n try {\n $(sortTable).sortable(\"destroy\");\n } catch (e) {\n }\n // イベント登録\n var sortableOptions = {\n scroll: true,\n items: \"tr.sortable\",\n opacity: 1,\n zIndex: 55,\n containment: 'body',\n tolerance: 'pointer',\n distance: 5,\n cursor: 'move',\n handle: \".sort-handle\",\n placeholder: 'ui-sortable-placeholder',\n revert: 100,\n start: this.sortStartHandler,\n update: this.sortUpdateHandler\n };\n sortHandle.css('cursor', 'move');\n sortTable.sortable(sortableOptions);\n sortHandle.click(function (e) {\n e.stopPropagation();\n });\n },\n\n /**\n * 並び替え開始時イベント\n */\n sortStartHandler: function (event, ui) {\n var placeholder = $(\".ui-sortable-placeholder\");\n placeholder.css('height', ui.item.height());\n },\n\n /**\n * 並び順を更新時イベント\n */\n sortUpdateHandler: function (event, ui) {\n var target = ui.item;\n var targetNum = $(\".sort-table\" + \" \" + \"tr.sortable\").index(target) + 1;\n var sourceNum = target.attr('id').replace('Row', '');\n var offset = targetNum - sourceNum;\n var sortTable = $(\".sort-table\");\n var form = $('').hide();\n var sortId = $('').attr('type', 'hidden').attr('name', 'id').val(target.find('.id').val());\n var sortOffset = $('').attr('type', 'hidden').attr('name', 'offset').val(offset);\n form.append(sortId).append(sortOffset);\n\n $.bcToken.check(function () {\n form.append($.bcToken.getHiddenToken());\n var data = form.serialize();\n form.find('input[name=\"_csrfToken\"]').remove();\n return $.ajax({\n url: $.bcSortable.updateSortUrl,\n type: 'POST',\n data: data,\n dataType: 'text',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function () {\n sortTable.find(\"tr.sortable\").each(function (i, v) {\n $(this).attr('id', 'Row' + (i + 1));\n });\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest.status === 404) {\n errorMessage = '
' + bcI18n.commonNotFoundProgramMessage;\n } else {\n if (XMLHttpRequest.responseText) {\n errorMessage = '
' + JSON.parse(XMLHttpRequest.responseText).message;\n } else {\n errorMessage = '
' + errorThrown;\n }\n }\n sortTable.sortable(\"cancel\");\n $.bcUtil.showAlertMessage(bcI18n.commonBatchExecFailedMessage + '(' + XMLHttpRequest.status + ')' + errorMessage)\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n };\n\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n(function ($) {\n $.bcTimeUtil = {\n\n /**\n * 現在の日時を文字列で取得する\n *\n * @returns {string}\n */\n getNowDateTime : function () {\n return $.bcTimeUtil.getNowDate() + ' ' + $.bcTimeUtil.getNowTime();\n },\n\n /**\n * 現在の日付を文字列で取得する\n *\n * @returns {string}\n */\n getNowDate : function () {\n var date = new Date();\n var year = date.getFullYear();\n var month = date.getMonth() + 1;\n var day = date.getDate();\n if (month < 10) month = '0' + month;\n if (day < 10) day = '0' + day;\n return year + '/' + month + '/' + day;\n },\n\n /**\n * 現在の時間を文字列で取得する\n *\n * @returns {string}\n */\n getNowTime : function () {\n var date = new Date();\n var hour = date.getHours();\n var minute = date.getMinutes();\n if (hour < 10) hour = '0' + hour;\n if (minute < 10) minute = '0' + minute;\n return hour + ':' + minute;\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * bcTokenプラグイン\n *\n * フロントエンドでCakePHPのセキュリティコンポーネントのトークンの管理等を行う\n */\n\n(function ($) {\n\n $.bcToken = {\n\n /**\n * トークン\n */\n key: null,\n\n /**\n * トークンを取得済かどうか\n */\n requested: false,\n\n /**\n * トークンを取得中かどうか\n */\n requesting: false,\n\n /**\n * トークンURL\n */\n url: null,\n\n /**\n * デフォルトトークンURL\n */\n defaultUrl: '/baser-core/bc_form/get_token?requestview=false',\n\n /**\n * 初期化\n */\n init: function () {\n this.setTokenUrl();\n },\n\n /**\n * トークンを取得しているかどうかチェックし、取得していない場合取得する\n * コールバック処理を登録する前提となっており、コールバック処理完了後、再度、新しいトークンを取得する\n *\n * @param callback\n * @param config\n */\n check: function (callback, config) {\n if (this.requesting) {\n var timer = setInterval(function () {\n if (!$.bcToken.requesting) {\n clearInterval(timer);\n if (callback) {\n $.bcToken.execCallback(callback, config);\n }\n }\n }, 100);\n } else {\n if (!this.key) {\n this.update(config).done(function () {\n if (callback) {\n $.bcToken.execCallback(callback, config);\n }\n });\n } else {\n if (callback) {\n this.execCallback(callback, config);\n }\n }\n }\n },\n\n /**\n * コールバック処理を実行\n * @param callback\n * @param config\n */\n execCallback: function (callback, config) {\n var _config = {\n useUpdate: true\n };\n if (config !== undefined) {\n config = $.extend(_config, config);\n } else {\n config = _config;\n }\n var result = callback();\n if (config.useUpdate) {\n config.hideLoader = true;\n config.loaderType = 'none';\n if (result) {\n result.always(function () {\n $.bcToken.update(config);\n });\n } else {\n this.update(config);\n }\n }\n },\n\n /**\n * 新しいトークンをサーバーより取得する\n *\n * @param config\n */\n update: function (config) {\n var _config = {\n type: 'GET'\n };\n if (config !== undefined) {\n config = $.extend(_config, config);\n } else {\n config = _config;\n }\n this.requesting = true;\n return $.bcUtil.ajax(this.url, function (result) {\n $.bcToken.key = result;\n $.bcToken.requesting = false;\n $('input[name=\"_csrfToken\"]').val($.bcToken.key);\n }, $.extend(true, {}, config));\n },\n\n /**\n * トークンを取得した空のフォームを取得する\n * コールバック処理の引数として利用可能\n * @param url\n * @param options\n * @param callback\n * @param config\n */\n getForm: function (url, options, callback, config) {\n var form = $('');\n form.attr('action', url).attr('method', 'post');\n this.check(function () {\n form.append($.bcToken.getHiddenToken());\n if (options.fields) form.append(options.fields);\n if (options.unlocked) form.append(options.unlocked);\n if (options.debug) form.append(options.debug);\n callback(form);\n }, config);\n },\n\n /**\n * トークン用の hidden タグを取得する\n *\n * @returns {*}\n */\n getHiddenToken: function () {\n return $('').val(this.key);\n },\n\n /**\n * 指定したURLに対しトークンを付加した上でPOST送信を行う\n * @param url\n * @param options\n */\n submitToken: function (url, options) {\n this.getForm(url, options, function (form) {\n $('body').append(form);\n form.submit();\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * 指定したセレクターのリンクのクリックイベントについて、\n * トークン付加前提のフォーム送信処理に置き換える\n *\n * CakePHP の postLink に対応\n * postLink を利用した場合、ローダーを表示するなどの処理を割り込ませる事ができないが、\n * CakePHP が生成するフォームでなく、こちらで生成するフォームを利用することで、ローダーを表示できるようにした。\n * @param selector\n */\n replaceLinkToSubmitToken: function (selector) {\n $(selector).each(function () {\n if ($(this).attr('onclick')) {\n var regex = /document\\.(post_.+?).submit\\(\\)/;\n var result = $(this).attr('onclick').match(regex);\n if (result) {\n $(this).attr('data-post-link-form-id', result[1]);\n }\n $(this).get(0).onclick = '';\n $(this).removeAttr('onclick');\n }\n });\n $(selector).click(function () {\n if ($(this).attr('data-confirm-message')) {\n var message = $(this).attr('data-confirm-message');\n if (!confirm(message)) {\n return false;\n }\n }\n let url = $(this).attr('href');\n let options = {};\n if ($(this).attr('data-post-link-form-id')) {\n let postLinkForm = $(\"form[name='\" + $(this).attr('data-post-link-form-id') + \"']\");\n let fields = postLinkForm.find(\"input[name='_Token[fields]']\");\n let unlocked = postLinkForm.find(\"input[name='_Token[unlocked]']\");\n let debug = postLinkForm.find(\"input[name='_Token[debug]']\");\n url = postLinkForm.attr('action');\n options = {\n fields: (fields.length) ? fields : null,\n unlocked: (unlocked.length) ? unlocked : null,\n debug: (debug.length) ? debug : null\n }\n }\n // key を null にしておくことで、トークンを再取得時の loading が表示されるようになる\n $.bcToken.key = null;\n $.bcToken.submitToken(url, options);\n return false;\n });\n },\n\n /**\n * トークン発行URLのセット\n * @param url トークン発行URL。nullの場合はデフォルトURL\n */\n setTokenUrl: function (url) {\n this.url = url != null ? url : $.bcUtil.baseUrl + this.defaultUrl;\n return this;\n }\n\n };\n\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n/**\n * jsTree 設定\n */\n\n(function ($) {\n $.bcTree = {\n\n /**\n * リンクをクリックする際にShiftキーを押しているかどうか\n */\n shiftOnAnchor: false,\n\n /**\n * リンクをクリックする際にCtrlキーを押しているかどうか\n */\n ctrlOnAnchor: false,\n\n /**\n * コンテキストメニューを追加項目のみとする\n */\n contextmenuAddOnly: false,\n\n /**\n * 設定 BcManageContent より値を取得\n */\n settings: [],\n\n /**\n * ドラッグターゲット\n */\n dropTarget: null,\n\n /**\n * ドロップターゲット\n */\n dragTarget: null,\n\n /**\n * ツリー構造のDOM(jQueryオブジェクト)\n */\n treeDom: null,\n\n /**\n * jsTree実体\n */\n jsTree: null,\n\n /**\n * 一覧を表示した時間\n */\n listDisplayed: null,\n\n /**\n * ノードを移動する場合の直前の親ID\n */\n beforeParentId: null,\n\n /**\n * ノードを移動する場合の直前のポジション\n */\n beforePosition: null,\n\n /**\n * 現在のサイトid\n */\n currentSiteId: 1,\n\n /**\n * 設定\n */\n config: {\n isAdmin: false,\n isUseMoveContents: false,\n adminPrefix: 'admin',\n editInIndexDisabled: false\n },\n\n /**\n * 初期化済かどうか\n */\n _inited: false,\n\n /**\n * 初期化\n * @param config\n */\n init: function (config) {\n if (config) {\n $.extend($.bcTree.config, config);\n }\n $.bcTree._inited = true;\n },\n /**\n * ツリーを読み込む\n */\n load: function () {\n $.bcUtil.showLoader();\n if (!$.bcTree._inited) {\n return;\n }\n const mode = $(\"#viewsetting-mode\").val();\n let url;\n $.bcTree.listDisplayed = $.bcTimeUtil.getNowDateTime();\n $.bcTree._init();\n $($.bcTree).trigger('loaded');\n $.bcUtil.hideLoader();\n },\n\n /**\n * ツリーを初期化する\n */\n _init: function () {\n if (!$('#ContentsTreeList').length) {\n return false;\n }\n $.bcTree.settings = $.parseJSON($(\"#bcmanagecontent\").val());\n $.bcTree.treeDom = $('#ContentsTreeList');\n $.bcTree.createTree();\n $.bcTree.jsTree = $.bcTree.treeDom.jstree(true);\n $.bcTree.treeDom.bind(\"move_node.jstree\", function (e, data) {\n $.bcTree.beforeParentId = data.old_parent;\n $.bcTree.beforePosition = data.old_position;\n });\n\n // ダブルクリックイベント\n $.bcTree.treeDom.bind(\"dblclick\", $.bcTree.updateShiftAndCtrlOnAnchor);\n\n // ダブルクリックイベント\n $.bcTree.treeDom.bind(\"dblclick.jstree\", function (event) {\n var mode = $(\"#viewsetting-mode\").val();\n if (mode == 'trash') {\n return false;\n }\n var nodeId = $(event.target).closest(\"li\").attr('id');\n var data = $.bcTree.jsTree.get_node(nodeId).data.jstree;\n if (data.type == 'default' || data.alias) {\n if ($.bcTree.settings[data.contentType] == undefined || !$.bcTree.settings[data.contentType].editDisabled) {\n if (!data.alias) {\n if ($.bcTree.settings[data.contentType] == undefined) {\n $.bcTree.openUrl($.bcTree.createLink($.baseUrl() + '/' + $.bcTree.config.baserCorePrefix + '/' + $.bcTree.config.adminPrefix + '/contents/edit', data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n if ($.bcTree.settings[data.contentType]['url']['dblclick'] !== undefined) {\n $.bcTree.openUrl($.bcTree.createLink($.bcTree.settings[data.contentType]['url']['dblclick'], data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n $.bcTree.openUrl($.bcTree.createLink($.bcTree.settings[data.contentType]['url']['edit'], data.contentId, data.contentParentId, data.contentEntityId));\n }\n }\n } else {\n $.bcTree.openUrl($.bcUtil.adminBaseUrl + 'baser-core' + '/contents/edit_alias/' + data.contentId);\n }\n }\n }\n });\n\n // コンテキストメニュー表示イベント\n $.bcTree.treeDom.on(\"show_contextmenu.jstree\", function () {\n $(\"ul.jstree-contextmenu li\").each(function () {\n if ($.bcTree.isAliasMenuByLabel($.trim($(this).text()))) {\n $(this).find('a i').after('');\n }\n if ($.bcTree.isAddMenuByLabel($.trim($(this).text()))) {\n $(this).find('a i').after('');\n }\n });\n });\n\n // フォルダ展開イベント\n $.bcTree.treeDom.on(\"after_open.jstree\", function (e) {\n $.bcTree.refreshTree();\n });\n\n // テキスト変更イベント\n // コンテンツ追加のリネーム時\n $.bcTree.treeDom.on(\"set_text.jstree\", function (e) {\n $.bcTree.refreshTree();\n });\n\n // ロード完了イベント\n $.bcTree.treeDom.on(\"ready.jstree\", function (e) {\n $.bcTree.treeDom.show();\n $.bcTree.refreshTree();\n });\n\n },\n\n /**\n * ツリーを破棄する\n */\n destroy: function () {\n if ($.bcTree.treeDom) {\n $.bcTree.treeDom.unbind(\"dblclick\");\n $.bcTree.treeDom.unbind(\"dblclick.jstree\");\n $.bcTree.treeDom.unbind(\"show_contextmenu.jstree\");\n $.bcTree.treeDom.unbind(\"after_open.jstree\");\n $.bcTree.treeDom.unbind(\"set_text.jstree\");\n $.bcTree.treeDom.unbind(\"ready.jstree\");\n $.bcTree.treeDom.remove();\n }\n $.bcTree.shiftOnAnchor = false;\n $.bcTree.ctrlOnAnchor = false;\n $.bcTree.contextmenuAddOnly = false;\n $.bcTree.settings = [];\n $.bcTree.dropTarget = null;\n $.bcTree.dragTarget = null;\n $.bcTree.treeDom = null;\n $.bcTree.jsTree = null;\n },\n\n /**\n * ツリー構造を生成する\n */\n createTree: function () {\n\n // ツリービュー生成\n $.bcTree.treeDom.jstree({\n 'core': {\n 'themes': {\n 'name': 'proton',\n \"stripes\": true,\n \"variant\": \"large\"\n },\n \"multiple\": false,\n \"force_text\": true,\n \"check_callback\": function (operation, node, node_parent, node_position, more) {\n if (operation == 'move_node') {\n if (node_parent.type == 'folder' && !node_parent.data.jstree.alias && !node.data.jstree.contentSiteRoot) {\n $.bcTree.dropTarget = node_parent;\n $.bcTree.dragTarget = node;\n return true;\n } else {\n $.bcTree.dropTarget = null;\n $.bcTree.dragTarget = null\n return false;\n }\n }\n }\n },\n \"plugins\": [\n \"dnd\",\n \"changed\",\n \"state\",\n \"wholerow\",\n \"contextmenu\",\n \"types\"\n ],\n \"dnd\": {\n \"large_drop_target\": true,\n \"is_draggable\" : function (nodes) {\n if (!$.bcTree.config.isUseMoveContents) {\n return false;\n }\n // 最上位のコンテンツは移動不可\n if (nodes[0].parents.length <= 1) {\n return false;\n }\n return true;\n },\n },\n \"types\": {\n \"default\": {},\n \"folder\": {}\n },\n \"state\": {\n \"key\": 'jstree-' + $.bcTree.currentSiteId,\n \"events\": \"open_all.jstree close_all.jstree changed.jstree open_node.jstree close_node.jstree check_node.jstree uncheck_node.jstree\"\n },\n \"contextmenu\": {\n \"show_at_node\": false,\n \"items\": function (node) {\n var maxContents = 6;\n var data = node.data.jstree;\n var mode = $(\"#viewsetting-mode\").val();\n var parent;\n if (data.type === 'folder' && !node.data.jstree.alias) {\n parent = node;\n } else {\n parent = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_parent(node));\n }\n\n var editDisabled = false;\n var manageDisabled = false;\n var editUrl = null;\n var manageUrl = null;\n var copyUrl = null;\n var isEnabled = false;\n\n if ($.bcTree.settings[data.contentType] !== undefined) {\n editDisabled = data.editDisabled;\n manageDisabled = data.manageDisabled;\n manageUrl = $.bcTree.settings[data.contentType]['url']['manage'];\n editUrl = $.bcTree.settings[data.contentType]['url']['edit'];\n copyUrl = $.bcTree.settings[data.contentType]['url']['copy'];\n isEnabled = true;\n }\n\n var menu = {};\n\n // 確認\n // - 公開されている\n // - URLがある\n if (isEnabled && data.status && data.contentFullUrl && !$.bcTree.contextmenuAddOnly && mode === 'index') {\n $.extend(true, menu, {\n \"view\": {\n label: bcI18n.bcTreeCheck,\n \"icon\": \"bca-icon--preview\",\n \"action\": function (obj) {\n $.bcTree.openUrl(data.contentFullUrl, true);\n }\n }\n });\n }\n\n // 公開・非公開\n // - サイトルートではない\n // - 関連データではない\n if (isEnabled && !$.bcTree.config.editInIndexDisabled && !editDisabled && !data.contentSiteRoot && mode === 'index' && !$.bcTree.contextmenuAddOnly && !data.related) {\n if (!data.status) {\n $.extend(true, menu, {\n \"publish\": {\n label: bcI18n.bcTreePublish,\n \"icon\": \"bca-icon--publish\",\n \"action\": function (obj) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/change_status.json',\n type: 'PATCH',\n data: {\n id: data.contentId,\n status: 'publish',\n type: data.contentType,\n siteId: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.status = true;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n });\n } else if (data.status) {\n $.extend(true, menu, {\n \"unpublish\": {\n label: bcI18n.bcTreeUnpublish,\n \"icon\": \"bca-icon--unpublish\",\n \"action\": function (obj) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/change_status.json',\n type: 'PATCH',\n data: {\n id: data.contentId,\n status: 'unpublish',\n type: data.contentType,\n siteId: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.status = false;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonChangePublishFailedMessage, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n });\n }\n }\n\n // 管理\n // - 管理権限あり\n // - 管理機能サポート\n // - エイリアスではない\n if (!manageDisabled && !$.bcTree.contextmenuAddOnly && manageUrl && mode === 'index' && !data.alias) {\n $.extend(true, menu, {\n \"manage\": {\n label: bcI18n.bcTreeManage,\n \"icon\": \"bca-icon--th-list\",\n \"action\": function (obj) {\n $.bcTree.openUrl($.bcTree.createLink(manageUrl, data.contentId, data.contentParentId, data.contentEntityId));\n }\n }\n });\n }\n\n // 名称変更\n // - 編集権限あり\n // - サイトルートでない\n // − サイト関連データでない\n if (isEnabled && !$.bcTree.config.editInIndexDisabled && !editDisabled && !$.bcTree.contextmenuAddOnly && !data.contentSiteRoot && mode === 'index' && !data.related) {\n $.extend(true, menu, {\n \"rename\": {\n label: bcI18n.bcTreeRename,\n \"icon\": \"bca-icon--rename\",\n \"action\": function (obj) {\n $.bcTree.renameContent(node, node.text);\n }\n }\n });\n }\n\n // 編集\n // - 編集権限あり\n if (isEnabled && !editDisabled && !$.bcTree.contextmenuAddOnly && mode === 'index') {\n $.extend(true, menu, {\n \"edit\": {\n label: bcI18n.bcTreeEdit,\n \"icon\": \"bca-icon--edit\",\n \"action\": function (obj) {\n if (!node.data.jstree.alias) {\n $.bcTree.openUrl($.bcTree.createLink(editUrl, data.contentId, data.contentParentId, data.contentEntityId));\n } else {\n $.bcTree.openUrl($.bcUtil.adminBaseUrl + 'baser-core' + '/contents/edit_alias/' + data.contentId);\n }\n }\n }\n });\n }\n\n // コピー\n // - 編集権限あり\n // - フォルダーでない\n // - コピー機能サポート\n if (!editDisabled && !$.bcTree.contextmenuAddOnly && data.contentType !== 'ContentFolder' && !data.alias && copyUrl && mode === 'index') {\n $.extend(true, menu, {\n \"copy\": {\n label: bcI18n.bcTreeCopy,\n \"icon\": \"bca-icon--copy\",\n \"action\": function (obj) {\n $.bcTree.copyContent(parent, node);\n }\n }\n });\n }\n var deleteLabel;\n if (data.alias) {\n deleteLabel = bcI18n.bcTreeDelete;\n } else {\n deleteLabel = bcI18n.bcTreeToTrash;\n }\n\n // 削除\n // - 編集権限あり\n // - サイトルートでない\n if (!$.bcTree.config.editInIndexDisabled && !editDisabled && !data.deleteDisabled && !$.bcTree.contextmenuAddOnly && !data.contentSiteRoot && mode === 'index') {\n $.extend(true, menu, {\n \"delete\": {\n label: deleteLabel,\n \"icon\": \"bca-icon--delete\",\n \"action\": function (obj) {\n var message = bcI18n.bcTreeConfirmToTrash;\n if (data.alias) {\n message = bcI18n.bcTreeConfirmDeleteAlias;\n }\n if (confirm(message)) {\n $.bcTree.deleteContent(node);\n }\n }\n }\n });\n }\n if (mode === 'trash') {\n $.extend(true, menu, {\n \"return\": {\n _disabled: editDisabled,\n label: bcI18n.bcTreeUndo,\n \"icon\": \"bca-icon--undo\",\n \"action\": function (obj) {\n if (data.alias) {\n $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/exists/' + data.contentAliasId + '.json',\n type: 'GET',\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n }).done(function (result) {\n if (result.exists) {\n $.bcTree.returnContent(node);\n } else {\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage1);\n }\n });\n } else {\n $.bcTree.returnContent(node);\n }\n }\n },\n \"empty\": {\n _disabled: !$.bcTree.config.isAdmin,\n label: bcI18n.bcTreeEmptyTrash,\n \"icon\": \"bca-icon--ban\",\n \"action\": function (obj) {\n if (confirm(bcI18n.bcTreeConfirmMessage1)) {\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/trash_empty.json',\n type: 'DELETE',\n dataType: 'json',\n data: {\n empty: true,\n _csrfToken: $.bcToken.key,\n },\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n if (result) {\n var nodes = [];\n $(\"li.jstree-node\").each(function (i) {\n nodes.push($.bcTree.jsTree.get_node(this));\n });\n $.bcTree.jsTree.delete_node(nodes);\n $.bcUtil.showNoticeMessage(result.message);\n $(\"#DataList\").html('
' + bcI18n.bcTreeInfoMessage1 + '
');\n }\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage2, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n });\n }, {hideLoader: false});\n }\n }\n }\n });\n }\n\n var settings = $.extend(true, {}, $.bcTree.settings);\n\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n\n if (mode === 'index') {\n var addMenu = {};\n var counter = 1;\n\n $.each(settings, function (i, val) {\n if (counter === maxContents + 1) {\n addMenu['Etc'] = {\n \"separator_before\": false,\n \"separator_after\": false,\n \"label\": \"その他...\",\n \"submenu\": {}\n }\n }\n if (counter <= maxContents) {\n if (!val.addDisabled) {\n addMenu[i] = $.bcTree.createMenu(val, parent, data, counter);\n }\n } else {\n if (!val.addDisabled) {\n addMenu['Etc']['submenu'][i] = $.bcTree.createMenu(val, parent, data, counter);\n }\n }\n counter++;\n });\n $.extend(true, menu, addMenu);\n }\n return menu;\n }\n }\n });\n },\n\n /**\n * メニューのラベルから登録メニューかどうかをチェックする\n *\n * @param name\n * @returns {boolean}\n */\n isAddMenuByLabel: function (name) {\n var node = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_selected());\n var settings = $.extend(true, {}, $.bcTree.settings);\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n var counter = 1;\n var result = false;\n $.each(settings, function (i) {\n if (name == counter + '.' + this.title) {\n result = true;\n }\n counter++;\n });\n return result;\n },\n\n /**\n * メニューのラベルからエイリアスかどうかをチェックする\n *\n * @param name\n * @returns {boolean}\n */\n isAliasMenuByLabel: function (name) {\n var node = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_selected());\n var settings = $.extend(true, {}, $.bcTree.settings);\n delete settings.Default;\n if (node.data.jstree.alias) {\n delete settings.ContentAlias;\n }\n var counter = 1;\n var result = false;\n $.each(settings, function (i) {\n if (i == 'Default') {\n return true;\n }\n if (node.data.jstree.alias && i == 'ContentLink') {\n return true;\n }\n if (name == counter + '.' + this.title && !this.multiple && this.exists) {\n result = true;\n }\n counter++;\n });\n return result;\n },\n\n /**\n * ツリーを更新する\n */\n refreshTree: function (disableCheck) {\n if (disableCheck === undefined) {\n disableCheck = false;\n }\n var treeData = $.bcTree.jsTree.get_json('#', {flat: true});\n sort = 1;\n // 並び順を特定する番号を更新する\n $(treeData).each(function () {\n var node = $.bcTree.jsTree.get_node(this.id);\n node.data.jstree.sort = sort;\n sort++;\n });\n // 公開状態によってカラーリングを更新する\n $(\"li.jstree-node\").each(function (i) {\n var node = $.bcTree.jsTree.get_node(this);\n // =====================================================================================================\n // コンテンツをドラッグ&ドロップした際に、階層が変更となると、フロントエンドの確認を行う為のURLの更新も行う必要がある。\n // 現在、対象コンテンツは更新されるが、フォルダの場合、子のコンテンツのURLが更新できていない為、\n // 確認ボタンをクリックするとNot Found となる。そのため一時的な対策として、確認ボタンを無効にする\n // TODO D&Dの際、子コンテンツのURLを返却し全てのコンテンツの確認ができるようにする\n // =====================================================================================================\n if (disableCheck) {\n node.data.jstree.contentFullUrl = false;\n }\n\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).removeClass('jstree-unpublish-odd jstree-unpublish-even jstree-publish-odd jstree-publish-even');\n return false;\n });\n if (node.data.jstree.status == false) {\n if (i % 2 == 0) {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-unpublish-odd');\n return false;\n });\n } else {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-unpublish-even');\n return false;\n });\n }\n } else {\n if (i % 2 == 0) {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-publish-odd');\n return false;\n });\n } else {\n $(this).find('div.jstree-wholerow').each(function () {\n $(this).addClass('jstree-publish-even');\n return false;\n });\n }\n }\n if (node.data.jstree.alias) {\n $(this).find('a i.jstree-icon:first').after('');\n }\n $(this).find('a.jstree-anchor:first').after('');\n $(this).find('.content-name').remove();\n if (node.data.jstree.name) {\n $(this).find('a.jstree-anchor:first').after('( ' + decodeURIComponent(node.data.jstree.name) + ' )')\n }\n });\n $(\"span.function\").on('click', function (e) {\n $.bcTree.jsTree.deselect_all();\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_node($(this).parent().attr('id')));\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n return false;\n });\n $(\"span.function\").on('contextmenu', function (e) {\n $.bcTree.jsTree.deselect_all();\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_node($(this).parent().attr('id')));\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n return false;\n });\n if ($.bcTree.config.isUseMoveContents) {\n $(\".jstree-icon\").css('cursor', 'move');\n }\n },\n\n /**\n * ゴミ箱から元にもどす\n *\n * @param node\n */\n returnContent: function (node) {\n $.bcToken.check(function () {\n return $(location).prop('href', $.bcUtil.adminBaseUrl + 'baser-core' + '/contents/trash_return/' + node.data.jstree.contentId);\n }, {hideLoader: false});\n },\n\n /**\n * Open Url\n *\n * @param url\n * @param forceBlank\n */\n openUrl: function (url, forceBlank) {\n forceBlank = forceBlank === undefined ? false : forceBlank;\n if ($.bcTree.ctrlOnAnchor || forceBlank) {\n window.open(url);\n } else if ($.bcTree.shiftOnAnchor) {\n window.open(url, '_blank');\n } else {\n window.location.href = url;\n }\n },\n\n /**\n * Create Menu\n *\n * @param setting\n * @param parent\n * @returns {{label: string, icon: string, action: function}}\n */\n createMenu: function (setting, parent, current, i) {\n var type = 'default';\n var contentAliasId = null;\n var contentTitle = bcI18n.bcTreeNewTitle.sprintf(setting.title);\n var contentPlugin = setting.plugin;\n var contentType = setting.type;\n var contentEntityId = null;\n var iconAdd;\n var iconMenu;\n if (setting.url.icon) {\n iconAdd = iconMenu = setting.url.icon;\n } else {\n iconAdd = iconMenu = setting.icon;\n }\n if (setting.type == 'ContentFolder') {\n var separatorBefore = true;\n type = 'folder';\n } else if (setting.type == 'ContentLink') {\n var separatorAfter = true;\n } else if (setting.type == 'ContentAlias') {\n iconAdd = current.icon;\n contentAliasId = current.contentId;\n contentPlugin = current.contentPlugin;\n contentType = current.contentType;\n contentTitle = bcI18n.bcTreeAliasTitle.sprintf(current.contentTitle);\n contentEntityId = current.contentEntityId;\n } else {\n if ((!setting['multiple'] && setting['exists'])) {\n contentTitle = bcI18n.bcTreeAliasTitle.sprintf(setting['existsTitle']);\n }\n }\n\n return {\n label: \"\" + i + \".\" + setting.title,\n icon: iconMenu,\n separator_before: separatorBefore,\n separator_after: separatorAfter,\n action: function () {\n $.bcTree.createContent(parent, {\n type: type,\n icon: iconAdd,\n contentParentId: parent.data.jstree.contentId,\n contentTitle: contentTitle,\n contentPlugin: contentPlugin,\n contentType: contentType,\n contentSiteId: parent.data.jstree.contentSiteId,\n contentAliasId: contentAliasId,\n contentEntityId: contentEntityId\n });\n }\n };\n },\n\n /**\n * Create Content\n *\n * @param parent\n * @param data\n */\n createContent: function (parent, data) {\n var _data = {\n icon: null,\n type: 'default',\n status: false,\n contentId: null,\n contentParentId: null,\n contentTitle: bcI18n.bcTreeUnNamedTitle,\n contentPlugin: null,\n contentType: null,\n contentEntityId: null,\n contentFullUrl: null,\n contentSiteId: null,\n contentAliasId: null\n };\n $.extend(true, _data, data);\n data = _data;\n var url = '';\n // シングルコンテンツでデータが既に存在する場合 エイリアス作成の場合\n if ((!$.bcTree.settings[data.contentType]['multiple'] && $.bcTree.settings[data.contentType]['exists']) || data.contentAliasId) {\n url = $.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/add_alias.json';\n data.alias = true;\n } else {\n url = $.bcTree.settings[data.contentType]['url']['add'];\n }\n var nodeId = $.bcTree.jsTree.create_node(parent, {\n text: data.contentTitle,\n data: {jstree: data}\n });\n var node = $.bcTree.jsTree.get_node(nodeId);\n $.bcTree.jsTree.edit(node, data.contentTitle, function (editNode) {\n $.bcToken.check(function () {\n const content = {\n parent_id: data.contentParentId,\n title: editNode.text,\n plugin: data.contentPlugin,\n type: data.contentType,\n site_id: data.contentSiteId,\n alias_id: data.contentAliasId,\n entity_id: data.contentEntityId\n };\n return $.ajax({\n url: url,\n type: 'POST',\n data: {\n _csrfToken: $.bcToken.key,\n content: content,\n },\n dataType: 'json',\n beforeSend: function () {\n this.data = $.bcTree.fillExtraData(this.data, data);\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.showNoticeMessage(result.message);\n $.bcTree.settings[data.contentType]['exists'] = true;\n $.bcTree.settings[data.contentType]['existsTitle'] = editNode.text;\n data.contentId = result.content.id;\n data.contentEntityId = result.content.entity_id;\n data.name = decodeURIComponent(result.content.name);\n node.data.jstree = data;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage6, XMLHttpRequest);\n $.bcTree.jsTree.delete_node(node);\n $.bcUtil.hideLoader();\n }\n }).then(function () {\n return $.bcUtil.ajax($.bcUtil.apiAdminBaseUrl + 'baser-core' + '/contents/get_full_url/' + data.contentId + '.json', {}, {\n type: 'GET',\n dataType: 'json'\n }).done(function (result) {\n data.contentFullUrl = decodeURI(result.fullUrl);\n node.data.jstree = data;\n if (data.contentType == 'ContentFolder') {\n node.type = 'folder'\n }\n });\n });\n }\n , {hideLoader: false});\n });\n },\n /**\n * ポスト用のデータにコンテンツの種類に基づいた不足データを追加する\n *\n * @param postData 送信用データ\n * @param settingData 保持してるデータ\n */\n fillExtraData: function (postData, settingData) {\n const extra = (() => {\n switch (settingData.contentType) {\n case \"ContentFolder\":\n return {\n folder_template: \"\",\n page_template: \"\"\n };\n case \"Page\":\n return {\n contents: \"\",\n draft: \"\",\n page_template: \"\",\n code: \"\"\n };\n default:\n break;\n }\n })();\n if (extra) {\n postData += '&' + encodeURI($.param(extra));\n }\n return postData;\n },\n\n /**\n * Delete Content\n *\n * @param node\n */\n deleteContent: function (node) {\n var data = node.data.jstree;\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/delete/' + data.contentId + '.json',\n type: 'POST',\n data: {\n id: data.contentId,\n entity_id: data.contentEntityId,\n alias: data.alias,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcUtil.showNoticeMessage(result.message);\n $.bcToken.key = null;\n $.bcTree.jsTree.delete_node(node);\n // エイリアス削除\n var nodes = $.bcTree.jsTree.get_json(null, {flat: true});\n for (var i = 0; i < nodes.length; i++) {\n if (data.contentId == nodes[i].state.contentAliasId) {\n $.bcTree.jsTree.delete_node(nodes[i]);\n }\n }\n $.bcTree.refreshTree();\n $.bcUtil.hideLoader();\n },\n error: function (XMLHttpRequest) {\n $.bcToken.key = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage4, XMLHttpRequest);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * Copy Content\n *\n * @param parent\n * @param node\n */\n copyContent: function (parent, node) {\n var data = $.extend(true, {}, node.data.jstree);\n data.status = false;\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcTree.settings[data.contentType]['url']['copy'],\n type: 'POST',\n data: {\n content_id: data.contentId,\n entity_id: data.contentEntityId,\n title: data.contentTitle,\n parent_id: data.contentParentId,\n site_id: data.contentSiteId,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n $.bcToken.key = null;\n $.bcTree.settings[data.contentType]['exists'] = true;\n $.bcTree.settings[data.contentType]['existsTitle'] = data.contentTitle;\n data.contentId = result.content.id;\n data.name = result.content.name;\n data.contentEntityId = result.content.entity_id;\n data.contentTitle = result.content.title;\n data.contentTitle = data.contentTitle.replace(/&/g, '&')\n .replace(/\"/g, '"')\n .replace(/'/g, ''')\n .replace(//g, '>');\n $.ajax($.bcUtil.apiAdminBaseUrl + 'baser-core/contents/get_full_url/' + data.contentId + '.json', {\n type: 'GET',\n dataType: 'json'\n }).done(function (result) {\n data.contentFullUrl = result.fullUrl;\n var nodeId = $.bcTree.jsTree.create_node(parent, {\n text: data.contentTitle,\n data: {jstree: data}\n });\n var newNode = $.bcTree.jsTree.get_node(nodeId);\n newNode.data.jstree = data;\n if (data.contentType === 'ContentFolder') {\n newNode.type = 'folder'\n }\n $.bcUtil.hideLoader();\n $.bcTree.renameContent(newNode, data.contentTitle, true);\n });\n },\n error: function (XMLHttpRequest) {\n $.bcToken.key = null;\n $.bcUtil.showAjaxError(bcI18n.commonCopyFailedMessage, XMLHttpRequest);\n $.bcUtil.hideLoader();\n }\n });\n }, {useUpdate: false, hideLoader: false});\n },\n\n /**\n * Rename Content\n *\n * @param node\n * @param defaultTitle 初期タイトル\n * @param first 新規登録時の初回リネームかどうか\n */\n renameContent: function (node, defaultTitle, first) {\n if (first === undefined) {\n first = false;\n }\n var oldTitle = defaultTitle;\n $.bcTree.jsTree.edit(node, oldTitle, function (editNode) {\n var newTitle = editNode.text;\n $.bcTree.jsTree.rename_node(editNode, newTitle);\n if (oldTitle === newTitle) {\n return false;\n }\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/rename.json',\n type: 'PATCH',\n dataType: 'json',\n data: {\n id: node.data.jstree.contentId,\n title: newTitle,\n first: +first, // 0 Or 1 に変換\n _csrfToken: $.bcToken.key,\n },\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n if (!result) {\n $.bcUtil.showNoticeMessage(result.message);\n }\n $.bcTree.settings[node.data.jstree.contentType]['existsTitle'] = editNode.text;\n editNode.data.jstree.contentFullUrl = result.url;\n editNode.data.jstree.name = result.name;\n $.bcTree.refreshTree();\n },\n error: function (XMLHttpRequest) {\n $.bcTree.jsTree.rename_node(editNode, defaultTitle);\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.bcTreeAlertMessage5, XMLHttpRequest);\n },\n complete: function () {\n $.bcUtil.hideLoader();\n }\n })\n }, {hideLoader: false});\n });\n },\n\n /**\n * Create Link\n *\n * @param base\n * @param contentParentId\n * @param contentEntityId\n * @returns string\n */\n createLink: function (base, contentId, contentParentId, contentEntityId) {\n var url = base;\n if (contentEntityId) {\n url += '/' + contentEntityId;\n }\n if (contentId) {\n url += '/content_id:' + contentId;\n }\n if (contentParentId) {\n url += '/parent_id:' + contentParentId;\n }\n return url;\n },\n\n /**\n * コンテンツを並び替える\n *\n * @param e\n * @param data\n */\n orderContent: function (e, data) {\n $.bcTree.changeNormalCursor();\n var cancel = false;\n var node = $.bcTree.jsTree.get_node(data.element);\n if (!node) {\n node = $.bcTree.dragTarget;\n }\n if (!node) {\n cancel = true;\n }\n var oldSort = node.data.jstree.sort;\n $.bcTree.refreshTree();\n var newSort = node.data.jstree.sort;\n var offset = newSort - oldSort;\n if (offset == 0) {\n if (!$.bcTree.dropTarget) {\n cancel = true;\n }\n if (node.data.jstree.contentParentId == $.bcTree.dropTarget.data.jstree.contentId) {\n cancel = true;\n }\n }\n\n if (cancel || !confirm(bcI18n.commonSortSaveConfirmMessage)) {\n // コンテンツを別のフォルダに移動するか、コンテンツを上から下に移動\n if (node.parent != $.bcTree.beforeParentId || offset >= 0) {\n $.bcTree.jsTree.move_node(node, $.bcTree.beforeParentId, $.bcTree.beforePosition);\n // コンテンツを下から上に移動\n } else {\n $.bcTree.jsTree.move_node(node, $.bcTree.beforeParentId, $.bcTree.beforePosition + 1);\n }\n $.bcTree.refreshTree();\n return false;\n }\n\n if ($.bcTree.dropTarget) {\n $.bcTree.jsTree.open_node($.bcTree.dropTarget);\n }\n\n var nextNode = $.bcTree.jsTree.get_node($.bcTree.jsTree.get_next_dom(node, true));\n var targetId = null;\n if (nextNode) {\n targetId = nextNode.data.jstree.contentId;\n }\n $.bcToken.check(function () {\n return $.ajax({\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/contents/move.json',\n type: 'PATCH',\n data: {\n origin: {\n id: node.data.jstree.contentId,\n parentId: node.data.jstree.contentParentId,\n type: node.data.jstree.contentType,\n entityId: node.data.jstree.contentEntityId,\n },\n target: {\n id: targetId,\n parentId: $.bcTree.dropTarget.data.jstree.contentId,\n siteId: $.bcTree.dropTarget.data.jstree.contentSiteId,\n },\n listDisplayed: $.bcTree.listDisplayed,\n _csrfToken: $.bcToken.key,\n },\n dataType: 'json',\n beforeSend: function () {\n $.bcUtil.hideMessage();\n $.bcUtil.showLoader();\n },\n success: function (result) {\n node.data.jstree.contentFullUrl = result.url;\n $.bcTree.refreshTree(true);\n node.data.jstree.contentParentId = $.bcTree.dropTarget.data.jstree.contentId;\n $.bcUtil.showNoticeMessage(result.message);\n $.bcUtil.hideLoader();\n },\n error: function (XMLHttpRequest) {\n XMLHttpRequest.responseText = null;\n $.bcUtil.showAjaxError(bcI18n.commonSortSaveFailedMessage, XMLHttpRequest);\n $.bcTree.load();\n },\n complete: function () {\n }\n });\n }, {hideLoader: false});\n },\n\n /**\n * 外部よりメニューを表示する\n *\n * @param e\n * @returns {boolean}\n */\n showMenuByOuter: function (e) {\n $.bcTree.contextmenuAddOnly = true;\n var selected = $.bcTree.jsTree.get_selected();\n if (!selected.length) {\n $.bcTree.jsTree.select_node($.bcTree.jsTree.get_json());\n }\n $.bcTree.jsTree.show_contextmenu($.bcTree.jsTree.get_selected(), e.pageX, e.pageY);\n $.bcTree.contextmenuAddOnly = false;\n return false;\n },\n\n /**\n * Shift / Ctrl キーの押印状態を更新する\n *\n * @param e\n */\n updateShiftAndCtrlOnAnchor: function (e) {\n $.bcTree.shiftOnAnchor = e.shiftKey;\n $.bcTree.ctrlOnAnchor = (e.ctrlKey || e.metaKey);\n },\n\n changeDnDCursor: function () {\n $(\"#ContentsTreeList .jstree-wholerow\").css('cursor', 'move');\n $(\"#ContentsTreeList .jstree-anchor\").css('cursor', 'move');\n $(\"#ContentsTreeList .function\").css('cursor', 'move');\n $(\"#ContentsTreeList .jstree-ocl\").css('cursor', 'move');\n },\n\n changeNormalCursor: function () {\n $(\"#ContentsTreeList .jstree-wholerow\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .jstree-anchor\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .function\").css('cursor', 'pointer');\n $(\"#ContentsTreeList .jstree-ocl\").css('cursor', 'pointer');\n }\n\n };\n})(jQuery);\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n\n/**\n * サイドバーのコンテンツメニューを設定する\n */\nwindow.addEventListener('DOMContentLoaded', function () {\n\tvar componentId = 'AdminMenu';\n\tvar tmpl = document.querySelector('[data-js-tmpl=\"' + componentId + '\"]');\n\tvar dataStore = document.getElementById(componentId);\n\tvar data = null;\n\ttry {\n\t\tdata = JSON.parse(dataStore ? dataStore.textContent : '{}');\n\t} catch (error) {\n\t\tif (window.console) {\n\t\t\tconsole.warn('管理メニューのデータが破損しています(JSONデータが不正です)')\n\t\t}\n\t}\n\n\tif (tmpl && data && data.menuList && data.menuList.length) {\n\n\t\tvar contentList = [];\n\t\tvar systemList = [];\n\n\t\tdata.menuList.forEach(function (item, i) {\n\t\t\tif (item.type === 'system') {\n\t\t\t\t//item.menus = item.menus.filter(function (menu) { return menu.url !== item.url });\n\t\t\t\tsystemList.push(item);\n\t\t\t} else {\n\t\t\t\tcontentList.push(item);\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * for deubg\n\t\t */\n\t\t// console.log($.extend(true, {}, contentList));\n\t\t// console.log($.extend(true, {}, systemList));\n\n\t\ttmpl.hidden = false;\n\t\tvar isSystemSettingPage = systemList.some(function (item) { return (item.current || item.expanded); });\n\t\tvar app = new Vue({\n\t\t\tel: tmpl,\n\t\t\tdata: {\n\t\t\t\tsystemExpanded: isSystemSettingPage,\n\t\t\t\tbaseURL: $.baseUrl(),\n\t\t\t\tcurrentSiteId: data.currentSiteId,\n\t\t\t\tcontentList: contentList,\n\t\t\t\tisSystemSettingPage: isSystemSettingPage,\n\t\t\t\tsystemList: systemList,\n\t\t\t\tavailableVersions: null,\n\t\t\t\tuseUpdateNotice: data.useUpdateNotice\n\t\t\t},\n mounted() {\n if(!this.useUpdateNotice) return;\n $.get($.bcUtil.apiAdminBaseUrl + 'baser-core/plugins/get_available_core_version_info.json', function (response){\n if(response.availableCoreVersionInfo !== undefined) {\n app.availableVersions = Object.keys(response.availableCoreVersionInfo.versions).length;\n }\n });\n },\n\t\t\tmethods: {\n\t\t\t\topenSystem () {\n\t\t\t\t\tapp.systemExpanded = !app.systemExpanded;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t} else {\n\n\t\tif (window.console) {\n\t\t\tconsole.warn('データが空のため、管理メニューは表示されませんでした');\n\t\t}\n\n\t}\n\n});\n\n","/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\nimport Cookies from 'js-cookie'\n\n(function ($) {\n $.bcUtil = {\n /**\n * hideMessage() を無効にする\n */\n disabledHideMessage: false,\n\n\n /**\n * ベースとなるURL\n */\n baseUrl: null,\n\n /**\n * BaserCoreプレフィックス\n */\n baserCorePrefix: null,\n\n /**\n * 管理画面用URLプレフィックス\n */\n adminPrefix: null,\n\n /**\n * 管理画面用のベースURL\n */\n adminBaseUrl: null,\n\n /**\n * API用のベースURL\n */\n apiBaseUrl: null,\n\n /**\n * 管理画面用APIのベースURL\n */\n apiAdminBaseUrl: null,\n\n /**\n * Ajaxローダーのパス\n */\n ajaxLoaderPath: null,\n\n /**\n * Ajaxローダー(小)のパス\n */\n ajaxLoaderSmallPath: null,\n\n /**\n * 初期化\n *\n * @param config\n */\n init: function (config) {\n if(config === undefined) config = {};\n var adminScript = $(\"#AdminScript\");\n $.bcUtil.baseUrl = adminScript.attr('data-baseUrl');\n $.bcUtil.baserCorePrefix = adminScript.attr('data-baserCorePrefix');\n $.bcUtil.adminPrefix = adminScript.attr('data-adminPrefix');\n $.bcUtil.ajaxLoaderPath = adminScript.attr('data-ajaxLoaderPath');\n $.bcUtil.ajaxLoaderSmallPath = adminScript.attr('data-ajaxLoaderSmallPath');\n $.bcUtil.frontFullUrl = adminScript.attr('data-frontFullUrl');\n if (config.baseUrl !== undefined) {\n $.bcUtil.baseUrl = config.baseUrl;\n }\n if (config.baserCorePrefix !== undefined) {\n $.bcUtil.baserCorePrefix = config.baserCorePrefix;\n }\n if (config.adminPrefix !== undefined) {\n $.bcUtil.adminPrefix = config.adminPrefix;\n }\n if (config.ajaxLoaderPath !== undefined) {\n $.bcUtil.ajaxLoaderPath = config.ajaxLoaderPath;\n }\n if (config.ajaxLoaderSmallPath !== undefined) {\n $.bcUtil.ajaxLoaderSmallPath = config.ajaxLoaderSmallPath;\n }\n $.bcUtil.adminBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/' + $.bcUtil.adminPrefix + '/';\n $.bcUtil.apiBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/api/';\n $.bcUtil.apiAdminBaseUrl = $.bcUtil.baseUrl + '/' + $.bcUtil.baserCorePrefix + '/api/admin/';\n this.setUpTextCounter();\n },\n\n /**\n * アラートメッセージを表示\n *\n * @param message\n */\n showAlertMessage: function (message) {\n $.bcUtil.hideMessage();\n $(\"#BcSystemMessage\")\n .removeClass('notice-messge alert-message')\n .addClass('alert-message')\n .html(message);\n $(\"#BcMessageBox\").fadeIn(500);\n },\n\n /**\n * ノーティスメッセージを表示\n *\n * @param message\n */\n showNoticeMessage: function (message) {\n $.bcUtil.hideMessage();\n $(\"#BcSystemMessage\")\n .removeClass('notice-messge alert-message')\n .addClass('notice-message')\n .html(message);\n $(\"#BcMessageBox\").fadeIn(500);\n },\n\n /**\n * メッセージを隠す\n */\n hideMessage: function () {\n if (!$.bcUtil.disabledHideMessage) {\n $(\"#BcMessageBox\").fadeOut(200);\n $(\"#AlertMessage\").fadeOut(200);\n $(\"#MessageBox\").fadeOut(200);\n }\n },\n\n /**\n * ローダーを表示\n */\n showLoader: function (type, selector, key) {\n if (type == undefined || (type != 'none' && selector == undefined)) {\n type = 'over';\n }\n switch (type) {\n case 'over':\n $(\"#Waiting\").show();\n break;\n case 'inner':\n var div = $('
').css({'text-align': 'center'}).attr('id', key);\n var img = $('').attr('src', $.bcUtil.ajaxLoaderPath);\n div.html(img);\n $(selector).html(div);\n break;\n case 'after':\n var img = $('').attr('src', $.bcUtil.ajaxLoaderSmallPath).attr('id', key).css({\n 'width':'16px',\n 'vertical-align': 'middle',\n 'margin':'5px'\n });\n $(selector).after(img);\n break;\n case 'target':\n $(selector).show();\n break;\n case 'none':\n break;\n }\n },\n\n /**\n * ローダーを隠す\n */\n hideLoader: function (type, selector, key) {\n if (type == undefined || (type != 'none' && selector == undefined)) {\n type = 'over';\n }\n switch (type) {\n case 'over':\n $(\"#Waiting\").hide();\n break;\n case 'inner':\n $(\"#\" + key).remove();\n break;\n case 'after':\n $(\"#\" + key).remove();\n break;\n case 'target':\n $(selector).show();\n break;\n case 'none':\n break;\n }\n },\n\n /**\n * Ajax\n */\n ajax: function (url, success, config) {\n if (!config) {\n config = {};\n }\n var loaderType, loaderSelector, loaderKey;\n var hideLoader = true;\n if (typeof config.loaderType !== 'undefined') {\n loaderType = config.loaderType;\n delete config.loaderType;\n }\n if (typeof config.loaderSelector !== 'undefined') {\n loaderSelector = config.loaderSelector;\n delete config.loaderSelector;\n loaderKey = loaderSelector.replace(/\\./g, '').replace(/#/g, '').replace(/\\s/g, '') + 'loaderkey';\n }\n if (typeof config.hideLoader !== 'undefined') {\n hideLoader = config.hideLoader;\n delete config.loaderType;\n }\n var ajaxConfig = {\n url: url,\n type: 'POST',\n dataType: 'html',\n beforeSend: function () {\n $.bcUtil.showLoader(loaderType, loaderSelector, loaderKey);\n },\n complete: function () {\n if (hideLoader) {\n $.bcUtil.hideLoader(loaderType, loaderSelector, loaderKey);\n }\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n $.bcUtil.showAjaxError(bcI18n.commonExecFailedMessage, XMLHttpRequest, errorThrown);\n },\n success: success\n };\n if (config) {\n $.extend(ajaxConfig, config);\n }\n return $.ajax(ajaxConfig);\n },\n\n /**\n * Ajax のエラーメッセージを表示\n *\n * @param XMLHttpRequest\n * @param errorThrown\n * @param message\n */\n showAjaxError: function (message, XMLHttpRequest, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest !== undefined && XMLHttpRequest.status) {\n errorMessage = '
(' + XMLHttpRequest.status + ') ';\n }\n if(XMLHttpRequest !== undefined && XMLHttpRequest.responseJSON){\n errorMessage += XMLHttpRequest.responseJSON.message;\n }\n if (XMLHttpRequest !== undefined && XMLHttpRequest.responseText) {\n errorMessage += '
' + XMLHttpRequest.responseText;\n } else if (errorThrown !== undefined) {\n errorMessage += '
' + errorThrown;\n }\n $.bcUtil.showAlertMessage(message + errorMessage);\n },\n\n /**\n * APIのエラーメッセージを表示\n * @param response\n */\n showApiError: function (response) {\n let message = response.responseJSON.message;\n let errors = response.responseJSON.errors;\n if(errors !== undefined) {\n message += \"
\";\n Object.keys(errors).forEach(function (key) {\n message += \"
    \"\n Object.keys(errors[key]).forEach(function (index) {\n message += \"
  • \" + errors[key][index] + \"
  • \";\n });\n message += \"
\"\n });\n }\n $.bcUtil.showAlertMessage(message);\n },\n\n /**\n * フラッシュメッセージをセットする\n *\n * 一度しか表示できないメッセージ\n * @param message\n */\n setFlashMessage: function(message) {\n Cookies.set('bcFlashMessage', message);\n },\n\n /**\n * フラッシュメッセージを表示する\n *\n * 一度表示したら削除する\n */\n showFlashMessage: function () {\n let message = Cookies.get('bcFlashMessage');\n if(message !== undefined) {\n this.showNoticeMessage(message);\n Cookies.remove('bcFlashMessage')\n }\n },\n\n /**\n * ツールチップを初期化する\n *\n * @param config\n */\n initTooltip: function(config) {\n let btConfig = {\n target: '.bca-help',\n content: '.bca-helptext'\n };\n if(config !== undefined) {\n $.extend(btConfig, config);\n }\n let $help = $(btConfig.target);\n if ($help.bt) {\n $(btConfig.content).css('display', 'none');\n $.bt.options.closeWhenOthersOpen = true;\n $help.bt({\n trigger: 'click',\n positions: 'top',\n shadow: true,\n shadowOffsetX: 1,\n shadowOffsetY: 1,\n shadowBlur: 8,\n shadowColor: 'rgba(101,101,101,.6)',\n shadowOverlap: false,\n noShadowOpts: {\n strokeStyle: '#999',\n strokeWidth: 1\n },\n width: '600px',\n /*shrinkToFit: true,*/\n spikeLength: 12,\n spikeGirth: 18,\n padding: 20,\n cornerRadius: 0,\n strokeWidth: 1, /*no stroke*/\n strokeStyle: '#656565',\n fill: 'rgba(255, 255, 255, 1.00)',\n cssStyles: {\n fontSize: '14px'\n },\n showTip: function (box) {\n $(box).fadeIn(200);\n },\n hideTip: function (box, callback) {\n $(box).animate({\n opacity: 0\n }, 100, callback);\n },\n contentSelector: `$(this).next('${btConfig.content}').html()`\n });\n }\n },\n\n /**\n * テキストカウンターをセットアップする\n */\n setUpTextCounter(selector) {\n if(selector === undefined) {\n selector = \".bca-text-counter\";\n }\n const $textCounter = $(selector);\n $textCounter.after('');\n $textCounter.keyup(function (){\n var len = $(this).val().length;\n var maxlen = $(this).attr('maxlength');\n if(!maxlen || maxlen === -1){\n maxlen = '-';\n }\n $(this).next().html(len+' /'+maxlen+'');\n });\n $textCounter.keyup();\n },\n\n };\n})(jQuery);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.j = 3207;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t3207: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkbc_admin_third\"] = self[\"webpackChunkbc_admin_third\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [5000], () => (__webpack_require__(2670)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","$","baseUrl","attr","jQuery","changeRow","checkbox","undefined","parent","addClass","removeClass","toolChangeHandler","config","bcBatch","methodSelect","val","executeButton","removeAttr","prop","batchUrl","listTable","checkAll","targetCheckbox","alertBox","loader","flashBox","init","extend","this","initList","unbind","click","length","alert","bcI18n","commonSelectDataFailedMessage","confirm","batchConfirmMessage","form","append","clone","each","value","bcToken","check","key","ajax","url","type","data","serialize","dataType","beforeSend","bcUtil","hideMessage","showLoader","success","result","setFlashMessage","message","location","reload","error","XMLHttpRequest","textStatus","errorThrown","errorMessage","status","commonNotFoundProgramMessage","responseText","JSON","parse","remove","showAlertMessage","commonBatchExecFailedMessage","hideLoader","useUpdate","change","find","e","stopPropagation","initRowSelected","bcCkeditor","editor","initStatus","styleInitStatus","show","setUpConfig","CKEDITOR","addStylesSet","initialStyle","editorStyle","map","themeEditorCsses","css","Array","isArray","contentsCss","push","ckeditorField","replace","editorDomId","editorOptions","setUpDraft","setUpToolBar","allowedContent","extraPlugins","stylesCombo_stylesSet","editorStylesSet","protectedSource","dtd","$removeEmpty","editorUrl","templates_files","editorEnterBr","enterMode","ENTER_BR","editorUseDraft","on","draftAreaId","draftDraftAreaId","publishAreaId","draftPublishAreaId","editorReadonlyPublish","draftReadOnlyPublish","editorDisableDraft","execCommand","editorDisablePublish","name","concat","previewModeId","_this","getCommand","uiItems","state","hide","bcConfirm","title","bcConfirmTitle1","bcConfirmAlertMessage1","defaultCancel","ok","html","dialog","modal","width","buttons","bcConfirmAlertMessage2","bcCredit","adminBaseUrl","hideTarget","isLogin","$html","$page","$credit","openedFavorite","prepend","$creditScroller","fadeIn","fadeOut","setViewSize","window","resize","resizeScroll","height","posX","id","setInterval","clearInterval","clearTimeout","event","cancelBubble","$toolBar","outerHeight","$body","bcJwt","accessToken","refreshToken","localStorage","getItem","getToken","login","email","password","saved","successCallback","errorCallback","apiAdminBaseUrl","done","response","setToken","access_token","refresh_token","bind","fail","async","headers","setItem","logout","removeToken","bcSortable","updateSortUrl","sortHandle","sortTable","sortable","sortableOptions","scroll","items","opacity","zIndex","containment","tolerance","distance","cursor","handle","placeholder","revert","start","sortStartHandler","update","sortUpdateHandler","ui","item","target","offset","index","sortId","sortOffset","getHiddenToken","i","v","complete","bcTimeUtil","getNowDateTime","getNowDate","getNowTime","date","Date","year","getFullYear","month","getMonth","day","getDate","hour","getHours","minute","getMinutes","requested","requesting","defaultUrl","setTokenUrl","callback","timer","execCallback","_config","loaderType","always","getForm","options","fields","unlocked","debug","submitToken","submit","replaceLinkToSubmitToken","selector","match","get","onclick","postLinkForm","bcTree","shiftOnAnchor","ctrlOnAnchor","contextmenuAddOnly","settings","dropTarget","dragTarget","treeDom","jsTree","listDisplayed","beforeParentId","beforePosition","currentSiteId","isAdmin","isUseMoveContents","adminPrefix","editInIndexDisabled","_inited","load","_init","trigger","parseJSON","createTree","jstree","old_parent","old_position","updateShiftAndCtrlOnAnchor","nodeId","closest","get_node","alias","contentType","editDisabled","openUrl","contentId","createLink","baserCorePrefix","contentParentId","contentEntityId","isAliasMenuByLabel","trim","text","after","isAddMenuByLabel","refreshTree","destroy","operation","node","node_parent","node_position","more","contentSiteRoot","nodes","parents","mode","get_parent","manageDisabled","editUrl","manageUrl","copyUrl","isEnabled","deleteLabel","menu","contentFullUrl","label","bcTreeCheck","obj","related","bcTreeUnpublish","siteId","contentSiteId","_csrfToken","showAjaxError","commonChangePublishFailedMessage","bcTreePublish","bcTreeManage","bcTreeRename","renameContent","bcTreeEdit","bcTreeCopy","copyContent","bcTreeDelete","bcTreeToTrash","deleteDisabled","bcTreeConfirmToTrash","bcTreeConfirmDeleteAlias","deleteContent","_disabled","bcTreeUndo","contentAliasId","exists","returnContent","bcTreeAlertMessage1","bcTreeEmptyTrash","bcTreeConfirmMessage1","empty","delete_node","showNoticeMessage","bcTreeInfoMessage1","bcTreeAlertMessage2","Default","ContentAlias","addMenu","counter","maxContents","addDisabled","createMenu","get_selected","multiple","disableCheck","treeData","get_json","flat","sort","decodeURIComponent","deselect_all","select_node","show_contextmenu","pageX","pageY","forceBlank","open","href","setting","current","iconAdd","iconMenu","contentTitle","bcTreeNewTitle","sprintf","contentPlugin","plugin","icon","separatorBefore","separatorAfter","bcTreeAliasTitle","separator_before","separator_after","action","createContent","_data","bcTreeUnNamedTitle","create_node","edit","editNode","content","parent_id","site_id","alias_id","entity_id","fillExtraData","bcTreeAlertMessage6","then","decodeURI","fullUrl","postData","settingData","extra","folder_template","page_template","contents","draft","code","encodeURI","param","bcTreeAlertMessage4","content_id","newNode","commonCopyFailedMessage","defaultTitle","first","oldTitle","newTitle","rename_node","bcTreeAlertMessage5","base","orderContent","changeNormalCursor","cancel","element","oldSort","commonSortSaveConfirmMessage","move_node","open_node","nextNode","get_next_dom","targetId","origin","parentId","entityId","commonSortSaveFailedMessage","showMenuByOuter","shiftKey","ctrlKey","metaKey","changeDnDCursor","addEventListener","componentId","tmpl","document","querySelector","dataStore","getElementById","textContent","console","warn","menuList","contentList","systemList","forEach","hidden","isSystemSettingPage","some","expanded","app","Vue","el","systemExpanded","baseURL","availableVersions","useUpdateNotice","mounted","availableCoreVersionInfo","Object","keys","versions","methods","openSystem","disabledHideMessage","apiBaseUrl","ajaxLoaderPath","ajaxLoaderSmallPath","adminScript","frontFullUrl","setUpTextCounter","div","img","loaderSelector","loaderKey","ajaxConfig","commonExecFailedMessage","responseJSON","showApiError","errors","Cookies","set","showFlashMessage","initTooltip","btConfig","$help","bt","closeWhenOthersOpen","positions","shadow","shadowOffsetX","shadowOffsetY","shadowBlur","shadowColor","shadowOverlap","noShadowOpts","strokeStyle","strokeWidth","spikeLength","spikeGirth","padding","cornerRadius","fill","cssStyles","fontSize","showTip","box","hideTip","animate","contentSelector","$textCounter","keyup","len","maxlen","next","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","exports","module","__webpack_modules__","call","m","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","d","definition","o","defineProperty","enumerable","g","globalThis","Function","prototype","hasOwnProperty","Symbol","toStringTag","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js b/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js index ae40ea2512..1c3c41bba4 100644 --- a/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js +++ b/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js @@ -7,5 +7,5 @@ * @since 5.0.0 * @license https://basercms.net/license/index.html MIT License */ -$((function(){var e=$("#AdminSiteConfigsFormScript").attr("data-isAdminSsl");function n(){"BaserCore.BcCkeditor"===$('input[name="editor"]:checked').val()?$(".ckeditor-option").show():$(".ckeditor-option").hide()}$("#BtnSave").click((function(){if(!function(e){return"0"!==e||"1"!==$("input[name='admin_ssl']:checked").val()||($("#SiteConfigSslUrl").val()?($.bcConfirm.show({title:bcI18n.confirmTitle1,message:bcI18n.confirmMessage1,defaultCancel:!0,ok:function(){$.bcUtil.showLoader(),$("#SiteConfigFormForm").submit()}}),!1):(alert(bcI18n.alertMessage1),window.location.hash="ssl-url",!1))}(e))return!1;$.bcUtil.showLoader()})),$('input[name="editor"]').click(n),n(),$("#BtnCheckSendmail").click((function(){return!!confirm(bcI18n.confirmMessage2)&&($.bcToken.check((function(){return $.ajax({type:"POST",url:$.bcUtil.apiAdminBaseUrl+"baser-core/site_configs/check_sendmail.json",data:$("#SiteConfigFormForm").serialize(),beforeSend:function(){$("#ResultCheckSendmail").hide(),$("#AjaxLoaderCheckSendmail").show()},success:function(e){$("#ResultCheckSendmail").html(bcI18n.infoMessage1)},error:function(e,n,i){var o="";o=e.responseJSON.message?e.responseJSON.message:i,$("#ResultCheckSendmail").html(bcI18n.alertMessage2+o)},complete:function(){$("#ResultCheckSendmail").show(),$("#AjaxLoaderCheckSendmail").hide()}})}),{loaderType:"none"}),!1)}))})); +$((function(){function e(){"BaserCore.BcCkeditor"===$('input[name="editor"]:checked').val()?$(".ckeditor-option").show():$(".ckeditor-option").hide()}$("#BtnSave").click((function(){$.bcUtil.showLoader()})),$('input[name="editor"]').click(e),e(),$("#BtnCheckSendmail").click((function(){return!!confirm(bcI18n.confirmMessage1)&&($.bcToken.check((function(){return $.ajax({type:"POST",url:$.bcUtil.apiAdminBaseUrl+"baser-core/site_configs/check_sendmail.json",data:$("#SiteConfigFormForm").serialize(),beforeSend:function(){$("#ResultCheckSendmail").hide(),$("#AjaxLoaderCheckSendmail").show()},success:function(e){$("#ResultCheckSendmail").html(bcI18n.infoMessage1)},error:function(e,n,i){var c="";c=e.responseJSON.message?e.responseJSON.message:i,$("#ResultCheckSendmail").html(bcI18n.alertMessage1+c)},complete:function(){$("#ResultCheckSendmail").show(),$("#AjaxLoaderCheckSendmail").hide()}})}),{loaderType:"none"}),!1)}))})); //# sourceMappingURL=index.bundle.js.map \ No newline at end of file diff --git a/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js.map b/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js.map index 43df226151..f6ac1efb2c 100644 --- a/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js.map +++ b/plugins/bc-admin-third/webroot/js/admin/site_configs/index.bundle.js.map @@ -1 +1 @@ -{"version":3,"file":"js/admin/site_configs/index.bundle.js","mappings":";;;;;;;;;AAUAA,GAAE,WAEE,IACIC,EADSD,EAAE,+BACSE,KAAK,mBA4E7B,SAASC,IAC2C,yBAA5CH,EAAE,gCAAgCI,MAClCJ,EAAE,oBAAoBK,OAEtBL,EAAE,oBAAoBM,MAE9B,CAhFAN,EAAE,YAAYO,OAAM,WAChB,IAiDJ,SAAyBN,GACrB,MAAmB,MAAfA,GAAqE,MAA/CD,EAAE,mCAAmCI,QACtDJ,EAAE,qBAAqBI,OAK5BJ,EAAEQ,UAAUH,KAAK,CACbI,MAAOC,OAAOC,cACdC,QAASF,OAAOG,gBAChBC,eAAe,EACfC,GAAI,WACAf,EAAEgB,OAAOC,aACTjB,EAAE,uBAAuBkB,QAC7B,KAEG,IAbHC,MAAMT,OAAOU,eACbC,OAAOC,SAASC,KAAO,WAChB,GAcnB,CApESC,CAAgBvB,GACjB,OAAO,EAEXD,EAAEgB,OAAOC,YACb,IAEAjB,EAAE,wBAAwBO,MAAMJ,GAChCA,IAGAH,EAAE,qBAAqBO,OAAM,WACzB,QAAKkB,QAAQf,OAAOgB,mBAGpB1B,EAAE2B,QAAQC,OAAM,WACZ,OAAO5B,EAAE6B,KAAK,CACVC,KAAM,OACNC,IAAK/B,EAAEgB,OAAOgB,gBAAkB,8CAChCC,KAAMjC,EAAE,uBAAuBkC,YAC/BC,WAAY,WACRnC,EAAE,wBAAwBM,OAC1BN,EAAE,4BAA4BK,MAClC,EACA+B,QAAS,SAAUC,GACfrC,EAAE,wBAAwBsC,KAAK5B,OAAO6B,aAC1C,EACAC,MAAO,SAAUC,EAAgBC,EAAYC,GACzC,IAAIC,EAAe,GAEfA,EADAH,EAAeI,aAAajC,QACb6B,EAAeI,aAAajC,QAE5B+B,EAEnB3C,EAAE,wBAAwBsC,KAAK5B,OAAOoC,cAAgBF,EAC1D,EACAG,SAAU,WACN/C,EAAE,wBAAwBK,OAC1BL,EAAE,4BAA4BM,MAClC,GAER,GAAG,CAAC0C,WAAY,UACT,EACX,GAuCJ","sources":["webpack://bc-admin-third/./src/js/admin/site_configs/index.js"],"sourcesContent":["/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n$(function () {\n\n var script = $(\"#AdminSiteConfigsFormScript\");\n var isAdminSsl = script.attr('data-isAdminSsl');\n\n $(\"#BtnSave\").click(function () {\n if (!isAdminSslCheck(isAdminSsl)) {\n return false;\n }\n $.bcUtil.showLoader();\n });\n\n $('input[name=\"editor\"]').click(siteConfigEditorClickHandler);\n siteConfigEditorClickHandler();\n\n // SMTP送信テスト\n $(\"#BtnCheckSendmail\").click(function () {\n if (!confirm(bcI18n.confirmMessage2)) {\n return false;\n }\n $.bcToken.check(function () {\n return $.ajax({\n type: 'POST',\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/site_configs/check_sendmail.json',\n data: $(\"#SiteConfigFormForm\").serialize(),\n beforeSend: function () {\n $(\"#ResultCheckSendmail\").hide();\n $(\"#AjaxLoaderCheckSendmail\").show();\n },\n success: function (result) {\n $(\"#ResultCheckSendmail\").html(bcI18n.infoMessage1);\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest.responseJSON.message) {\n errorMessage = XMLHttpRequest.responseJSON.message;\n } else {\n errorMessage = errorThrown;\n }\n $(\"#ResultCheckSendmail\").html(bcI18n.alertMessage2 + errorMessage);\n },\n complete: function () {\n $(\"#ResultCheckSendmail\").show();\n $(\"#AjaxLoaderCheckSendmail\").hide();\n }\n });\n }, {loaderType: 'none'});\n return false;\n });\n\n /**\n * 管理画面SSLチェック\n * @param isAdminSsl\n * @returns {boolean}\n */\n function isAdminSslCheck(isAdminSsl) {\n if (isAdminSsl === \"0\" && $(\"input[name='admin_ssl']:checked\").val() === \"1\") {\n if (!$(\"#SiteConfigSslUrl\").val()) {\n alert(bcI18n.alertMessage1);\n window.location.hash = 'ssl-url';\n return false;\n }\n $.bcConfirm.show({\n title: bcI18n.confirmTitle1,\n message: bcI18n.confirmMessage1,\n defaultCancel: true,\n ok: function () {\n $.bcUtil.showLoader();\n $(\"#SiteConfigFormForm\").submit();\n }\n });\n return false;\n }\n return true;\n }\n\n /**\n * エディタ切替時イベント\n */\n function siteConfigEditorClickHandler() {\n if ($('input[name=\"editor\"]:checked').val() === 'BaserCore.BcCkeditor') {\n $(\".ckeditor-option\").show();\n } else {\n $(\".ckeditor-option\").hide();\n }\n }\n\n});\n"],"names":["$","isAdminSsl","attr","siteConfigEditorClickHandler","val","show","hide","click","bcConfirm","title","bcI18n","confirmTitle1","message","confirmMessage1","defaultCancel","ok","bcUtil","showLoader","submit","alert","alertMessage1","window","location","hash","isAdminSslCheck","confirm","confirmMessage2","bcToken","check","ajax","type","url","apiAdminBaseUrl","data","serialize","beforeSend","success","result","html","infoMessage1","error","XMLHttpRequest","textStatus","errorThrown","errorMessage","responseJSON","alertMessage2","complete","loaderType"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/admin/site_configs/index.bundle.js","mappings":";;;;;;;;;AAUAA,GAAE,WA+CE,SAASC,IAC2C,yBAA5CD,EAAE,gCAAgCE,MAClCF,EAAE,oBAAoBG,OAEtBH,EAAE,oBAAoBI,MAE9B,CAnDAJ,EAAE,YAAYK,OAAM,WAChBL,EAAEM,OAAOC,YACb,IAEAP,EAAE,wBAAwBK,MAAMJ,GAChCA,IAGAD,EAAE,qBAAqBK,OAAM,WACzB,QAAKG,QAAQC,OAAOC,mBAGpBV,EAAEW,QAAQC,OAAM,WACZ,OAAOZ,EAAEa,KAAK,CACVC,KAAM,OACNC,IAAKf,EAAEM,OAAOU,gBAAkB,8CAChCC,KAAMjB,EAAE,uBAAuBkB,YAC/BC,WAAY,WACRnB,EAAE,wBAAwBI,OAC1BJ,EAAE,4BAA4BG,MAClC,EACAiB,QAAS,SAAUC,GACfrB,EAAE,wBAAwBsB,KAAKb,OAAOc,aAC1C,EACAC,MAAO,SAAUC,EAAgBC,EAAYC,GACzC,IAAIC,EAAe,GAEfA,EADAH,EAAeI,aAAaC,QACbL,EAAeI,aAAaC,QAE5BH,EAEnB3B,EAAE,wBAAwBsB,KAAKb,OAAOsB,cAAgBH,EAC1D,EACAI,SAAU,WACNhC,EAAE,wBAAwBG,OAC1BH,EAAE,4BAA4BI,MAClC,GAER,GAAG,CAAC6B,WAAY,UACT,EACX,GAaJ","sources":["webpack://bc-admin-third/./src/js/admin/site_configs/index.js"],"sourcesContent":["/**\n * baserCMS : Based Website Development Project \n * Copyright (c) NPO baser foundation \n *\n * @copyright Copyright (c) NPO baser foundation\n * @link https://basercms.net baserCMS Project\n * @since 5.0.0\n * @license https://basercms.net/license/index.html MIT License\n */\n\n$(function () {\n\n $(\"#BtnSave\").click(function () {\n $.bcUtil.showLoader();\n });\n\n $('input[name=\"editor\"]').click(siteConfigEditorClickHandler);\n siteConfigEditorClickHandler();\n\n // SMTP送信テスト\n $(\"#BtnCheckSendmail\").click(function () {\n if (!confirm(bcI18n.confirmMessage1)) {\n return false;\n }\n $.bcToken.check(function () {\n return $.ajax({\n type: 'POST',\n url: $.bcUtil.apiAdminBaseUrl + 'baser-core/site_configs/check_sendmail.json',\n data: $(\"#SiteConfigFormForm\").serialize(),\n beforeSend: function () {\n $(\"#ResultCheckSendmail\").hide();\n $(\"#AjaxLoaderCheckSendmail\").show();\n },\n success: function (result) {\n $(\"#ResultCheckSendmail\").html(bcI18n.infoMessage1);\n },\n error: function (XMLHttpRequest, textStatus, errorThrown) {\n var errorMessage = '';\n if (XMLHttpRequest.responseJSON.message) {\n errorMessage = XMLHttpRequest.responseJSON.message;\n } else {\n errorMessage = errorThrown;\n }\n $(\"#ResultCheckSendmail\").html(bcI18n.alertMessage1 + errorMessage);\n },\n complete: function () {\n $(\"#ResultCheckSendmail\").show();\n $(\"#AjaxLoaderCheckSendmail\").hide();\n }\n });\n }, {loaderType: 'none'});\n return false;\n });\n\n /**\n * エディタ切替時イベント\n */\n function siteConfigEditorClickHandler() {\n if ($('input[name=\"editor\"]:checked').val() === 'BaserCore.BcCkeditor') {\n $(\".ckeditor-option\").show();\n } else {\n $(\".ckeditor-option\").hide();\n }\n }\n\n});\n"],"names":["$","siteConfigEditorClickHandler","val","show","hide","click","bcUtil","showLoader","confirm","bcI18n","confirmMessage1","bcToken","check","ajax","type","url","apiAdminBaseUrl","data","serialize","beforeSend","success","result","html","infoMessage1","error","XMLHttpRequest","textStatus","errorThrown","errorMessage","responseJSON","message","alertMessage1","complete","loaderType"],"sourceRoot":""} \ No newline at end of file diff --git a/plugins/bc-blog/src/Controller/BlogController.php b/plugins/bc-blog/src/Controller/BlogController.php index d4c2c4e0fd..d9aaac0194 100755 --- a/plugins/bc-blog/src/Controller/BlogController.php +++ b/plugins/bc-blog/src/Controller/BlogController.php @@ -149,7 +149,7 @@ public function index( * * ### URL例 * - カテゴリ別記事一覧: /news/archives/category/category-name - * - 作成者別記事一覧: /news/archives/author/author-name + * - 作成者別記事一覧: /news/archives/author/user-id * - タグ別記事一覧: /news/archives/tag/tag-name * - 年別記事一覧: /news/archives/date/2022 * - 月別記事一覧: /news/archives/date/2022/12 @@ -198,15 +198,15 @@ public function archives( case 'author': if (count($pass) > 2) $this->notFound(); - $author = isset($pass[1])? $pass[1] : ''; + $userId = isset($pass[1]) ? (int) $pass[1] : ''; $this->set($service->getViewVarsForArchivesByAuthor( - $this->paginate($blogPostsService->getIndexByAuthor($author, array_merge([ + $this->paginate($blogPostsService->getIndexByAuthor($userId, array_merge([ 'status' => 'publish', 'blog_content_id' => $blogContent->id, 'direction' => $blogContent->list_direction, 'draft' => false ], $this->getRequest()->getQueryParams())), ['limit' => $blogContent->list_count]), - $author, + $userId, $blogContent )); break; diff --git a/plugins/bc-blog/src/Service/BlogPostsService.php b/plugins/bc-blog/src/Service/BlogPostsService.php index 80381ad7ba..7335471236 100755 --- a/plugins/bc-blog/src/Service/BlogPostsService.php +++ b/plugins/bc-blog/src/Service/BlogPostsService.php @@ -242,7 +242,6 @@ protected function createIndexConditions(Query $query, array $params) 'site_id' => null, 'category' => null, 'keyword' => null, - 'author' => null, 'tag' => null, 'year' => null, 'month' => null, @@ -342,10 +341,6 @@ protected function createIndexConditions(Query $query, array $params) if ($params['keyword']) { $conditions = $this->createKeywordCondition($conditions, $params['keyword']); } - // 作成者 - if ($params['author']) { - $conditions = $this->createAuthorCondition($conditions, $params['author']); - } return $query->where($conditions); } @@ -538,23 +533,6 @@ public function createYearMonthDayCondition($conditions, $year, $month, $day) return $conditions; } - /** - * 作成者の条件を作成する - * - * @param array $conditions - * @param string $author - * @return array - * @checked - * @noTodo - * @unitTest - */ - public function createAuthorCondition($conditions, $author) - { - $user = $this->BlogPosts->Users->find()->where(['Users.name' => $author])->first(); - $conditions['BlogPosts.user_id'] = $user->id; - return $conditions; - } - /** * 初期データ用のエンティティを取得 * @@ -809,16 +787,16 @@ public function getIndexByCategory($category, array $options = []) /** * 著者別記事一覧を取得 * - * @param string $author + * @param int $userId * @param array $options * @return Query * @checked * @noTodo * @unitTest */ - public function getIndexByAuthor(string $author, array $options = []) + public function getIndexByAuthor(int $userId, array $options = []) { - $options['author'] = $author; + $options['user_id'] = $userId; return $this->getIndex($options); } diff --git a/plugins/bc-blog/src/Service/BlogPostsServiceInterface.php b/plugins/bc-blog/src/Service/BlogPostsServiceInterface.php index aab2f2e32b..6d0161819c 100755 --- a/plugins/bc-blog/src/Service/BlogPostsServiceInterface.php +++ b/plugins/bc-blog/src/Service/BlogPostsServiceInterface.php @@ -200,14 +200,14 @@ public function getIndexByCategory($category, array $options = []); /** * 著者別記事一覧を取得 * - * @param string $author + * @param int $userId * @param array $options * @return Query * @checked * @noTodo * @unitTest */ - public function getIndexByAuthor(string $author, array $options = []); + public function getIndexByAuthor(int $userId, array $options = []); /** * タグ別記事一覧を取得 diff --git a/plugins/bc-blog/src/Service/Front/BlogFrontService.php b/plugins/bc-blog/src/Service/Front/BlogFrontService.php index d567b7a23f..3361bc0cbe 100755 --- a/plugins/bc-blog/src/Service/Front/BlogFrontService.php +++ b/plugins/bc-blog/src/Service/Front/BlogFrontService.php @@ -249,17 +249,17 @@ public function getCategoryCrumbs(string $baseUrl, int $categoryId, $isCategoryP /** * 著者別アーカイブ一覧の view 用変数を取得する * @param ResultSet|PaginatedResultSet $posts - * @param string $author + * @param int $userId * @param BlogContent $blogContent * @return array * @checked * @noTodo * @unitTest */ - public function getViewVarsForArchivesByAuthor(ResultSet|PaginatedResultSet $posts, string $author, BlogContent $blogContent): array + public function getViewVarsForArchivesByAuthor(ResultSet|PaginatedResultSet $posts, int $userId, BlogContent $blogContent): array { $usersTable = TableRegistry::getTableLocator()->get('BaserCore.Users'); - $author = $usersTable->find('available')->where(['Users.name' => $author])->first(); + $author = $usersTable->find('available')->where(['Users.id' => $userId])->first(); if (!$author) { throw new NotFoundException(); } diff --git a/plugins/bc-blog/src/Service/Front/BlogFrontServiceInterface.php b/plugins/bc-blog/src/Service/Front/BlogFrontServiceInterface.php index e28c916e20..4d966c8dab 100755 --- a/plugins/bc-blog/src/Service/Front/BlogFrontServiceInterface.php +++ b/plugins/bc-blog/src/Service/Front/BlogFrontServiceInterface.php @@ -83,14 +83,14 @@ public function getCategoryCrumbs(string $baseUrl, int $categoryId, $isCategoryP /** * 著者別アーカイブ一覧の view 用変数を取得する - * @param ResultSet $posts - * @param string $author + * @param ResultSet|PaginatedResultSet $posts + * @param int $userId * @return array * @checked * @noTodo * @unitTest */ - public function getViewVarsForArchivesByAuthor(ResultSet $posts, string $author, BlogContent $blogContent): array; + public function getViewVarsForArchivesByAuthor(ResultSet|PaginatedResultSet $posts, int $userId, BlogContent $blogContent): array; /** * タグ別アーカイブ一覧の view 用変数を取得する diff --git a/plugins/bc-blog/tests/TestCase/Controller/BlogControllerTest.php b/plugins/bc-blog/tests/TestCase/Controller/BlogControllerTest.php index 8497fa4e71..4d8dae923c 100755 --- a/plugins/bc-blog/tests/TestCase/Controller/BlogControllerTest.php +++ b/plugins/bc-blog/tests/TestCase/Controller/BlogControllerTest.php @@ -195,7 +195,7 @@ public function test_archives() $this->assertEquals('release', $vars['blogCategory']->name); $this->assertEquals('post1', $vars['posts']->toArray()[0]->name); //type = 'author' - $this->get('/news/archives/author/name'); + $this->get('/news/archives/author/1'); $this->assertResponseOk(); $vars = $this->_controller->viewBuilder()->getVars(); $this->assertEquals('author', $vars['blogArchiveType']); diff --git a/plugins/bc-blog/tests/TestCase/Service/BlogPostsServiceTest.php b/plugins/bc-blog/tests/TestCase/Service/BlogPostsServiceTest.php index fc16f6b76f..2760891501 100755 --- a/plugins/bc-blog/tests/TestCase/Service/BlogPostsServiceTest.php +++ b/plugins/bc-blog/tests/TestCase/Service/BlogPostsServiceTest.php @@ -411,18 +411,6 @@ public function testCreateYearMonthDayCondition() $this->assertEquals("01", $result['DAY(BlogPosts.posted)']); } - /** - * 作成者の条件を作成する - */ - public function testCreateAuthorCondition() - { - //データ 生成 - UserFactory::make(['id' => 1, 'name' => 'test name', 'email' => 'test_name@gmail.com'])->persist(); - //戻り値を確認 - $result = $this->BlogPostsService->createAuthorCondition([], "test name"); - $this->assertEquals($result["BlogPosts.user_id"], 1); - } - /** * 並び替え設定を生成する */ @@ -965,7 +953,7 @@ public function testGetIndexByAuthor() // サービスメソッドを呼ぶ // test author1 の記事を取得、id昇順 - $result = $this->BlogPostsService->getIndexByAuthor('test author1', [ + $result = $this->BlogPostsService->getIndexByAuthor(2, [ 'direction' => 'ASC', 'order' => 'id', ]); @@ -984,7 +972,7 @@ public function testGetIndexByAuthor() // サービスメソッドを呼ぶ // 記事が存在しない - $result = $this->BlogPostsService->getIndexByAuthor('test author3', []); + $result = $this->BlogPostsService->getIndexByAuthor(4, []); // 戻り値を確認 // 指定した author の記事が存在しない diff --git a/plugins/bc-blog/tests/TestCase/Service/Front/BlogFrontServiceTest.php b/plugins/bc-blog/tests/TestCase/Service/Front/BlogFrontServiceTest.php index c062b48e5d..e5435710a2 100755 --- a/plugins/bc-blog/tests/TestCase/Service/Front/BlogFrontServiceTest.php +++ b/plugins/bc-blog/tests/TestCase/Service/Front/BlogFrontServiceTest.php @@ -511,7 +511,7 @@ public function test_getViewVarsForArchivesByAuthor() // サービスメソッドを呼ぶ $result = $this->BlogFrontService->getViewVarsForArchivesByAuthor( $blogPostsService->getIndex([])->all(), - 'name', + 1, $blogContentsService->get(1) ); @@ -533,7 +533,7 @@ public function test_getViewVarsForArchivesByAuthor() $this->expectException("Cake\Http\Exception\NotFoundException"); $this->BlogFrontService->getViewVarsForArchivesByAuthor( $blogPostsService->getIndex([])->all(), - 'author name test', + 999, $blogContentsService->get(1) ); } diff --git a/plugins/bc-custom-content/plugins/BcCcDate/src/View/Helper/BcCcDateHelper.php b/plugins/bc-custom-content/plugins/BcCcDate/src/View/Helper/BcCcDateHelper.php index 07621b4e9b..e2d8819c82 100644 --- a/plugins/bc-custom-content/plugins/BcCcDate/src/View/Helper/BcCcDateHelper.php +++ b/plugins/bc-custom-content/plugins/BcCcDate/src/View/Helper/BcCcDateHelper.php @@ -49,7 +49,7 @@ public function control(CustomLink $link, array $options = []): string { $field = $link->custom_field; $options = array_merge([ - 'type' => 'date', + 'type' => 'datePicker', 'size' => $field->size ], $options); return $this->BcAdminForm->control($link->name, $options); diff --git a/plugins/bc-custom-content/plugins/BcCcWysiwyg/src/View/Helper/BcCcWysiwygHelper.php b/plugins/bc-custom-content/plugins/BcCcWysiwyg/src/View/Helper/BcCcWysiwygHelper.php index 2f10e94735..7ff56fefcd 100644 --- a/plugins/bc-custom-content/plugins/BcCcWysiwyg/src/View/Helper/BcCcWysiwygHelper.php +++ b/plugins/bc-custom-content/plugins/BcCcWysiwyg/src/View/Helper/BcCcWysiwygHelper.php @@ -67,7 +67,10 @@ public function preview(CustomLink $link) { $link->name = 'wysiwyg'; $this->BcAdminForm->unlockField($link->name); - return $this->control($link) . '
※ Wysiwyg エディタはリアルタイムでのプレビューは未対応です。保存してから確認してください。'; + $options = [ + 'value' => $link->custom_field->default_value, + ]; + return $this->control($link, $options) . '
※ Wysiwyg エディタはリアルタイムでのプレビューは未対応です。保存してから確認してください。'; } /** diff --git a/plugins/bc-front/templates/plugin/BcBlog/element/widget/blog_author_archives.php b/plugins/bc-front/templates/plugin/BcBlog/element/widget/blog_author_archives.php index 2148aa9dc0..2b8fbb6750 100755 --- a/plugins/bc-front/templates/plugin/BcBlog/element/widget/blog_author_archives.php +++ b/plugins/bc-front/templates/plugin/BcBlog/element/widget/blog_author_archives.php @@ -47,7 +47,7 @@ getRequest()->getPath() === $baseCurrentUrl . $author->name) { + if ($this->getRequest()->getPath() === $baseCurrentUrl . $author->id) { $class[] = 'current'; } if ($view_count) { @@ -57,14 +57,10 @@ } ?>
  • - name): ?> - BcBaser->link($title, $baseCurrentUrl . $author->name, [ - 'escape' => true, - 'class' => 'bs-widget-list__item-title' - ]) ?> - - - + BcBaser->link($title, $baseCurrentUrl . $author->id, [ + 'escape' => true, + 'class' => 'bs-widget-list__item-title' + ]) ?>
  • diff --git a/plugins/bc-front/templates/plugin/BcSearchIndex/SearchIndexes/search.php b/plugins/bc-front/templates/plugin/BcSearchIndex/SearchIndexes/search.php index 5163b4205a..13dc043dee 100755 --- a/plugins/bc-front/templates/plugin/BcSearchIndex/SearchIndexes/search.php +++ b/plugins/bc-front/templates/plugin/BcSearchIndex/SearchIndexes/search.php @@ -44,7 +44,7 @@
    -count()): ?> +count() > 0): ?>

    BcBaser->link($this->BcBaser->mark($query, $searchIndex->title), $searchIndex->url, ['escape' => false]) ?>

    @@ -52,7 +52,7 @@
    - +

    diff --git a/plugins/bc-installer/src/Controller/Admin/InstallationsController.php b/plugins/bc-installer/src/Controller/Admin/InstallationsController.php index 2e7922fb48..b2eaa34c47 100644 --- a/plugins/bc-installer/src/Controller/Admin/InstallationsController.php +++ b/plugins/bc-installer/src/Controller/Admin/InstallationsController.php @@ -204,9 +204,6 @@ public function step5(InstallationsAdminServiceInterface $service) /** @var SiteConfigsServiceInterface $siteConfigsService */ $siteConfigsService = $this->getService(SiteConfigsServiceInterface::class); $siteConfigsService->putEnv('INSTALL_MODE', 'false'); - if(!$this->getRequest()->is('https')) { - $siteConfigsService->putEnv('ADMIN_SSL', 'false'); - } BcUtil::clearAllCache(); if (function_exists('opcache_reset')) opcache_reset(); diff --git a/plugins/bc-mail/src/View/Helper/MaildataHelper.php b/plugins/bc-mail/src/View/Helper/MaildataHelper.php index a9321d6bde..d677ae5d95 100755 --- a/plugins/bc-mail/src/View/Helper/MaildataHelper.php +++ b/plugins/bc-mail/src/View/Helper/MaildataHelper.php @@ -43,6 +43,7 @@ class MaildataHelper extends BcTextHelper * @return string メール用データ * @checked * @noTodo + * @unitTest */ public function control($type, $value, $escape = true) { diff --git a/plugins/bc-mail/src/View/Helper/MailfieldHelper.php b/plugins/bc-mail/src/View/Helper/MailfieldHelper.php index ba1e6748c3..69675fe56a 100755 --- a/plugins/bc-mail/src/View/Helper/MailfieldHelper.php +++ b/plugins/bc-mail/src/View/Helper/MailfieldHelper.php @@ -68,6 +68,7 @@ public function getAttributes($data) * @return array コントロールソース * @checked * @noTodo + * @unitTest */ public function getOptions($data) { diff --git a/plugins/bc-mail/tests/TestCase/View/Helper/MaildataHelperTest.php b/plugins/bc-mail/tests/TestCase/View/Helper/MaildataHelperTest.php index f15fd9d894..61c430213a 100644 --- a/plugins/bc-mail/tests/TestCase/View/Helper/MaildataHelperTest.php +++ b/plugins/bc-mail/tests/TestCase/View/Helper/MaildataHelperTest.php @@ -1,6 +1,8 @@ View = new BcAppView(null); -// $this->View->request = $this->_getRequest('/'); -// $this->Maildata = new MaildataHelper($this->View); + $this->MaildataHelper = new MaildataHelper(new View()); } /** @@ -21,16 +21,26 @@ public function setUp():void */ public function tearDown():void { -// unset($this->Maildata); + unset($this->MaildataHelper); parent::tearDown(); } /** * メール表示用のデータを出力する - * - * public function testControl() { - * $this->markTestIncomplete('このメソッドは、同一クラス内のメソッドをラッピングしているメソッドのためスキップします。'); - * } + * @dataProvider controlDataProvider */ + public function testControl($type, $value, $escape, $expected) + { + $result = $this->MaildataHelper->control($type, $value, $escape); + $this->assertEquals($expected, $result); + } + + public static function controlDataProvider() + { + return [ + ['text' , 'bold', true, ' <b>bold</b>'], + ['text' , 'bold', false, ' bold'], + ]; + } /** * メール表示用のデータを出力する diff --git a/plugins/bc-mail/tests/TestCase/View/Helper/MailfieldHelperTest.php b/plugins/bc-mail/tests/TestCase/View/Helper/MailfieldHelperTest.php index c724f11b1b..3fa0535cfb 100644 --- a/plugins/bc-mail/tests/TestCase/View/Helper/MailfieldHelperTest.php +++ b/plugins/bc-mail/tests/TestCase/View/Helper/MailfieldHelperTest.php @@ -11,6 +11,7 @@ namespace BcMail\Test\TestCase\View\Helper; use BaserCore\TestSuite\BcTestCase; +use BcMail\Test\Factory\MailFieldsFactory; use BcMail\View\Helper\MailfieldHelper; use Cake\View\View; @@ -59,6 +60,14 @@ public static function getAttributesProvider() */ public function testGetOptions() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + //with source data not empty + $mailField = MailFieldsFactory::make(['source' => '資料請求|問い合わせ|その他'])->getEntity(); + $result = $this->mailfieldHelper->getOptions($mailField); + $this->assertEquals(['資料請求' => '資料請求', '問い合わせ' => '問い合わせ', 'その他' => 'その他'], $result); + + //with source data empty + $mailField = MailFieldsFactory::make(['source' => ''])->getEntity(); + $result = $this->mailfieldHelper->getOptions($mailField); + $this->assertEquals([], $result); } } diff --git a/plugins/bc-uploader/src/Controller/Admin/UploaderCategoriesController.php b/plugins/bc-uploader/src/Controller/Admin/UploaderCategoriesController.php index 9baa227b91..bfe655a173 100755 --- a/plugins/bc-uploader/src/Controller/Admin/UploaderCategoriesController.php +++ b/plugins/bc-uploader/src/Controller/Admin/UploaderCategoriesController.php @@ -15,6 +15,7 @@ use BaserCore\Annotation\NoTodo; use BaserCore\Annotation\Checked; use BaserCore\Annotation\UnitTest; +use BaserCore\Utility\BcSiteConfig; use BcUploader\Service\UploaderCategoriesService; use BcUploader\Service\UploaderCategoriesServiceInterface; use Cake\ORM\Exception\PersistenceFailedException; @@ -37,6 +38,11 @@ class UploaderCategoriesController extends BcAdminAppController */ public function index(UploaderCategoriesServiceInterface $service) { + $this->setViewConditions('UploadCategory', [ + 'default' => [ + 'query' => [ + 'limit' => BcSiteConfig::get('admin_list_num'), + ]]]); $this->set(['uploaderCategories' => $this->paginate($service->getIndex())]); } @@ -89,7 +95,7 @@ public function add(UploaderCategoriesServiceInterface $service) * @return void * @checked * @noTodo - * @unitTest + * @unitTest */ public function edit(UploaderCategoriesServiceInterface $service, $id) { diff --git a/plugins/bc-uploader/src/Controller/Admin/UploaderFilesController.php b/plugins/bc-uploader/src/Controller/Admin/UploaderFilesController.php index 7b1e88432e..d76e93579d 100755 --- a/plugins/bc-uploader/src/Controller/Admin/UploaderFilesController.php +++ b/plugins/bc-uploader/src/Controller/Admin/UploaderFilesController.php @@ -59,7 +59,7 @@ public function index(UploaderFilesAdminServiceInterface $service) $this->setViewConditions('UploadFile', [ 'default' => [ 'query' => [ - 'num' => BcSiteConfig::get('admin_list_num'), + 'limit' => BcSiteConfig::get('admin_list_num'), 'uploader_type' => 'all' ]]]); $this->setRequest($this->getRequest()->withParsedBody($this->getRequest()->getQueryParams())); @@ -99,7 +99,7 @@ public function ajax_list(UploaderFilesAdminServiceInterface $service, int $id = $this->setViewConditions('UploadFile', [ 'default' => [ 'query' => [ - 'num' => BcSiteConfig::get('admin_list_num') + 'limit' => BcSiteConfig::get('admin_list_num'), ]], 'type' => 'get' ]); diff --git a/plugins/bc-uploader/src/View/Helper/UploaderHelper.php b/plugins/bc-uploader/src/View/Helper/UploaderHelper.php index eb3e00f10b..4094d06b0c 100755 --- a/plugins/bc-uploader/src/View/Helper/UploaderHelper.php +++ b/plugins/bc-uploader/src/View/Helper/UploaderHelper.php @@ -51,6 +51,7 @@ class UploaderHelper extends Helper * @return void * @checked * @noTodo + * @unitTest */ public function beforeRender(Event $event, $viewFile) { @@ -66,6 +67,7 @@ public function beforeRender(Event $event, $viewFile) * @return string imgタグ * @checked * @noTodo + * @unitTest */ public function file(UploaderFile $uploaderFile, array $options = []) { @@ -101,6 +103,7 @@ public function file(UploaderFile $uploaderFile, array $options = []) * @return string * @checked * @noTodo + * @unitTest */ public function getFileUrl($fileName) { @@ -120,6 +123,7 @@ public function getFileUrl($fileName) * @return string * @checked * @noTodo + * @unitTest */ public function download(UploaderFile $uploaderFile, $linkText = '≫ ダウンロード') { @@ -134,6 +138,7 @@ public function download(UploaderFile $uploaderFile, $linkText = '≫ ダウン * @param array $data * @return bool * @checked + * @unitTest */ public function isLimitSetting($data) { diff --git a/plugins/bc-uploader/tests/TestCase/View/Helper/UploaderHelperTest.php b/plugins/bc-uploader/tests/TestCase/View/Helper/UploaderHelperTest.php index 10531de048..8b4615843b 100644 --- a/plugins/bc-uploader/tests/TestCase/View/Helper/UploaderHelperTest.php +++ b/plugins/bc-uploader/tests/TestCase/View/Helper/UploaderHelperTest.php @@ -1,7 +1,10 @@ @@ -26,6 +29,8 @@ class UploaderHelperTest extends BcTestCase public function setUp(): void { parent::setUp(); + $this->UploaderHelper = new UploaderHelper(new AppView($this->getRequest('/'))); + $this->UploaderHelper->beforeRender(new Event('beforeRender'), ''); } /** @@ -41,7 +46,8 @@ public function tearDown(): void */ public function testBeforeRender() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + $this->assertEquals('/files/uploads/', $this->UploaderHelper->savedUrl); + $this->assertEquals('/var/www/html/webroot/files/uploads/', $this->UploaderHelper->savePath); } /** @@ -49,15 +55,36 @@ public function testBeforeRender() */ public function testFile() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + $uploaderFile = UploaderFileFactory::make(['name' => 'test.jpg', 'alt' => 'Example Image Alt Text'])->getEntity(); + $rs = $this->UploaderHelper->file($uploaderFile, ['size' => 'small']); + $this->assertEquals('Example Image Alt Text', $rs); + + //options empty + $rs = $this->UploaderHelper->file($uploaderFile); + $this->assertEquals('Example Image Alt Text', $rs); + + //extension don't have ['gif', 'jpg', 'png'] + $uploaderFile = UploaderFileFactory::make(['name' => 'example.pdf'])->getEntity(); + $rs = $this->UploaderHelper->file($uploaderFile); + $this->assertEquals('', $rs); } /** * ファイルが保存されているURLを取得する + * @dataProvider getFileUrlProviderData */ - public function testGetFileUrl() + public function testGetFileUrl($fileName, $expected) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + $rs = $this->UploaderHelper->getFileUrl($fileName); + $this->assertEquals($expected, $rs); + } + + public static function getFileUrlProviderData() + { + return [ + ['', ''], + ['test.jpg', '/files/uploads/test.jpg'] + ]; } /** @@ -65,15 +92,36 @@ public function testGetFileUrl() */ public function testDownload() { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + $uploaderFile = UploaderFileFactory::make(['name' => 'test.jpg'])->getEntity(); + $linkText = 'click here to download'; + $rs = $this->UploaderHelper->download($uploaderFile, $linkText); + $this->assertEquals('click here to download', $rs); + + $rs = $this->UploaderHelper->download($uploaderFile); + $this->assertEquals('≫ ダウンロード', $rs); } /** * ファイルの公開制限期間が設定されているか判定する + * @dataProvider isLimitSettingDataProvider */ - public function testIsLimitSetting() + public function testIsLimitSetting($data, $expected) { - $this->markTestIncomplete('このテストは、まだ実装されていません。'); + $rs = $this->UploaderHelper->isLimitSetting($data); + $this->assertEquals($expected, $rs); + } + + public static function isLimitSettingDataProvider() + { + return [ + [['UploaderFile' => []], false], + [['UploaderFile' => ['publish_begin' => '2023-01-01']], true], + [['UploaderFile' => ['publish_end' => '2023-12-31']], true], + [['UploaderFile' => ['publish_begin' => '2023-01-01', 'publish_end' => '2023-12-31']], true], + [['publish_begin' => '2023-01-01'], true], + [['publish_end' => '2023-12-31'], true], + [[], false], + ]; } /**