389 Commits

Author SHA1 Message Date
ethem
6b1d27020d Ported AUTHORIZE_ECHECK changes into HEAD. (cvs update -j HEAD -j AUTHORIZE_ECHECK)
* New Feature (Authorize.net eCheck)

Authorize.Net provides an exclusive, fully integrated electronic check payment method, eCheck.Net.
Using eCheck.Net, merchants can accept and process payments from consumer and corporate bank accounts
directly from their Web site or through the Authorize.Net Virtual Terminal. By accepting electronic checks,
you expand the payment options available to new and existing customers, enhancing customer loyalty and
potentially increasing sales.

+ Lower Fees - Lower rates than credit cards or PayPal.
+ More Efficient - eCheck.Net does everything online, eliminating the cost and inconvenience of manually
  processing paper checks and waiting for checks in the mail.
+ Fully Integrated Solution - No third-party integration required implementing eCheck.Net is easy
  for merchants already using the Authorize.Net Payment Gateway.
+ Integrated Reporting - Provides a combined view of all eCheck.Net and credit card payment transactions.
  Reconcile payment and billing activity using online reports and statements.
+ Ship Product Sooner - Improved up-front transaction validation that returns the status of transactions faster.
+ Security - Authorize.Net uses the latest 128-bit Secure Socket Layer (SSL) technology for
  secure Internet Protocol (IP) transactions.


== TO DO ==

- Generate Echeck forms.
- Show users a echeck option if admin enabled echeck method.
- Allow admins/teachers to enrol a student using echeck method (FIX: role consept)

==========
2006-08-30 10:29:10 +00:00
ethem
98d415567c If review enabled, get_users_by_capability('enrol/authorize:managepayments') at SYSTEM_LEVEL and send email for a new pending payment. 2006-08-29 14:30:11 +00:00
ethem
70b1aa8071 get_users_by_capability('enrol/authorize:managepayments') and send email for pending orders expiring. 2006-08-29 13:59:35 +00:00
ethem
0c10124755 merged from 16stable 2006-08-29 09:04:03 +00:00
ethem
516b138516 Colorize all orders. 2006-08-18 17:10:30 +00:00
ethem
be4f7e7fec Colorize refunds and show refunded total.
Red: Refunded/Pending Settlement
Green: Refunded/Settled
Black: Cancelled
2006-08-18 16:01:47 +00:00
ethem
49c22bc46b Display capture/void/delete instead of 'Yes'; Merged from 16stable. 2006-08-18 14:54:08 +00:00
ethem
b9c3d818fe enrol_authorize.courseid must be passed to authorize_get_status_action() function to allow a user has_capacity; Joined 2 tables to get courseid field. Merged from 16stable. 2006-08-17 15:43:54 +00:00
ethem
839958faf6 * $CFG->teachermanagepayments will have to go since we are moving away from the rigid hardcoded teacher role concept.
* If a teacher has_capability('enrol/authorize:managepayments'), send email about pending orders expiring.

* All isteacher converted to has_capability.
2006-08-14 15:06:11 +00:00
ethem
4503e31d9a Roles support added: enrol/authorize:managepayments
TO DO:
* $CFG->an_teachermanagepay will be removed.
   XXX??? What will be do while sending email to teachers about pending orders expiring???
   If this feature enabled and a teacher no role in managepayments, this will send an email and the teacher cannot manage payments.
   Extra work: get_course_teachers and a teacher has_capability(at course level), send this email.

* convert isteacher to has_capability.
2006-08-14 14:23:01 +00:00
ethem
abaeae30f7 Guests can NEVER manage payments. CAP_PREVENT to CAP_PROHIBIT. 2006-08-14 13:42:35 +00:00
ethem
79469c6600 Roles support added: enrol/authorize:managepayments 2006-08-14 13:29:24 +00:00
ethem
067d3cd138 Comment added. 2006-08-10 10:55:42 +00:00
stronk7
433a13bc22 index2fk performed 2006-08-09 15:45:27 +00:00
stronk7
e80d52526d Initial commit for enrol tables XMLDB 2006-08-07 18:52:27 +00:00
ethem
d9d69929f5 Don't show authorize.net password for security reasons. Merged from 16stable. 2006-07-31 12:45:34 +00:00
ethem
9dec3768bc Merged from 16stable. 2006-07-27 16:11:11 +00:00
ethem
08b9be083c Bug: Sending email to admins/teachers the count of pending orders expiring. "Column 'timecreated' in where clause is ambiguous."
We joins 2 tables: course and enrol_authorize. We didn't select course.timecreated, but it gives this error.
Merged from MOODLE_16_STABLE.
2006-07-27 10:57:58 +00:00
ethem
36e5d9b7e1 Merged from 16stable. 2006-07-25 17:38:32 +00:00
ethem
8895a9cdc8 Sometimes ssl connections are slow. Increase max_execution_time to 5 minutes. Merged from 16stable. 2006-07-24 16:32:38 +00:00
ethem
fc9e83ed5c * Update record as soon as possible. If update/insert record fails email to admin to have update manually.
* ignore_user_abort(true) at critical section (before fwrite($fp, "POST /gateway/transact.dll).
   This is last change to ignore request for user.
 * Made some functions "static" to call function directly. So, no need new enrolment_plugin_authorize() instance.
   Now, these are static:
   get_list_of_creditcards, zero_cost, get_course_cost, prevent_double_paid, email_to_admin, check_openssl_loaded
 * Some mtrace cleanup. Removed default new line.

This is big work. When PHP5 is required for moodle in the future, I will add static modifier to functions.
Now and future, this plugin is/will unbreakable; Merged from MOODLE_16_STABLE. :)
2006-07-24 12:19:20 +00:00
danmarsden
f2b7abf058 Bug #5882 ldap enrolment doesn't work. $USER->student getting munged
patch from Iñaki.
2006-07-24 00:37:58 +00:00
ethem
769b3187c2 x_auth_code is required for capture only transactions!
NOTE: Capture only transactions have not implemented yet!
2006-07-20 14:48:03 +00:00
martinlanghoff
63aea8815d enrol API: Updated documentation 2006-07-17 06:02:10 +00:00
danstowell
12a2567375 Small fix, and a bit more output, for IMS enroller 2006-07-11 14:09:26 +00:00
ethem
411df816d6 - authorize_expired function added to lessen the code.
- All functions in authorize plugin are named with authorize_ prefix.

Merged from 16stable.
2006-07-10 10:17:23 +00:00
ethem
f9bfa458a2 Some outputting debugging info for cron. Merged from 16stable. 2006-07-06 13:41:55 +00:00
danstowell
6d19caab41 Change to make LDAP enroller simply ignore accounts with blank idnumber - see moodle.org discussion with Inaki 2006-07-06 13:13:42 +00:00
ethem
1c23b14db3 - Daily cron seperated from main cron for performance.
- Performance for welcome message sending to students. Order by student. This sends only one message for each students.

Merged from MOODLE_16_STABLE.
2006-07-06 12:01:24 +00:00
skodak
7eb60c262a Bug #5995 - poor English in expiry notice; merged from MOODLE_16_STABLE 2006-07-03 07:21:20 +00:00
ethem
11fffc6059 Merged from MOODLE_16_STABLE. 2006-06-29 19:07:28 +00:00
ethem
b1c87d90dc $teacher is used in manual form. No need global. merged from 16stable. 2006-06-29 15:03:54 +00:00
ethem
665d43006a get_student_courses and get_teacher_courses functions added for future reference.
Cron description added. Merged from 16stable.
2006-06-29 12:44:01 +00:00
ethem
8389613abb Don't show choose method string if course cost is 0. Merged from 16stable. 2006-06-29 11:27:32 +00:00
ethem
c1f6386c47 Interactive plugins (authorize and paypal ) must use 'manual'.
Some patches must be applied to lib/db.
http://moodle.org/bugs/bug.php?op=show&bugid=5941
Look: version.patch, lib_db.patch

Eloy, your question about enrol fields for interactive plugins were solved.
Now, we sure we never use authorize and paypal field for backup and restore.
Because manual is active and cannot be disabled when restoring.
Bug #5358 - Add support for enrol systems in backup/restore
http://moodle.org/bugs/bug.php?op=show&bugid=5358&pos=0

Merged from 16 stable.
2006-06-29 10:38:34 +00:00
ethem
c1a2545882 Bug #5941 - Myriad of problems with Paypal enrollmemts, au_enrol.patch
Merged from 16 stable.
2006-06-29 09:49:36 +00:00
skodak
e87fe61524 Bug #5941 - Myriad of problems with Paypal enrollmemts, part 2 - Login as guest not shown to guests and there is login link instead of paypal button for guests; merged from MOODLE_16_STABLE 2006-06-28 15:26:31 +00:00
skodak
44adc9032b Bug #5941 - Myriad of problems with Paypal enrollmemts, part 1; merged from MOODLE_16_STABLE 2006-06-28 12:45:28 +00:00
ethem
bd4669d344 Very small change. A little performance for cron if admin enabled sending email for pending orders expiring.
1- If dailysettlement is 00:05 and cron executes at this time, nothing will occur. If it is executes at 00:10 it works. I think "<" works faster then "<=" :))
2- Don't compare course->ids by authorize->courseid, because courses are grouped by courseid. We sure each line is unique.
3- Only get pendingorderexpiring strings for sending email if course teachers exist.

Merged from 16stable.
2006-06-20 17:22:00 +00:00
ethem
2bc509a3c1 $a->course: course information added. Merged from stable. 2006-06-15 14:23:04 +00:00
ethem
e3df6104f4 pendingordersemailteacher string added
merged from stable
2006-06-15 13:37:25 +00:00
ethem
b9e829691e When the number of pending orders expiring are sent to the teachers via email, which one is important? The number of the orders or the total of the amounts.
Merged from 16 stable.
2006-06-15 12:55:39 +00:00
ethem
b282e815d5 Order by order count. Courses that have many orders are emailed first. Merged from 16_stable. 2006-06-15 08:06:52 +00:00
ethem
a0333291ba Email subject for pending orders expiring.
Merged from stable.
2006-06-14 16:26:01 +00:00
ethem
71e27db713 If admin set up 'Teachers can manage the payments of the course' and enabled 'Manual-Capture', course teachers are notified about pending orders expiring. Merged from MOODLE_16_STABLE. 2006-06-14 11:53:50 +00:00
ethem
c9ad76139d Link to Payment Management page. Merged from 16stable. 2006-06-13 18:31:09 +00:00
ethem
f404747bf1 Link to help file 'Order Review'. Merged from 16stable. 2006-06-13 18:04:25 +00:00
ethem
f00a651c61 Predict the time of settlement at first time. Probably, admin user set up own country timezone and we can use this time as settlement time.
Merged from 16stable.
2006-06-13 16:05:15 +00:00
ethem
e758a8f627 · Capture_Only transaction added.
Capture_Only transactions are used when you already have an authorization from a bank.
To use this type of transaction, you will need an authorization code from the card-issuer (usually a 5 or 6 digit number).
For example, if you called Visa directly and obtained an authorization over the phone,
you would need to submit a Capture_Only transaction to start the funds transfer process.
You can manually submit a Capture_Only transaction from your Virtual Terminal by selecting Capture Only,
or from a website or billing application by including the following variables with your transaction request:

· x_Type (Capture_Only)
· x_Auth_Code (the 5 or 6 digit code provided by the card-issuer)
2006-06-13 07:58:04 +00:00
ethem
ecf2f1ac3d Sending email for pending orders expiring string (adminemailexpired) seperated.
Settings moved to adminemailexpsetting.
Merged from stable.
2006-06-09 11:25:57 +00:00