Tadashi Okoshi
slash****@users*****
2005年 10月 25日 (火) 04:20:48 JST
Index: affelio_farm/admin/skelton/affelio/doc/application_programming.txt diff -u affelio_farm/admin/skelton/affelio/doc/application_programming.txt:1.1.1.1 affelio_farm/admin/skelton/affelio/doc/application_programming.txt:removed --- affelio_farm/admin/skelton/affelio/doc/application_programming.txt:1.1.1.1 Tue Oct 25 04:14:40 2005 +++ affelio_farm/admin/skelton/affelio/doc/application_programming.txt Tue Oct 25 04:20:48 2005 @@ -1,217 +0,0 @@ -========================================================================= -Affelio Programming Guide -========================================================================= - - CHANGES - ------- - Affelio API 1.0.1 May 12, 2005 - Affelio API 1.0 May 11, 2005 - -1.ãã¡ã¤ã«æ§æ -=================== - - affelio/ Affelioãã£ã¬ã¯ã㪠- affelio/apps/ ã¢ããªãã¼ã·ã§ã³rootãã£ã¬ã¯ã㪠- - affelio/apps/app1 åã¢ããªã±ã¼ã·ã§ã³ãã£ã¬ã¯ããªã - affelio/apps/app2 é æ¬¡ã¦ã¼ã¶ã«ãã£ã¦è¨ç½®ãããã - ... - - -ãåã¢ããªã±ã¼ã·ã§ã³ãã£ã¬ã¯ããªå ã®ãã¡ã¤ã«æ§æ - - AF_app.cfg Affelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦ã®è¨å®fileã - å¿ ããã®ååã§è¨ç½®ãããå¿ è¦ãããã - - 以ä¸ãåã¢ããªã±ã¼ã·ã§ã³åºæã®CGIãã¡ã¤ã«ãHTMLãã¡ã¤ã«ããã¼ã¿ - ä¿åç¨ãã£ã¬ã¯ããªãªã©ã¯ãåã¢ããªã±ã¼ã·ã§ã³ã®ãã£ã¬ã¯ããªä»¥ä¸ - ã«ããéãè¨ç½®æ¹æ³ã¯èªç±ã - - foo.cgi Affelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦åä½ãã - bar.html CGIãã¡ã¤ã«ãHTMLãã¡ã¤ã«ãªã©ã - - data/ ã¢ããªã±ã¼ã·ã§ã³åºæã®ãã¼ã¿ä¿åç¨ãã£ã¬ã¯ - ããªä¾ããã£ã¬ã¯ããªå ã®ãã¼ã¿ãã¡ã¤ã«ã¯ã - Affelioã®ã¦ã¼ã¶èªè¨¼ã«ããã¢ã¯ã»ã¹å¶å¾¡ãç¨ã - ã¦CGIããã®ã¿èªã¿è¾¼ã¾ãããã©ã¦ã¶ã«éä¿¡ãã - ããã¨ãæ³å®ãããããã®ããç´æ¥ãã©ã¦ã¶ãã - ãã£ã¬ã¯ããªãé²è¦§ã§ããªããã.htaccessã - è¨å®ãããã¨ãæ¨å¥¨ãããã - -2.AF_app.cfg -=================== - [this_installation]ã»ã¯ã·ã§ã³ - - .cfgãã¡ã¤ã«å ã®ãã®ã»ã¯ã·ã§ã³ã«ã¯ãã¢ããªã±ã¼ã·ã§ã³ã®ãä»å - ã®è¨ç½®ï¼ã¤ã³ã¹ãã¼ã«ï¼ã«specificãªæ å ±ãç¨æããããAffelio - ã¦ã¼ã¶ã¯ãåä¸ã®ã¢ããªã±ã¼ã·ã§ã³ããéãååã®ãã£ã¬ã¯ããªã« - è¤æ°è¨ç½®ã§ããããã®å ´åãAffelioã¦ã¼ã¶ã¯ãã®ã»ã¯ã·ã§ã³ã - ç·¨éãããã¨ãäºæ³ãããã - - title=ä¿ºã®æ¥è¨ Affelioç»é¢ã®ä¸é¨ã¿ãã«åºãã¿ã¤ãã« - - --------------------------------------------- - - [application]ã»ã¯ã·ã§ã³ - - applicationã»ã¯ã·ã§ã³ã«ã¯ãã¢ããªã±ã¼ã·ã§ã³èªä½ã®ååã - ãã¼ã¸ã§ã³ã¨è¨ã£ãæ å ±ãè¨å®ããããé常以ä¸ã®æ å ±ã¯ã - ã¢ããªã±ã¼ã·ã§ã³éçºè ã«ãã£ã¦è¨è¿°ãããAffelioã¦ã¼ã¶ã¯ - é常編éããå¿ è¦ã¯ãªãã - - app_name ã¢ããªã±ã¼ã·ã§ã³å - - app_version ãã¼ã¸ã§ã³çªå· - - app_desc ã¢ããªã±ã¼ã·ã§ã³ã«é¢ãã説æ - - app_desc ã¢ããªã±ã¼ã·ã§ã³ã®ä½è - - guest_index ã²ã¹ãåãããã©ã«ããã¼ã¸ã®ãã¡ã¤ã«å - (ã²ã¹ãã¿ãã§è¡¨ç¤ºããã) - - owner_index ãªã¼ãã¼åãããã©ã«ããã¼ã¸ã®ãã¡ã¤ã«å - (ãªã¼ãã¼ã¿ãã§è¡¨ç¤ºããã) - - action_types comma-separated list of action types. - Each action type is the atomic unit which - Affelio user can control access from other - users (via Affelio control panel). - - action_type_desc comma-separated list of action type - description. - - -3.CGIãã¡ã¤ã«ãè¡ãã¹ãåä½ -=================== - - Affelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦ã®åCGIããã°ã©ã ã¯ãAffelioã®ã¦ã¼ã¶èªè¨¼ - ã使ã£ãã¢ã¯ã»ã¹å¶å¾¡ãç¨ãã¦åä½ãã許å¯ãããã³ã³ãã³ãããã©ã¦ã¶ã¸ - è¿ä¿¡ããã - - ä¾ãã°Affelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦ã®ãæ²ç¤ºæ¿CGIãã¯ãã¦ã¼ã¶ããã®ã¢ã¯ - ã»ã¹ãAffelioã®ã¦ã¼ã¶èªè¨¼æ©æ§ã使ã£ã¦èªè¨¼ããããé²è¦§è¨±å¯ãä¸ãããã - ã¦ã¼ã¶ããã®ã¢ã¯ã»ã¹ã§ããã°ãæ²ç¤ºæ¿ã®HTMLãã¡ã¤ã«ããã©ã¦ã¶ã«éä¿¡ã - ããã¾ãããæ¸ãè¾¼ã¿ã許å¯ãããã¢ã¯ã»ã¹ã§ããã°ãã¦ã¼ã¶ããã®æ¸ãè¾¼ - ã¿ãä¿åããã以ä¸ã®ãããªåä½ããã¢ããªã±ã¼ã·ã§ã³ä¾ã¨ãã¦èããããã - - CGIããã°ã©ã ã®æ§é ã«é¢ãã¦ãAffelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦ã®CGIããã° - ã©ã ãé常ã®CGIããã°ã©ã ã¨ç°ãªãã®ã¯ã - - (1)ã¢ã¯ã»ã¹ã¦ã¼ã¶ã®ãAffelioã¦ã¼ã¶ã¨ãã¦ã®ã¢ã¯ã»ã¹æ¨©ã®ç¢ºèª - - (2)Affelioã®ç»é¢ã«åã¾ãå½¢ã§ã®HTMLåºå - - ã®é¨åã§ããããããããAffelioAPIã¨ãã¦æä¾ããã颿°ãå¼ã³åºãã㨠- ã§è¡ãã - - ï¼æ¢åã®CGIããã°ã©ã ãAffelioã¢ããªã±ã¼ã·ã§ã³ã¨ãã¦åä½ãã - ãããã«å¤æ´ããå ´åã¯ãä¸è¨2ç¹ãé©åã«è¿½å ããã°ããï¼ - - -4.ããã°ã©ãã³ã°ä¾ -=================== - - (apps/sampleapp/index.cgi ãåç §) - - -5. Affelio API -=================== - - Affelio APIã®åæå - ------------------- - - ã$ap = new AffelioApp(ConfigDir => Cwd::getcwd(), - cgi => $cgi ); - - IN: ConfigDir æ¬ã¢ããªã±ã¼ã·ã§ã³ã®ãµã¼ãå 絶対ãã¹ - cgi CGIã¸ã®åç § - - OUT: $ap AffelioAppã¸ã®åç § - - - Affelioã®æ HTMLã³ã¼ããåºåããAPI - ---------------------------------- - - ã$str = AffelioApp::get_HTML_header($HTMLtitle); - - IN: $HTMLtitle HTMLã®ã¿ã¤ãã« - - OUT: $str HTMLæåå (ãããé¨å) - - - ã$str = AffelioApp::get_HTML_footer(); - - OUT: $str HTMLæåå (ããã¿é¨å) - - - ç¾å¨ã®ã¢ã¯ã»ã¹è ã«é¢ããæ å ±ãåå¾ããAPI - ----------------------------------------- - ã$val = AffelioApp::get_visitor_info($info_name); - - IN: $info_name : "nickname" visitor's nickname - "afid" visitor's Affelio_ID (URL) - "type" visitor's type - "self", "f1", "f2", or "pb" - OUT: $val: value - - - æ¬ãã°ã¤ã³ã»ãã·ã§ã³ã¸ã®ãã¼ã¿ã®ä¿åã»ä¿åãããã¼ã¿ã®èªè¾¼ - ---------------------------------------------------------- - - (get) - ã$val = AffelioApp::get_session_param($param_name); - - (set) - ãAffelioApp::set_session_param($param_name, $val); - - - Affelioãµã¤ãã«é¢ããæ å ±ãåå¾ããAPI - -------------------------------------- - - ã$val = AffelioApp::get_site_info($info_name); - - IN: $info_name : "web_root" Affelioã®root URL - - OUT: $val: value - - - ãã®ã¢ããªã±ã¼ã·ã§ã³ã¤ã³ã¹ã¿ã³ã¹ã«é¢ããæ å ±ãåå¾ããAPI - --------------------------------------------------------- - - ã$val = AffelioApp::get_app_info($info_name); - - IN: $info_name : "install_title" install title - - OUT: $val: value - - - - Affelioãµã¤ãã®ãªã¼ãã¼ã«é¢ããæ å ±ãåå¾ããAPI - ------------------------------------------------ - - ã$val = AffelioApp::get_owner_info($info_name); - - IN: $info_name : "nickname" owner's nickname - "afid" owner's Affelio_ID (URL) - - OUT: $val: value - - - ç¾å¨ã®ã¢ã¯ã»ã¹è ãæ¬ã¢ããªå ã§è¨±å¯ãããã¢ã¯ã»ã¹ã調ã¹ãAPI - ----------------------------------------------------------- - - ã$ret = AffelioApp::check_access($action_type); - - IN: $action_type: AF_app.cfgå ã®action_typesã«æ¸ãè¾¼ãã - ã¢ã¯ã·ã§ã³ã"write", "read" ãªã©ã - - ã¾ããã¢ã¯ã·ã§ã³"DF_access"ã¯ãåºæ¬ç㪠- ã¢ããªã±ã¼ã·ã§ã³ã¸ã®ã¢ã¯ã»ã¹æ¨©ãæå³ãã - AF_app.cfgã«æç¤ºããªãã¦ãAffelioå´ã - ããã©ã«ãã§ä¿æããã - - OUT: $ret: 1 or 0 - - -EOF