MANAGERクラスはブログやアイテム、プラグイン等の情報をメモリ上に保持するためのオブジェクトを定義するクラスです。v3.24現在、このクラスはnucleus/libs/MANAGER.phpで定義されています。
間違い、補足など、お気付きの点がありましたら、積極的に編集してください。プラグイン作りに必要な情報を、Wikiに集結できたら良いなと思っています。
システム全体で使用するMANAGERオブジェクトを単一に限定するために、グローバル変数の$managerを使用します。
singletonパターンを意識したメソッドinstanceが用意されていますが、PHP4ではうまく動作しません。
MANAGER MANAGER::instance()
singletonパターン実現のために用意されたメソッドですが、PHP4ではうまく動作しません。使用しないほうが無難なメソッドです。
array MANAGER::getItem(int itemid, bool allowdraft, bool allowfuture)
アイテムID等の条件からアイテム情報が入った配列への参照を返す
条件に合致するアイテムの情報が収められた配列への参照を返します。
条件に合致するアイテムが存在しない場合、0が返されます。
このメソッドは、スタティックにコールすることはできません。
void MANAGER::loadClass(string name)
引数で指定された名前のクラスがロードされていない場合、対応するNucleusコアのファイルをincludeしてそのクラスをロードします。
bool MANAGER::existsItem(int itemid, bool allowdraft, bool allowfuture)
引数で指定された条件に合致するアイテムの存在を確認します。
存在する場合trueが、しない場合falseが返されます。
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::existsCategory(int id)
データベースの情報を確認し、引数で与えられたIDを持つカテゴリーが存在すればtrueを、そうでなければfalseを返します。
BLOG MANAGER::getBlog(int blogid)
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::existsBlog(string name)
データベースの情報を確認し、引数で与えられた名前に対応するブログの存在をチェックします。
存在する場合trueが、しない場合falseが返されます。
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::existsBlogid(int id)
データベースの情報を確認し、引数で与えられたブログIDに対応するブログの存在をチェックします。
存在する場合trueが、しない場合falseが返されます。
このメソッドは、スタティックにコールすることはできません。
array MANAGER::getTemplate(string templateName)
テンプレートの名前からテンプレート情報が入った配列への参照を返す
このメソッドは、スタティックにコールすることはできません。
KARMA &MANAGER::getKarma(int itemid)
このメソッドは、スタティックにコールすることはできません。
void MANAGER::setParserProperty(string name, mixed value)
このメソッドは、スタティックにコールすることはできません。
mixed MANAGER::getParserProperty(string name)
このメソッドは、スタティックにコールすることはできません。
NucleusPlugin MANAGER::getPlugin(string name)
引数nameは完全なプラグインの名前です。たとえばNP_HelloWorldの場合、NP_HelloWorldそのままを使用します。
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::pluginInstalled(string name)
プラグインの名前からプラグインがインストールされているかどうかチェックする
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::pidInstalled(int pid)
プラグインIDからプラグインがインストールされているかどうかチェックする
このメソッドは、スタティックにコールすることはできません。
int MANAGER::getPidFromName(string name)
プラグインがインストールされていない場合-1が返されます。
逆関数に相当するものがグローバルファンクションに用意されています→getPluginNameFromPid。
このメソッドは、スタティックにコールすることはできません。
void MANAGER::clearCachedInfo(string what)
MANAGERオブジェクトが管理するメモリ上のキャッシュを消去
MANAGERが管理するメモリ上のキャッシュを消去します。
v3.23現在は
unset($this->cachedInfo[$what]);
とされているだけです。
引数whatの値は自由ですが、コアファイルでは’installedPlugins’(プラグインがインストールされているかどうかの情報)のみが使用されています。
このメソッドは、スタティックにコールすることはできません。
void MANAGER::notify(string eventName, array data)
PreItemなどのイベントを発生させます。それぞれのイベントについての詳細はNucleusプラグインイベント リファレンス (カテゴリ別)を参照してください。
このメソッドは、スタティックにコールすることはできません。
string MANAGER::addTicketToUrl(string url)
このメソッドは、スタティックにコールすることはできません。
void MANAGER::addTicketHidden()
新しく生成したチケットの情報が収められた(X)HTMLのinput要素を出力する
出力されるタグは以下のようになります。
<input type="hidden" name="ticket" value="(チケット)" />
このメソッドは、スタティックにコールすることはできません。
bool MANAGER::checkTicket()
リクエスト変数を確認して、正しいチケットの情報が含まれていればtrueを、そうでなければfalseを返します。
このメソッドは、スタティックにコールすることはできません。