テンプレートとFirstClassオブジェクトの連携 
 
  
  
FirstClassのオブジェクトについて 
FirstClassのオブジェクトとは、FirstClassサーバ上にあるすべてのアイテムのことを指します。テンプレートは、FirstClassのオブジェクトを表示するために使用されます。Webテンプレートをカスタマイズするには、さまざまな種類のオブジェクトと、そのオブジェクトを表示するテンプレートの作成方法について理解する必要があります。オブジェクトは以下の3種類に分類されます。 
・フォームオブジェクト 
・一覧オブジェクト 
・例外 
  
  
フォームオブジェクト 
フォームオブジェクトとは、サーバ上にあり、データを格納しているフォームのことです。フォームオブジェクトには以下の種類があります。 
・メールフォーム(読み取り専用バージョンと編集可能バージョン) 
・ドキュメント(読み取り専用バージョンと編集可能バージョン) 
・memフォーム(編集専用) 
・システムフォーム(読み取り専用バージョンと編集可能バージョン) 
・カレンダーフォーム(読み取り専用) 
メールフォーム(読み取り専用バージョンと編集可能バージョン) 
メールフォームはデータを含むフォームで、サーバ上に存在し、特に送信動作を行うために使用します。メールフォームには以下の種類があります。 
・[新規メッセージ]フォーム 
・[電話メモ]フォーム 
・[ファイルの転送]フォーム 
ドキュメント(読み取り専用バージョンと編集可能バージョン) 
ドキュメントはサーバ上に保存されるアイテムですが、送信されることはありません(送信動作を行いません)。 
memフォーム(編集専用) 
memフォームは架空のフォームで、サーバに上存在するオブジェクトではありませんが、サーバ上に存在するかのように動作します。memフォームはドキュメントフォームと同じように、保存はされますが送信はされません。このフォームは一定の動作に関連付けられたフォームで、以下の種類があります。 
・[自動登録]フォーム 
・[パスワードの変更]フォーム 
システムフォーム(読み取り専用バージョンと編集可能バージョン) 
システムフォームは、サーバ上に存在し、FirstClassによって使用されるオブジェクトです。ただし、このフォームを作成または削除することはできません。システムフォームには以下の種類があります。 
・[基本設定]フォーム 
・[システムプロファイル]フォーム 
カレンダーフォーム(読み取り専用) 
カレンダーは、一覧表示ではなく、月表示形式や週表示形式で表示される場合にフォームとみなされます。 
  
  
一覧オブジェクト 
一覧オブジェクトは一覧形式で表示されます(例えば、メールボックス内のメッセージ一覧や、会議室内のドキュメント一覧など)。どの一覧も複数のテンプレートで構成され、負の値のID番号を持っています。 
一覧オブジェクトには以下の種類があります。 
・検索結果の一覧 
・ディレクトリの一覧 
・在席確認の一覧 
・履歴の一覧 
コンテナの一覧とリーフオブジェクト 
コンテナは、他のサブコンテナとリーフオブジェクトの一覧情報を保持および表示します。リーフオブジェクトは、FirstClassクライアントの分割表示でコンテナとは異なるペインに一覧表示される、コンテナ以外のアイテムを指します。コンテナオブジェクトには、例えば以下のようなものがあります。 
・会議室 
・フォルダ 
・カレンダー  
リーフオブジェクトには、例えば以下のようなものがあります。 
・メッセージ 
・ドキュメント 
・ブックマーク 
・予定 
・作業 
・アップロードファイル   
コンテナの一覧のフィルタリング 
コンテナオブジェクトとリーフオブジェクトの一覧を出力する際に、範囲を限定できる機能があります(ページのロード時間を短縮するために「ページ区切り」を挿入する場合に、この機能はよく使用されます)。コンテナとリーフオブジェクトは、どちらも各々の出力範囲設定を保持します。これにより、nItems、nFolders、FirstIt em、FirstFolder、LastItem、およびLastFolderなどを使用して、URLパラメータレベルで範囲を設定できます。また、コンテナ一覧から削除されたアイテムを参照する場合は、「Show deleted」URLパラメータを使用します(例:<X-FC-OBJURL>?Showdeleted = 1")。 
 注意 
タグやアイテムを3つ以上記述しても、3番目以降のタグやアイテムは無視されます。インターネットサービスが読み取るのは、オブジェクトURLとテンプレートコードのどちらの場合も、最初の2つのタグまたはアイテムだけです。  
コンテナの一覧の並べ替えとグループ化 
並べ替えとグループ化を行うと、URLパラメータで指定した基準で一覧が並べ替えられます。デフォルトでは、並べ替えパラメータは、クライアントで設定されているパラメータに従います。並べ替えとグループ化の動作を変更する場合は、URLパラメータを使用します。URLパラメータの構文は以下の通りです。 
[I|F]table[commit]=SortCol[_GroupCol] 
このうち、 
・SortColは、列の並べ替えを変更します。 
・GroupColは、列のグループ化を変更します。 
パラメータは、SortColとGroupColのどちらの場合でも、([-] ColID +1)です。(ColID + 1)は、評価される数式です。SortColが0より小さい場合は、降順で並べ替えることを意味します。GroupColが0より小さい場合は、グループを折りたたむことを意味します。 
このうち、 
・[commit]は、新しい並べ替えまたはグループの列をサーバに保存します(変更内容をコミットします)。 
・[I|F]は、アイテムまたはフォルダを並べ替えます([I]リテラル項を使用する前にビューに分割があることを確認してください)。 
現在有効になっている列を確認するには、X-FC-LAYOUTタグを参照してください。 
 注意 
X-FCタグおよびその他のスクリプト変数の詳細については、FirstClassオンラインにアクセスして、[Conferences]>[Peer to Peer Support]>[FirstClass Webmasters]>[FAQs]を参照してください。 
コンテナのデフォルトの一覧表示 
コンテナオブジェクトのデフォルトの一覧表示では、複数のテンプレートが組み合わされて表示されます。具体的には5つの部分が組み合わされ、以下の順序で表示されます。 
1 ヘッダ用テンプレート(-1および-10) 
2 サブコンテナの一覧用テンプレート(-11、-12、および-14) 
3 セパレータ用テンプレート(-15) 
4 リーフオブジェクトの一覧要点プレート(-16から-18) 
5 フッタ用テンプレート(-2) 
コンテナの一覧表示で必ずしも上記のすべてが必要ではない場合は、一覧表示させたい最後のテンプレートに<X-FC-HEADER-ONLY>タグを追加して、その時点で処理を中止させることができます。 
コンテナの構成要素の一覧表示 
インターネットサービスには、(サブコンテナやリストなど)含まれるオブジェクトの種類に基づいて一覧をフィルタリングする機能が用意されています。コンテナのURLにパラメータを追加することによって、このような方法で一覧を取得できます。必要となるURLパラメータは以下の通りです。 
・サブコンテナだけをフィルタリングする場合は、「Folders」URLパラメータを使用します。 
・リーフオブジェクトアイテムだけをフィルタリングする場合は、「Items」URLパラメータを使用します。  
・両方を結合した一覧の場合は、両方のパラメータを使用します。 
すべてのパラメータが、-205、-206、および-207テンプレートを使用します。 
以下は、3つのケースすべてに適用できる記述例です。 
[<X-FC-OBJURL>?Folders = 1-10] 
このURLによって、コンテナ内にある最初の10個のサブコンテナが一覧表示されます。 
 注意 
フィルタリングの引数は、filter=first-last構文を使用することで、ページ区切りのための引数としても使用できます。詳細については、このドキュメントのフィルタに関する説明を参照してください。 
検索結果の一覧 
[検索]フォームは、FirstClassで検索の基準を設定するためのシステムフォームです。フォームIDは8000です。(ID8000のシステムフォームを使用して)検索を実行すると、検索結果が以下のテンプレートを使用して表示されます。 
・-300(検索一覧のヘッダ) 
・-301(検索一覧のアイテム) 
・-302(検索一覧のアイテム進捗) 
このテンプレートは、変更された検索フォルダを表示するために使用されます。 
・-303(検索一覧のフッタ) 
ディレクトリの一覧 
FirstClassのディレクトリとは、システムに登録されているすべてのアイテムの一覧で、メールの宛先に指定できます(ユーザ、会議室、コンタクト、エイリアスなど)。ディレクトリの一覧には以下の種類があります。 
・ディレクトリの閲覧制限 
・ディレクトリの検索結果の一覧 
・名前の検証 
・在席確認 
ディレクトリの閲覧制限 
ディレクトリのフィルタリング用パラメータは、ディレクトリの一部だけを表示するために使用されます。通常、ディレクトリには膨大な数のアイテムがあるため、ユーザがその一部だけを表示する場合に有効です。 
検索を実行すると、種類または名前に基づいてフィルタリングが行われます。種類に基づくフィルタリングの場合は、以下のディレクトリエントリをフィルタリングできます。 
・ローカル名(ローカルシステムのユーザとすべての登録アドレス) 
・リモート名(ゲートウェイシステム上のユーザ) 
・会議室(ユーザがディレクトリ一覧で閲覧可能なすべての会議室) 
・コンタクト(すべての登録アドレス) 
・インターネットエイリアス(すべてのインターネットアドレスエイリアス) 
上記のフィルタはすべて整数で指定します。「有効」にする場合は1を、「無効」にする場合は0をURLパラメータで使用します。デフォルトにフィルタリング設定は、local/remote/conferenceです。 
名前に基づくフィルタリングの場合、名前全体または名前の一部で検索できます。どちらの場合も、「srch」パラメータを使用します。また、ブラウザを使用している場合は、「charset」パラメータをご利用のシステムの正しい文字セット(ISO文字セットコード)に設定することをお勧めします。 
ディレクトリの検索結果の一覧 
単純なディレクトリの一覧を開く場合(ユーザにメールを送信する、ユーザカレンダーを開く、プロフィールを開く場合など)には、「<X-FC-LOGIN>Directory」URLを使用します。このようなディレクトリ一覧に使用するテンプレートは、以下の通りです。 
・-100(ディレクトリのフォーム) 
・-104(ディレクトリのフォームのフッタ) 
ディレクトリの参照を行うには、ディレクトリの検索結果の一覧を表示する「<X-FC-LOGIN>Directory/Lookup」URLを使用します。このようなディレクトリ一覧に使用するテンプレートは、以下の通りです。 
・-100(ディレクトリのフォーム)  
・-101(ディレクトリ一覧のヘッダ) 
・-102(結果が複数ある場合は複数必要)、または-105(結果なし) 
・-103(ディレクトリ一覧のフッタ) 
名前の検証 
フィールドの名前を検証するには、「<X-FC-OBJURL SLASH>Lookup」URLを使用します。このうち、<X-FC-OBJURL>の部分は、どのようなオブジェクトの名前を検証する場合でも使用します(名前の検証後、サーバがこの部分を名前に置き換えます)。  
一部のオブジェクト(備品カレンダーや場所カレンダーなど)はディレクトリの一覧への表示が制限されているため、フィルタリングが使用されます。このようなディレクトリ一覧に使用するテンプレートは、以下の通りです。 
・-100(ディレクトリフォーム)  
・-101(ディレクトリ一覧のヘッダ) 
・-102(名前要求ごとに1つ) 
・-105(名前要求がある場合のみ) 
・-103(ディレクトリ一覧のフッタ) 
名前検証では、以下の特別なパラメータを利用できることがあります(場合によっては必須となります)。 
・Operation 
・Insert|Insert Multi 
このパラメータは、受信者一覧に挿入する受信者を検索するために使用します。このInsert|Insert Multiパラメータは、さらに以下のパラメータを使用します。 
・Field ID = フィールドID 
これは、挿入するフィールドを指定するパラメータで、必ず記述してください。 
・[Index = インデックス番号] 
このパラメータは、一覧内で受信者名を挿入する場所を指定します。 
・[標準のディレクトリ用パラメータ] 
このパラメータは、ディレクトリのフィルタリングに使用する標準のディレクトリ用パラメータです。 
Insertパラメータから条件に一致するただ1つの受信者名が返されると、その受信者名がサーバ上のオブジェクトに直接挿入されます。例えば、メッセージを開いて完全に一致する名前を[宛先]フィールドに入力すると、その名前が[宛先]フィールドの一覧に自動的に追加されます。ディレクトリの一覧は必要ありません。Insert MultiパラメータはInsertパラメータと同じ構文を使用しますが、サーバ上のオブジェクトに複数の名前を挿入する場合に使用します。 
・Delete 
Deleteパラメータは、受信者一覧から名前を削除するために使用します。有効なパラメータは以下の通りです。 
・Field ID = フィールドID 
このパラメータは、削除対象のフィールドを指定します。 
・[Index = インデックス番号]|[client ID = クライアントID] 
このパラメータには、一覧内の位置によって名前を削除するindexパラメータ(一度に1つ)か、または(クライアントIDの先頭のインスタンスを削除)1つ以上のclient IDパラメータを入れる必要があります。 
Indexパラメータの例 
[宛先]一覧に名前1、名前2、および名前3があり、このURLによって名前1を削除する場合の例は、以下の通りです。 
<X-FC-OBJURL SLASH>Lookup?Operation=Deleted&FieldID=9&Index=0> 
・Add 
Addパラメータは、受信者一覧から名前を追加するために使用します。有効なパラメータは以下の通りです。 
・Field ID = フィールドID 
このパラメータは、追加先のフィールドを指定します。 
・[Index = インデックス番号] 
このパラメータは、一覧内で新しい名前を挿入する場所を指定します。 
・Client ID = クライアントID 
このパラメータには、1つ以上のクライアントIDが必要です。Indexを指定した場合、クライアントIDは降順で追加されます。指定しない場合、順序は設定されません。 
在席確認の一覧 
在席確認の一覧には、現在ログインしているユーザのうち、閲覧が許可されている全ユーザが表示されます。在席確認一覧を開くには、「<X-FC-LOGIN>whosonline」URLを使用します。この一覧に使用するテンプレートは以下の通りです。  
・-400(在席確認のヘッダ) 
・-401(在席確認のアイテム) 
・-402(在席確認のフッタ) 
 注意 
X-FCタグおよびその他のスクリプト変数の詳細については、FirstClassオンラインにアクセスして、[Conferences]>[Peer to Peer Support]>[FirstClass Webmasters]>[FAQs]を参照してください。 
履歴の一覧 
履歴の一覧には、リーフオブジェクト(カレンダーの予定、メッセージ、ドキュメントなど)の履歴が表示されます。在席確認一覧を開くには、「<X-FC-LOGIN>whosonline」URLを使用します。  
この一覧に使用するテンプレートは以下の通りです。 
・-110(履歴のヘッダ) 
・-111(履歴のアイテム) 
・-112(履歴一覧のフッタ) 
  
  
例外 
例外とは、オブジェクトでも一覧でもないものを指します。例外には、ステーショナリ、インスタントメッセージ、モニタなどがありますただし、フィルタリングされたコンテナの一覧には、この例外がサブコンテナ内に表示されます。本来、インターネットサービスはこのようなオブジェクトをWebに表示しません。 
 |