# TRPGデータ集積アプリ「TRPGデータバンク」

    /**
     * PHP version 5
     *
     * @copyright Copyright 2010, Cake. (http://trpgtools-onweb.sourceforge.jp/)
     * @category README
     * @package  TRPG Data Bank
     * @version  beta
     * @author   Cake
     * @license  http://www.opensource.org/licenses/mit-license.php The MIT License
     * @link     http://trpgtools-onweb.sourceforge.jp/
     */

## 概要

## 注意事項他

本スクリプトの使用および配布は、MITライセンスに基づきます。

### MITライセンス概要＆使用上の注意

1. 本スクリプトは、CakePHPフレームワークで作成しています。
2. 本スクリプトは無保証です。自己責任で使用してください。このスクリプトを使用したいかなる損害に対しても、作者は一切の責任を負いません。
3. 設置および使用方法に関する質問は、配布サイトの掲示板にお願いします。ただし、必ず回答できるとは限りません。
   メールによる質問は、ご遠慮ください。

## 動作環境

### PHP5が使えるサーバ

###

### CookieおよびJavaScriptが有効なブラウザ

#### 動作保証

FireFox3.6
IE8.0

## 設置方法

### １．ファイル設置

#### * 運用向け

この設定は、WebサーバでDocumentRoot以外の領域にファイルを設置できる事を前提としています。
レンタルサーバなど、DocumentRootの設定を変更できない場合は、開発向け 設定を参照してください。
解凍したディレクトリの中身を、サーバの任意のパスに設置してください。
DocumentRoot以下には、app/webrootの中身を全部コピーしてください。
コピー後、ディレクトリおよびパーミッションを以下の通り設定してください。
コピー後の例

    /var/www/document/chara-shee
     ├ .htaccess [644]
     ├ app [755]
     │ ├ .htaccess [644]
     │ ├ config [777]
     │ │ ├ conf [777]
     │ │ ├ core.php [666]
     │ │ ├ database.php.install [666]
     │ │ ├ * [755] (その他、同梱のディレクトリ全て)
     │ │ └ *.* [644] (その他、同梱のファイル全て)
     │ ├ tmp [777]
     │ │ └ * [777] (その他、同梱のディレクトリ全て)
     │ ├ views [755]
     │ │ ├ themed [777]
     │ │ └ * [777] (その他、同梱のディレクトリ全て)
     │ ├ * [755] (その他、同梱のディレクトリ全て)
     │ └ *.* [644] (その他、同梱のファイル全て)
     ├ cake [755]
     ├ vendor [755]
     └ index.php [644]

    /var/www/html/(DocumentRoot）
    chara-shee
     ├ .htaccess [644]
     │ ├ media [777]
     │ │ └ transfer [777]
     ├ index.php [644]
     ├ * [755] (その他、同梱のディレクトリ全て)
     └ *.* [644] (その他、同梱のファイル全て)

コマンドの例

    $ mkdir /var/www/html/chara-shee
    $ cp -r /var/www/document/chara-shee/app/webroot/* /var/www/html/chara-shee/
    $ cp /var/www/document/chara-shee/app/webroot/.* /var/www/html/chara-shee/
    $ chmod -R 777 /var/www/html/chara-shee/media
    $ chmod -R 777 /var/www/document/chara-shee/app/tmp
    $ chmod 777 /var/www/document/chara-shee/app/views/themed
    $ chmod 777 /var/www/document/chara-shee/app/config
    $ chmod 666 /var/www/document/chara-shee/app/config/core.php
    $ chmod 666 /var/www/document/chara-shee/app/config/database.php.install

そして、DocumentRoot以下のindex.phpを、以下の通り編集してください。

    if (!defined('ROOT')) {
    //	define('ROOT', dirname(dirname(dirname(__FILE__))));
    	define('ROOT', DS.'var'.DS.'www'.DS.'document'.DS.'chara-shee'); // ソース本体 /var/www/document/chara-shee の場合
    }
    if (!defined('APP_DIR')) {
    //	define('APP_DIR', basename(dirname(dirname(__FILE__))));
    	define ('APP_DIR', 'app');
    }

また、お使いのサーバによっては .htaccessなどの設定が必要な場合がありますので、適宜設定してください。

#### ファイル設置についてもっと詳しい情報が欲しい場合

本スクリプトは、CakePHPフレームワークをベースにしています。
インストール方法はCakePHPの一般的なセットアップ手順に準じますので、CakePHPのインストール方法を参考にして下さい。

### ２．データベースのセットアップ

使用するMySQLデータベースを作成してください。
デフォルトの文字コードをUTF-8にしてください。

    $ mysql -u [ユーザ名] -h [DBホスト] -p

    mysql> CREATE DATABASE `[データベース名]` DEFAULT CHARACTER SET utf8;
    mysql> quit

### ３．インストーラ実行

IEなどのブラウザから、設置したディレクトリ(http://[サーバのURL]/chara-shee/ など)にアクセスしてください。
設置ファイルの設定が正しければ、インストール画面が表示されますので、以降、画面の指示に従って、データベース接続設定と初期設定を行なってください。
インストーラで設定したユーザは、自動的に管理人になります。
ID・パスワードは間違いが無い様、注意して入力してください。

### こんな時どうする

#### アクセスすると画面が真っ白

app/config/core.phpの"debug"設定を2にすると、エラーの原因が表示されるようになります。

    Configure::write('debug', 0); // 0→2

問題が解決した後は、再び 0 に戻してください。

#### セットアップに失敗した後、やり直すと動作がおかしい

ディレクトリを確認して、以下のファイル・ディレクトリがあったら削除してください。
app/config/catabase.php
代わりに
app/config/catabase.php.install
を再設置してください。

## インストール後の環境設定

### ログイン

ログイン画面から、インストーラで設定したID/パスワードでログインしてください。
画面右上の「管理画面」から、管理機能に移動してください。

### システム/プロフィールの設定

管理機能の「システム」から、システムの作成・設定ができます。
「システム作成」で作成して、「プロフィール設定」の[プロフィール設定追加]あるいは[インポート]から、このシステムで利用するプロフィール項目を設定してください。
* キャラクター作成後に追加/変更したプロフィール項目は、キャラクターの更新まで反映されない場合があります。

## その他

### バックアップについて

運用中のapp/config/core.phpを、必ずバックアップしておいてください。
core.phpには暗号化のキーコードが含まれています。これを失うと、ログインできなくなります。ご注意ください。

### 設定ファイルの変更

一部の設定は、インストーラや管理画面では変更できません。
下記を参考に、app/config/conf/以下の設定ファイルを変更してください。

### メールをSMTPで送信する

app/config/conf/mail.php を変更してください。
[例]

    // SMTP送信する
    Configure::write('Qdmailer.smtp', true);

    // SMTP設定
    // SMTP AUTH(認証が必要)
    Configure::write('Qdmailer.smtpServer', array(
    	'user' => '[SMTPユーザ名]',
    	'pass' => '[パスワード]',
    	'host' => '[SMTPサーバホスト]',
    	'port' => 587,
    	'from' => '[管理者アドレス]',
    	'protocol' => 'SMTP_AUTH',
    ));

### キャッシュしない/キャッシュ時間を短くする

app/config/conf/config.php を変更してください。
[例]

    /*
     * キャッシュ
     */
    // キャッシュの最大有効期限(秒)
    Configure::write('Cache.expireLong', 24 * 3600);
    Configure::write('Cache.expire', 1 * 3600);
    Configure::write('Cache.expireShort', 5 * 60); // (全体の新着など、更新が頻繁な物)
    // キャッシュを作成しない(常に最新の情報を表示しますが、動作が遅くなる場合があり
    Configure::write('Cache.disable', false);

### キャラクター画像の表示サイズをカスタマイズする

app/config/conf/upfile.php に設定を追加してください。
[例]

    /* 画像 */
    $xxs = array('convert' => 'original', 'fitCrop' => array(16, 16));
    $xs = array('convert' => 'original', 'fit' => array(32, 32));
    $s = array('convert' => 'original', 'fit' => array(64, 64));
    $m = array('convert' => 'original', 'fit' => array(120, 120));
    $l = array('convert' => 'original', 'fit' => array(150, 150));
    $ll = array('convert' => 'original', 'fit' => array(180, 180));
    $xl = array('convert' => 'original', 'fit' => array(300, 300));
    $fullPicture_m = array('convert' => 'original', 'fit' => array(800, 650));
    $fullPicture = array('convert' => 'original', 'fit' => array(525, 1000));
    $orig = array('convert' => 'original');

    // 追加
    $sq90 = array('convert' => 'original', 'fit' => array(90, 90));

    Configure::write('Media.filter.image', compact('xxs', 'xs', 's', 'm', 'l', 'll', 'xl', 'fullPicture_m', 'fullPicture', 'orig', 'sq90'));

Written by Cake