Difference between revisions of "Freeside:1.7:Documentation:Developer"

From Freeside
Jump to: navigation, search
((Invoice) Events)
 
(53 intermediate revisions by 15 users not shown)
Line 1: Line 1:
=== Price plans ===
+
= Introduction =
 +
 
 +
NOTE!  Developers are recommended to work with 1.9 at this time.  Only maintenance and security changes are being made on the 1.7 branch.
 +
 
 +
Please consider sharing your modifications with the community and helping integrate them into the standard code!
 +
 
 +
[http://freeside.biz/cgi-bin/mailman/listinfo/freeside-devel/ Subscribe] to the freeside-devel mailing list.  Send your changes as unified diffs (diff -u).  If possible, send changes against current CVS HEAD and also any branch they should be applied to (i.e. FREESIDE_1_7_BRANCH).  However, if all you have is diffs against a release, well, probably best to send what you have rather than waiting.
 +
 
 +
Also note that the [http://www.fsf.org/licensing/licenses/agpl-3.0.html license] requires that you provide source code if you provide hosted access to a modified Freeside instance.
 +
 
 +
= Signup and self-service =
 +
 
 +
You can of course customize the signup and self-service templates as well as plug into the self-service API from Perl, PHP or any other language via XML-RPC.  See the [[Freeside:1.7:Documentation:Developer/FS/SelfService|FS::SelfService API]]. 
 +
 
 +
There are notes for the existing [[Freeside:1.7:Documentation:Developer:signup.cgi|signup.cgi]], [[Freeside:1.7:Documentation:Developer:signup.html|signup.html]] or [[Freeside:1.7:Documentation:Developer:success.html|success.html]] as well.
 +
 
 +
= Backend plugins =
 +
 
 +
The backend code is structured to make it easy to add "plugins" of various types.  1.7 allows you to easily add new price plans and exports.  1.9 extends this and additionally allows event plugins (conditions and actions) and new kinds of service tables.
 +
 
 +
== Price plans ==
  
 
[[Freeside:1.7:Documentation:Developer:Price Plans|Price plans]]
 
[[Freeside:1.7:Documentation:Developer:Price Plans|Price plans]]
  
=== Exports ===
+
== Exports ==
  
 
[[Freeside:1.7:Documentation:Developer:Exports|Exports]]
 
[[Freeside:1.7:Documentation:Developer:Exports|Exports]]
  
=== (Invoice) Events ===
+
= Additional developer information =
 +
 
 +
== Schema changes ==
  
...refactor soon...
+
[[Freeside:1.7:Documentation:Developer:Schema changes|Schema changes]] - Quick documentation on how to make schema changes
  
=== Schema changes ===
+
= API documentation =
  
[[Freeside:1.7:Documentation:Developer:Schema changes|Schema changes]] - Quick documentation on how to make schema changes
+
[[Freeside:1.7:Documentation:Developer/FS|1.7 API documentation]]

Latest revision as of 13:25, 26 July 2009

Introduction

NOTE! Developers are recommended to work with 1.9 at this time. Only maintenance and security changes are being made on the 1.7 branch.

Please consider sharing your modifications with the community and helping integrate them into the standard code!

Subscribe to the freeside-devel mailing list. Send your changes as unified diffs (diff -u). If possible, send changes against current CVS HEAD and also any branch they should be applied to (i.e. FREESIDE_1_7_BRANCH). However, if all you have is diffs against a release, well, probably best to send what you have rather than waiting.

Also note that the license requires that you provide source code if you provide hosted access to a modified Freeside instance.

Signup and self-service

You can of course customize the signup and self-service templates as well as plug into the self-service API from Perl, PHP or any other language via XML-RPC. See the FS::SelfService API.

There are notes for the existing signup.cgi, signup.html or success.html as well.

Backend plugins

The backend code is structured to make it easy to add "plugins" of various types. 1.7 allows you to easily add new price plans and exports. 1.9 extends this and additionally allows event plugins (conditions and actions) and new kinds of service tables.

Price plans

Price plans

Exports

Exports

Additional developer information

Schema changes

Schema changes - Quick documentation on how to make schema changes

API documentation

1.7 API documentation