Index: branches/5.3.x/units/affiliates/affiliates_event_handler.php =================================================================== diff -u -N -r15671 -r15695 --- branches/5.3.x/units/affiliates/affiliates_event_handler.php (.../affiliates_event_handler.php) (revision 15671) +++ branches/5.3.x/units/affiliates/affiliates_event_handler.php (.../affiliates_event_handler.php) (revision 15695) @@ -1,6 +1,6 @@ Special == 'user' ) { + $config = $event->getUnitConfig(); $event->setEventParam('raise_warnings', 0); - $sql = 'SELECT ' . $this->Application->getUnitOption($event->Prefix, 'IDField') . ' - FROM ' . $this->Application->getUnitOption($event->Prefix, 'TableName') . ' + $sql = 'SELECT ' . $config->getIDField() . ' + FROM ' . $config->getTableName() . ' WHERE PortalUserId = ' . (int)$this->Application->RecallVar('user_id'); $id = $this->Conn->GetOne($sql); @@ -92,22 +93,24 @@ '31'=>'4','32'=>'5','33'=>'6','34'=>'7','35'=>'8','36'=>'9'); $ret = ''; - for($i=1; $i<=$number_length; $i++) - { + for ($i = 1; $i <= $number_length; $i++) { mt_srand((double)microtime() * 1000000); $num = mt_rand(1,36); $ret .= $num_chars[$num]; } + $ret = strtoupper($ret); - $id_field = $this->Application->getUnitOption($event->Prefix, 'IDField'); - $table = $this->Application->getUnitOption($event->Prefix, 'TableName'); + $config = $event->getUnitConfig(); + $id_field = $config->getIDField(); + $table = $config->getTableName(); - $sql = 'SELECT %s FROM %s WHERE AffiliateCode = %s'; + $sql = 'SELECT %s + FROM %s + WHERE AffiliateCode = %s'; $code_found = $this->Conn->GetOne( sprintf($sql, $id_field, $table, $this->Conn->qstr($ret) ) ); - if($code_found) return $this->generateAffiliateCode($event); - return $ret; + return $code_found ? $this->generateAffiliateCode($event) : $ret; } /** @@ -244,7 +247,7 @@ if ( $affiliate_plan->isLoaded() ) { $sql = 'SELECT SUM(Quantity) FROM %s WHERE OrderId = %s'; - $orderitems_table = $this->Application->getUnitOption('orditems', 'TableName'); + $orderitems_table = $this->Application->getUnitConfig('orditems')->getTableName(); $items_sold = $this->Conn->GetOne(sprintf($sql, $orderitems_table, $order->GetID())); $object->SetDBField('AccumulatedAmount', $object->GetDBField('AccumulatedAmount') + $order->GetDBField('TotalAmount')); @@ -260,7 +263,7 @@ break; } - $apb_table = $this->Application->getUnitOption('apbrackets', 'TableName'); + $apb_table = $this->Application->getUnitConfig('apbrackets')->getTableName(); $sql = 'SELECT Percent FROM %1$s WHERE (%2$s >= FromAmount) AND ( (%2$s <= ToAmount) OR (ToAmount = -1) ) AND (AffiliatePlanId = %3$s)'; $commission_percent = $this->Conn->GetOne(sprintf($sql, $apb_table, $this->Conn->qstr($value), $affiliate_plan->GetID())); @@ -360,7 +363,7 @@ protected function _getPrimaryAffiliatePlan() { $sql = 'SELECT AffiliatePlanId - FROM ' . $this->Application->getUnitOption('ap', 'TableName') . ' + FROM ' . $this->Application->getUnitConfig('ap')->getTableName() . ' WHERE IsPrimary = 1'; return (int)$this->Conn->GetOne($sql); @@ -432,7 +435,7 @@ /* @var $payment_object kDBItem */ $id = $event->getEventParam('id'); - $ap_table = $this->Application->getUnitOption('apayments', 'TableName'); + $ap_table = $this->Application->getUnitConfig('apayments')->getTableName(); $sql = 'SELECT AffiliatePaymentId FROM ' . $ap_table . ' @@ -462,7 +465,7 @@ } $sql = 'SELECT Status - FROM ' . $this->Application->getUnitOption($event->Prefix, 'TableName') . ' + FROM ' . $event->getUnitConfig()->getTableName() . ' WHERE ' . $object->IDField . ' = ' . $object->GetID(); $old_status = $this->Conn->GetOne($sql); @@ -486,8 +489,8 @@ $intervals = Array (86400 => 'la_day', 604800 => 'la_week', 2628000 => 'la_month', 7884000 => 'la_quartely', 31536000 => 'la_year'); - $affiliates_table = $this->Application->getUnitOption($event->Prefix, 'TableName'); - $affiliate_plan_table = $this->Application->getUnitOption('ap', 'TableName'); + $affiliates_table = $event->getUnitConfig()->getTableName(); + $affiliate_plan_table = $this->Application->getUnitConfig('ap')->getTableName(); $base_time = adodb_mktime(); $where_clause = Array (); @@ -582,6 +585,7 @@ { if ( $this->Application->CheckPermission('SYSTEM_ACCESS.READONLY', 1) ) { $event->status = kEvent::erFAIL; + return; } @@ -591,7 +595,7 @@ $ids = $this->StoreSelectedIDs($event); if ( $ids ) { - $status_field = $object->getStatusField(); + $status_field = $event->getUnitConfig()->getStatusField(true); foreach ($ids as $id) { $object->Load($id);