2000-08-18 05:24:22 +02:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
< HTML >
< HEAD >
< META NAME = "GENERATOR" CONTENT = "SGML-Tools 1.0.9" >
< TITLE > phpGroupWare Application Development: The API< / TITLE >
< LINK HREF = "phpGW_Developers-HOWTO-6.html" REL = next >
< LINK HREF = "phpGW_Developers-HOWTO-4.html" REL = previous >
< LINK HREF = "phpGW_Developers-HOWTO.html#toc5" REL = contents >
< / HEAD >
< BODY >
< A HREF = "phpGW_Developers-HOWTO-6.html" > Next< / A >
< A HREF = "phpGW_Developers-HOWTO-4.html" > Previous< / A >
< A HREF = "phpGW_Developers-HOWTO.html#toc5" > Contents< / A >
< HR >
< H2 > < A NAME = "s5" > 5. The API< / A > < / H2 >
< H2 > < A NAME = "ss5.1" > 5.1 Introduction< / A >
< / H2 >
< P > phpGroupWare attempts to provide developers with a useful API to handle common tasks.< BR >
To do this we have created a multi-dimensional class $phpgw->.< BR >
This allows for terrific code organization, and help developers easily identify the file that the function is in.
2000-09-26 17:56:24 +02:00
All the files that are part of this class are in the inc/core directory and are named to match the sub-class.< BR >
2000-08-18 05:24:22 +02:00
Example:
2000-09-10 22:39:56 +02:00
< CODE > $phpgw->send->msg()< / CODE > is in the < CODE > inc/phpgwapi/phpgw_send.inc.php< / CODE > file.
2000-08-18 05:24:22 +02:00
< H2 > < A NAME = "ss5.2" > 5.2 Basic functions< / A >
< / H2 >
< H3 > $phpgw->link< / H3 >
< P > < CODE > $phpgw->link($url)< / CODE > < BR >
Add support for session management. ALL links must use this, that includes href's form actions and header location's.< BR >
2000-09-26 17:56:24 +02:00
If you are just doing a form action back to the same page, you can use it without any parameters.< BR >
2000-08-18 05:24:22 +02:00
This function is right at the core of the class because it is used so often, we wanted to save developers a few keystrokes.
Example:
< HR >
< PRE >
< form name=copy method=post action="< ?php echo $phpgw->link();?>">
2000-09-26 17:56:24 +02:00
/* If session management is done via passing url parameters */
2000-08-18 05:24:22 +02:00
/* The the result would be */
/* < form name=copy method=post action="somepage.php?sessionid=87687693276?kp3=kjh98u80"> */
< / PRE >
< HR >
< H2 > < A NAME = "ss5.3" > 5.3 Application Functions< / A >
< / H2 >
< P >
< H3 > $phpgw->common->appsession< / H3 >
< P > < CODE > $phpgw->common->appsession($data)< / CODE > < BR >
Store important information session information that your application needs.< BR >
2000-09-26 17:56:24 +02:00
< CODE > $phpgw->appsession< / CODE > will return the value of your session data is you leave the parameter empty [i.e. < CODE > $phpgw->appsession("")< / CODE > ], otherwise it will store whatever data you send to it.< BR >
You can also store a comma delimited string and use < CODE > explode()< / CODE > to turn it back into an array when you receive the value back.< BR >
2000-08-18 05:24:22 +02:00
Example:
< HR >
< PRE >
$phpgw->common->appsession("/path/to/something");
echo "Dir: " . $phpgw->common->appsession();
< / PRE >
< HR >
< H2 > < A NAME = "ss5.4" > 5.4 File functions< / A >
< / H2 >
< H3 > $phpgw->vfs->read_file< / H3 >
< P > < CODE > $phpgw->vfs->read_file($file)< / CODE > < BR >
Returns the data from $file.< BR >
You must send the complete path to the file.< BR >
Example:
< HR >
< PRE >
$data = $phpgw->vfs->read_file("/some/dir/to/file.txt");
< / PRE >
< HR >
< P >
< H3 > $phpgw->vfs->write_file< / H3 >
< P > < CODE > $phpgw->vfs->write_file($file, $contents)< / CODE > < BR >
Write data to $file.< BR >
You must send the complete path to the file.< BR >
Example:
< HR >
< PRE >
$data = $phpgw->vfs->write_file("/some/dir/to/file.txt");
< / PRE >
< HR >
< P >
< H3 > $phpgw->vfs->read_userfile< / H3 >
< P > < CODE > $phpgw->vfs->read_userfile($file)< / CODE > < BR >
Returns the data from $file, which resides in the users private dir.< BR >
Example:
< HR >
< PRE >
$data = $phpgw->vfs->read_userfile("file.txt");
< / PRE >
< HR >
< P >
< H3 > $phpgw->vfs->write_userfile< / H3 >
< P > < CODE > $phpgw->write_userfile($file, $contents)< / CODE > < BR >
Writes data to $file, which resides in the users private dir.< BR >
Example:
< HR >
< PRE >
$data = $phpgw->vfs->write_userfile("file.txt");
< / PRE >
< HR >
< P >
< H3 > $phpgw->vfs->list_userfiles< / H3 >
< P > < CODE > $phpgw->vfs->list_userfiles()< / CODE > < BR >
Returns an array which has the list of files in the users private dir.< BR >
Example:
< HR >
< PRE >
$filelist = array();
$filelist = $phpgw->vfs->list_userfiles();
< / PRE >
< HR >
< H2 > < A NAME = "ss5.5" > 5.5 Email/NNTP Functions< / A >
< / H2 >
< P >
< P >
< H3 > $phpgw->send->msg< / H3 >
< P > < CODE > $phpgw->msg->send($service, $to, $subject, $body, $msgtype, $cc, $bcc)< / CODE > < BR >
Send a message via email or NNTP and returns any error codes.< BR >
Example:
< HR >
< PRE >
$to = "someuser@domain.com";
$subject = "Hello buddy";
$body = "Give me a call\n Been wondering what your up to.";
$errors = $phpgw->msg->send("email", $to, $subject, $body);
< / PRE >
< HR >
< HR >
< A HREF = "phpGW_Developers-HOWTO-6.html" > Next< / A >
< A HREF = "phpGW_Developers-HOWTO-4.html" > Previous< / A >
< A HREF = "phpGW_Developers-HOWTO.html#toc5" > Contents< / A >
< / BODY >
< / HTML >