-
Notifications
You must be signed in to change notification settings - Fork 0
isuka/em_reserve
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
#------------------------------------------------------------------------------# # # # Evaluation Machine Reserve # # # #------------------------------------------------------------------------------# 複数の部署が評価機を週単位で予約するためのツール。 予約開始曜日から6日間予約を受付し、7日目は予約の調整を行うため予約不可にする。 1週間経過すると自動的に日付が切り替わる。 予約が入るとトップページに予約状況が表示される。予約がない場合は日付のみ表示。 本ツールの画面は以下。 [ユーザモード] - View : 現在の予約状況を表示する画面。 - Post : 予約を行う画面。 - Schedule : 評価機の予定を表示する画面。 - Admin : 管理モードへのログイン画面。 [管理モード] - Reserve : Viewの1週間前の予約状況が表示される。 - Mail : 予約状況の自動メール配信画面。(未実装) - Schedule : ユーザモードのScheduleの編集画面。 チェックボックスにチェックした日は予約不可となる。 テキストボックスへはカレンダーにメッセージを表示する。 - Log : 生ログデータの表示/編集画面。 - Time Zone : タイムゾーンのON/OFF設定画面。 - Setting : 各種設定画面。 Login Timeoutは管理モードで操作を行わなかった時にログアウト するまでの時間。 Post Available Controlは特定曜日の予約を制限したい場合に使用。 初期設定が必要な変数は以下。 $LOG_BG_COLOR : Viewで表示されるログの背景色。 $RSV_BASE_WDAY : 予約受付開始曜日。 $CAL_BASE_WDAY : カレンダーに予約状況を表示する開始曜日。 通常は$RSV_BASE_WDAYの翌日。 $MY_SECTION : メール宛先で自部署を最後に記述するための自部署設定。 メール機能が未実装なので意味なし。 $MAIL_DOMAIN : Post画面でデフォルトで表示するメールドメイン。 $SITE_TOP : サイト名。 ファイルフォーマットは以下。 -------------------------------------------------------------------------------- Log File [ファイル] $LOG_FILE [記録方法] Tab区切り [変数]<global> $machine : 予約装置名 $rsv_day : 予約日 $zone_num : 0(reserve) $key : 1回の投稿ごとにカウント、ログの並び替えのキーとして使用 $log_num : ログ1件ごとにカウント $rsv_day_num : 0(reserve) $zone_begin : 予約の開始時間(zone表示) $zone_end : 予約の終了時間(zone表示) $rsv_time : 予約時間帯名(zone定義名) $section : 予約者所属部署 $name : 予約者名 $pbx : 予約者内線 $mail : 予約者メールアドレス $usage : 装置使用目的 $post_time : 予約投稿時間 -------------------------------------------------------------------------------- Module Control File [ファイル] $MCFILE [記録方法] カンマ区切り [変数]<global> $mcf[ 0] : Admin Pass [ 1] : reserved(Login ID) [ 2] : reserved(Login IP) [ 3] : Login Time Out [ 4] : [ 5] : Current Time Zone [ 6] : Post Control [ 7] : Calender Color List [ 8] : Scheduled Day [ 9] : Machine List [10] : Section List -------------------------------------------------------------------------------- Lock File [ファイル] $LOCK_FILE [記録方法] Tab区切り [変数]<my> $time : Login Time(UNIX Time) $id : Login ID -------------------------------------------------------------------------------- Zone List [ファイル] $ZONE_LIST [記録方法] Tab区切り [変数]<my> $key : レコード番号、ファイル内で一意 $zone : Zoneのセット番号、複数の時間帯管理用 $name : Zoneの名前(表示名) $begin : Zoneの開始時刻(zone値) $end : Zoneの終了時刻(zone値) $valid : Zoneの有効化フラグ 無効(=0)にするとPost画面に表示されない $view : Zoneの表示フラグ 無効(=0)にするとカレンダーに表示されない $flag : Combinationフラグ 有効(=1)にすると複数のZoneの組み合わせである事を表す $cmb : $flagが有効な時組み合わせるZoneの$keyを格納する 尚$keyは同一の$zoneでなければならない 本スクリプトでは1日を10分刻みで144に分割して管理し、 投稿時の時間帯、カレンダーの表示にZone Timeを使用する。 [0:00 - 0:10]の時間帯をzone = 0として 以後[0:10 - 0:20] = 1, [0:30 - 0:40] = 2,.. , [23:50 - 24:00] = 143 とzone番号を割り振っている。 各zoneの値は%zone_hashに格納されている。
About
複数の部署が評価機を週単位で予約を入れられるツール。
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published