84 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
| 
 | |
| Coding Convention
 | |
| ----------------
 | |
| 
 | |
| We are using the following coding convention
 | |
| 
 | |
| Graphically
 | |
| ----------------
 | |
| 
 | |
| The classes are structured like that.
 | |
| texts prefixed by "##" are comments to explain the convention with an example. Do not use them in your code. 
 | |
| 
 | |
| <?php
 | |
| ## The header below is on every head of php file use current year instead of 2012. ##
 | |
| /*
 | |
|  ----------------------------------------------------------------------
 | |
|  AlternC - Web Hosting System
 | |
|  Copyright (C) 2000-2012 by the AlternC Development Team.
 | |
|  https://alternc.org/
 | |
|  ----------------------------------------------------------------------
 | |
|  LICENSE
 | |
| 
 | |
|  This program is free software; you can redistribute it and/or
 | |
|  modify it under the terms of the GNU General Public License (GPL)
 | |
|  as published by the Free Software Foundation; either version 2
 | |
|  of the License, or (at your option) any later version.
 | |
| 
 | |
|  This program is distributed in the hope that it will be useful,
 | |
|  but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
|  GNU General Public License for more details.
 | |
| 
 | |
|  To read the license please visit http://www.gnu.org/copyleft/gpl.html
 | |
|  ----------------------------------------------------------------------
 | |
|  Purpose of file: Manage mailing-lists with Mailman
 | |
|  ----------------------------------------------------------------------
 | |
| */
 | |
| ## Enter the purpose of this file up there ^^ ##
 | |
| 
 | |
| ## the name of the class is the same as the file (m_dom, m_mailman...) ##
 | |
| class m_mailman {
 | |
| 
 | |
| 
 | |
| ## 2 blank lines here and between each functions, give it some space ;) ##
 | |
| ## the following line of -- allow you to visually quickly find a function ##
 | |
| ## then the comment after it is using /** notation, so that phpdoc can build a self-made documentation of our classes ##
 | |
|   /* ----------------------------------------------------------------- */
 | |
|   /** ## here we put a full long description of the function's behavior, in english ##
 | |
|    * ## this description may span multiple lines ##
 | |
|    * @param $domain string ## each param has its @param line, followed by the param name ($domain) type (string) and description ##
 | |
|    * @return array ## a @return line is added when the function returns anything, followed by the returned type and description ##
 | |
|    */
 | |
|   function enum_ml($domain = null, $order_by = array('domain', 'list')) {
 | |
| ## function which consist of more than one word are separated by _ ##
 | |
| ## private functions are prefixed by "private" and their name starts by "_" ##
 | |
|     global $err,$db,$cuid;
 | |
| ## use the globals for $db (database mapper), $cuid (uid of current alternc's user) $err (error/log mapper) 
 | |
|     $err->log("mailman","enum_ml");
 | |
| ## when calling an important function, log it that way ##
 | |
| ## when raising an error, use the following syntax ##
 | |
|     $err->raise("classname",_("text in english"));
 | |
|   }
 | |
| }
 | |
| /* at the end of a php-only file, we don't put a ?> */
 | |
| 
 | |
| ?>
 | |
| 
 | |
| Syntax in code :
 | |
| ----------------
 | |
| 
 | |
|   function names starting by "hook_" are hooks called that way:
 | |
| 
 | |
| global $hooks;
 | |
| $res=$hooks->invoke("hook_class_method_name",array($param1,$param2));
 | |
| 
 | |
| $params1 & 2 are sent as parameters to the hooked functions of each files.
 | |
| 
 | |
| the hook function name must have the CALLING class name after hook_ 
 | |
| like hook_admin_del_member for a hook in "admin" class.
 | |
| 
 | |
| $res is an array with the returned data as values, for each function called in a class. 
 | |
| The key in that array is the classname called.
 | |
| 
 |