This doc is a listing of the compatibility between Perl, Python, and Php
and various modules. Language Interchangeable means that Perl, Php, and Python
behave in the same way, and if method creates data (like encryption
or data conversion) the other languages will able to deal with it
properly.
| Module | Perl | Php | Python |
Method Interchangeable? |
| Email::Send_Email |
Yes | -- | -- |
| Constants::Get_Constants | Yes | | |
| Constants::Get_Dbh | | | |
| Constants::Get_DB_Constants | Yes | | |
| Encrypt:Blowfish | Yes | Yes | Yes |
| Encrypt:CAST5 | Yes | Yes | Yes |
| Encrypt:DES | Yes | Yes | Yes |
| Encrypt:DES3 | Yes | Yes | Yes |
| Encrypt:IDEA | Yes | Yes | Yes |
| Encrypt:RC4 | Yes | | |
| Encrypt:RC5 | Yes | Yes | Yes |
| Encrypt:RC6 | Yes | | |
| Encrypt:ARC2 | | Yes | Yes |
| Encrypt:ARC4 | | | To Do |
| Encrypt:AES | | | To do |
| Set | Yes | Yes | Yes |
| Get | Yes | Yes | Yes |
| Convert::Escape_Link | Yes | | Yes |
| Convert::Unescape_Link | Yes | | Yes |
| Convert::Convert_Html | Yes | | Yes |
| Convert::Clean_String | Yes | | Yes |
| Convert::Gzip Gunzip | Yes | | |
| Convert::Uudecode Uuencode |
Yes | | DoingYes |
| Convert::Zip Unzip |
Yes | | DoingYes |
| Convert::Base64_Encode Base64_Decode |
Yes | Doing | Yes |
| Convert::Base64_Encode_File Base64_Decode_File |
| | Yes |
| Convert::Binhex_Encode Binhex_Decode |
Yes | Doing | Yes |
| Convert::Ord Chr |
Yes | Doing | Doing |
| Convert::Hex_Encode Hex_Decode |
Doing | Doingx | Yes |
| Convert::Bzip_Encode Bzip_Decode |
No | Yes | No |
| File::File_Query | Yes | | Yes |
| File::Get_Temp_FileName | Yes | | Yes |
| File::Delete_Temp_FileName | Yes | | Yes |
| Xml::Simple_Tree | Yes | | Yes |
| Xml::Xml_Encode | Yes | | Yes |
| Xml::Xml_Decode | Yes | | Yes |
| Xml::Validation_DTD | Yes | | Yes |
Email::Send_Email
Arguements: 'header', 'body'
Purpose: Just sends an email message out.
Constants::Get_Constants
Arguements:
- 'server_type' = one of 'postgresql','mysql','oracle','db2'
- 'variables' = the variables that need to be passed to the database
module. This can change depending on the module. We will clean
this up.
Purpose: Returns as hash with these values:
- 'dbh'
- 'tempdir'
- 'web_root' = webroot of server.
- 'server_root' = server root of webserver.
- 'dbh_types' = 'postgresql','mysql','oracle','db2'
- 'dbh_error'
- 'dbh_success'
- 'dbh_config'
Constants::Get_Dbh
This is an internal module. It tries to connect to the database selected.
Use the Perl module as a base for Python and PHP.
Constants::Get_DB_Constants
This is an internal module. It just stores all the variables when
trying to connect to a database. Use the Perl module as a base for Php and
Python.
Encrypt::Do_It
This is an internal method that actually does the encyrption/decryption.
Ecnrypt
Each module will have Pad_Key and Pad_Data. They will each take two arguements:
'Data' -- the actual data or key.
'Size' -- the size we want to pad in case it is of les length. Pad with the
null character ascii 0.
All the Encrypt methods take three arguements:
Data -- data to encrypt/decrypt.
Key -- optional key. Use default key otherwise.
Mode -- the mode we want to use, default being ECB. We should only use
ECB for now.
Set and Get
The Set module sets data in the database. For each table named TABLE in the
database, you will have these methods:
- Set_TABLENAME
- 'command' = one of 'insert','update','delete','purge','unpurge','purgeone', 'unpurgeone','undelete','copy','change'.
- 'id' = primayr id key of table you want to change.
- 'fields' = the fields you want to change, if appropriate.
-
Info -- takes two arguements and returns data from table. Do not pass the
arguements as a hash, but just an array. First arguement is the tablename
and the second if the primary key id.
-