X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=sql%2FGenerateData.php;h=cc499fef6ec7e5bff51fe3ade3a7383337b37abe;hb=ecce28840733bdafa99e006e1fd49e8efd2a9f22;hp=071ed835634831065883c2fb28dded2e2e1b54da;hpb=a5af58bcf2ca094903fb19fb511392aeaf788c16;p=civicrm-core.git diff --git a/sql/GenerateData.php b/sql/GenerateData.php index 071ed83563..cc499fef6e 100644 --- a/sql/GenerateData.php +++ b/sql/GenerateData.php @@ -1,9 +1,9 @@ register(); + +/** + * Class CRM_GCD + */ class CRM_GCD { /** @@ -134,10 +138,10 @@ class CRM_GCD { } // Init DB $config = CRM_Core_Config::singleton(); - + // Relationship types indexed by name_a_b from the table civicrm_relationship_type $this->relTypes = CRM_Utils_Array::index(array('name_a_b'), CRM_Core_PseudoConstant::relationshipType('name')); - + } /** @@ -275,6 +279,9 @@ class CRM_GCD { return $string; } + /** + * @return string + */ private function randomChar() { return chr(mt_rand(65, 90)); } @@ -300,15 +307,30 @@ class CRM_GCD { return $items[mt_rand(0, count($items) - 1)]; } + /** + * @param $items + * + * @return mixed + */ private function randomIndex($items) { return $this->randomItem(array_keys($items)); } + /** + * @param $items + * + * @return array + */ private function randomKeyValue($items) { $key = $this->randomIndex($items); return array($key, $items[$key]); } + /** + * @param $chance + * + * @return int + */ private function probability($chance) { if (mt_rand(0, 100) < ($chance * 100)) { return 1; @@ -457,6 +479,9 @@ class CRM_GCD { } } + /** + * @return string + */ public function randomName() { $first_name = $this->randomItem(($this->probability(.5) ? 'fe' : '') . 'male_name'); $middle_name = ucfirst($this->randomChar()); @@ -485,6 +510,7 @@ class CRM_GCD { if ($this->probability(.5)) { $contact->preferred_communication_method = CRM_Core_DAO::VALUE_SEPARATOR . $this->randomItem($this->preferredCommunicationMethod) . CRM_Core_DAO::VALUE_SEPARATOR; } + $contact->source = 'Sample Data'; $this->_insert($contact); } } @@ -804,6 +830,8 @@ class CRM_GCD { * * @param $cid int: contact id * @param $masterContactId int: set if this is a shared address + * + * @return array */ private function _addAddress($cid, $masterContactId = NULL) { @@ -861,6 +889,8 @@ class CRM_GCD { * Add a phone number for a contact * * @param $cid int: contact id + * + * @return array */ private function _addPhone($cid) { $area = $this->probability(.5) ? '' : mt_rand(201, 899); @@ -881,6 +911,10 @@ class CRM_GCD { * Add an email for a contact * * @param $cid int: contact id + * @param $email + * @param $locationType + * + * @return array */ private function _addEmail($cid, $email, $locationType) { $params = array( @@ -898,6 +932,8 @@ class CRM_GCD { * * @param $cid int: contact id * @param $name str: contact name + * + * @return array */ private function _addWebsite($cid, $name) { $part = array_pad(split(' ', strtolower($name)), 3, ''); @@ -932,8 +968,11 @@ class CRM_GCD { /** * Create an email address based on a person's name * Using common naming patterns + * * @param $contact obj: individual contact record * @param $domain str: supply a domain (i.e. for a work address) + * + * @return string */ private function _individualEmail($contact, $domain = NULL) { $first = $contact->first_name; @@ -1174,6 +1213,9 @@ class CRM_GCD { } } + /** + * @return array + */ function getZipCodeInfo() { if (!$this->stateMap) { @@ -1205,6 +1247,11 @@ class CRM_GCD { } } + /** + * @param $zipCode + * + * @return array + */ static function getLatLong($zipCode) { $query = "http://maps.google.com/maps?q=$zipCode&output=js"; $userAgent = "Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0"; @@ -1350,6 +1397,11 @@ VALUES $this->_query($activityContact); } + /** + * @param $date + * + * @return string + */ static function repairDate($date) { $dropArray = array('-' => '', ':' => '', ' ' => ''); return strtr($date, $dropArray); @@ -1713,23 +1765,28 @@ VALUES $sql = "SELECT id from civicrm_contribution where contact_id = 34"; $contriId2 = CRM_Core_DAO::singleValueQuery($sql); + $sql = "SELECT cov.value FROM civicrm_option_value cov LEFT JOIN civicrm_option_group cog ON cog.id = cov.option_group_id WHERE cov.name = 'pcp' AND cog.name = 'soft_credit_type'"; + + $pcpId = CRM_Core_DAO::singleValueQuery($sql); + $query = " INSERT INTO `civicrm_contribution_soft` - ( contribution_id, contact_id ,amount , currency, pcp_id , pcp_display_in_roll ,pcp_roll_nickname,pcp_personal_note ) + ( contribution_id, contact_id ,amount , currency, pcp_id , pcp_display_in_roll ,pcp_roll_nickname,pcp_personal_note, soft_credit_type_id ) VALUES - ( $contriId1, {$this->Individual[3]}, 10.00, 'USD', 1, 1, 'Jones Family', 'Helping Hands'), - ( $contriId2, {$this->Individual[3]}, 250.00, 'USD', 1, 1, 'Annie and the kids', 'Annie Helps'); + ( $contriId1, {$this->Individual[3]}, 10.00, 'USD', 1, 1, 'Jones Family', 'Helping Hands', $pcpId), + ( $contriId2, {$this->Individual[3]}, 250.00, 'USD', 1, 1, 'Annie and the kids', 'Annie Helps', $pcpId); "; + $this->_query($query); } private function addPledge() { $pledge = "INSERT INTO civicrm_pledge - (contact_id, financial_type_id, contribution_page_id, amount, original_installment_amount, currency,frequency_unit, frequency_interval, frequency_day, installments, start_date, create_date, acknowledge_date, modified_date, cancel_date, end_date, honor_contact_id, honor_type_id, status_id, is_test) + (contact_id, financial_type_id, contribution_page_id, amount, original_installment_amount, currency,frequency_unit, frequency_interval, frequency_day, installments, start_date, create_date, acknowledge_date, modified_date, cancel_date, end_date, status_id, is_test) VALUES - (71, 1, 1, 500.00, '500', 'USD', 'month', 1, 1, 1, '2009-07-01 00:00:00', '2009-06-26 00:00:00', NULL, NULL, NULL,'2009-07-01 00:00:00', NULL, NULL, 1, 0), - (43, 1, 1, 800.00, '200', 'USD', 'month', 3, 1, 4, '2009-07-01 00:00:00', '2009-06-23 00:00:00', '2009-06-23 00:00:00', NULL, NULL, '2009-04-01 10:11:40', NULL, NULL, 5, 0), - (32, 1, 1, 600.00, '200', 'USD', 'month', 1, 1, 3, '2009-10-01 00:00:00', '2009-09-14 00:00:00', '2009-09-14 00:00:00', NULL, NULL, '2009-12-01 00:00:00', NULL, NULL, 5, 0); + (71, 1, 1, 500.00, '500', 'USD', 'month', 1, 1, 1, '2009-07-01 00:00:00', '2009-06-26 00:00:00', NULL, NULL, NULL,'2009-07-01 00:00:00', 1, 0), + (43, 1, 1, 800.00, '200', 'USD', 'month', 3, 1, 4, '2009-07-01 00:00:00', '2009-06-23 00:00:00', '2009-06-23 00:00:00', NULL, NULL, '2009-04-01 10:11:40', 5, 0), + (32, 1, 1, 600.00, '200', 'USD', 'month', 1, 1, 3, '2009-10-01 00:00:00', '2009-09-14 00:00:00', '2009-09-14 00:00:00', NULL, NULL, '2009-12-01 00:00:00', 5, 0); "; $this->_query($pledge); } @@ -1776,7 +1833,7 @@ WHERE cefa.account_relationship = 1; "; private function addParticipantFinancialItem() { - $sql = " SELECT cpp.contribution_id, cli.id as line_item_id, cp.contact_id, now() as receive_date, cp.fee_amount as total_amount, cp.fee_currency as currency, cli.label, cli.financial_type_id, cefa.financial_account_id, NULL as payment_instrument_id, NULL as check_number, NULL as trxn_id + $sql = " SELECT cpp.contribution_id, cli.id as line_item_id, cp.contact_id, now() as receive_date, cp.fee_amount as total_amount, cp.fee_currency as currency, cli.label, cli.financial_type_id, cefa.financial_account_id, 4 as payment_instrument_id, NULL as check_number, NULL as trxn_id FROM `civicrm_participant` cp INNER JOIN civicrm_participant_payment cpp ON cpp.participant_id = cp.id INNER JOIN civicrm_line_item cli ON cli.entity_id = cp.id and cli.entity_table = 'civicrm_participant' @@ -1786,6 +1843,10 @@ WHERE cefa.account_relationship = 1"; $this->addFinancialItem($result); } + /** + * @param $result + * @param null $financialAccountId + */ private function addFinancialItem($result, $financialAccountId = NULL) { $defaultFinancialAccount = CRM_Core_DAO::singleValueQuery("SELECT id FROM civicrm_financial_account WHERE is_default = 1"); while($result->fetch()){ @@ -1826,8 +1887,9 @@ SELECT 'civicrm_participant',cp.id, cpfv.price_field_id, cpfv.label, 1, cpfv.amo private function addMembershipPayment() { $maxContribution = CRM_Core_DAO::singleValueQuery("select max(id) from civicrm_contribution"); $financialTypeID = CRM_Core_DAO::singleValueQuery("select id from civicrm_financial_type where name = 'Member Dues'"); - $sql = "INSERT INTO civicrm_contribution (contact_id,financial_type_id,receive_date, total_amount, currency, source, contribution_status_id) -SELECT cm.contact_id, $financialTypeID, now(), cmt.minimum_fee, 'USD', CONCAT(cmt.name, ' Membership: Offline signup'), 1 FROM `civicrm_membership` cm + $paymentInstrumentID = CRM_Core_DAO::singleValueQuery("select value from civicrm_option_value where name = 'Credit Card' AND option_group_id = (SELECT id from civicrm_option_group where name = 'payment_instrument')"); + $sql = "INSERT INTO civicrm_contribution (contact_id,financial_type_id,payment_instrument_id, receive_date, total_amount, currency, source, contribution_status_id) +SELECT cm.contact_id, $financialTypeID, $paymentInstrumentID, now(), cmt.minimum_fee, 'USD', CONCAT(cmt.name, ' Membership: Offline signup'), 1 FROM `civicrm_membership` cm LEFT JOIN civicrm_membership_type cmt ON cmt.id = cm.membership_type_id;"; $this->_query($sql); @@ -1865,8 +1927,9 @@ AND a.details = 'Membership Payment' private function addParticipantPayment() { $maxContribution = CRM_Core_DAO::singleValueQuery("select max(id) from civicrm_contribution"); $financialTypeID = CRM_Core_DAO::singleValueQuery("select id from civicrm_financial_type where name = 'Event Fee'"); - $sql = "INSERT INTO civicrm_contribution (contact_id, financial_type_id, receive_date, total_amount, currency, receipt_date, source, contribution_status_id) -SELECT `contact_id`, $financialTypeID, now(), `fee_amount`, 'USD', now(), CONCAT(ce.title, ' : Offline registration'), 1 FROM `civicrm_participant` cp + $paymentInstrumentID = CRM_Core_DAO::singleValueQuery("select value from civicrm_option_value where name = 'Credit Card' AND option_group_id = (SELECT id from civicrm_option_group where name = 'payment_instrument')"); + $sql = "INSERT INTO civicrm_contribution (contact_id, financial_type_id, payment_instrument_id, receive_date, total_amount, currency, receipt_date, source, contribution_status_id) +SELECT `contact_id`, $financialTypeID, $paymentInstrumentID, now(), `fee_amount`, 'USD', now(), CONCAT(ce.title, ' : Offline registration'), 1 FROM `civicrm_participant` cp LEFT JOIN civicrm_event ce ON ce.id = cp.event_id group by `contact_id`;"; @@ -1894,10 +1957,18 @@ AND a.details = 'Participant Payment' } } +/** + * @param null $str + * + * @return bool + */ function user_access($str = NULL) { return TRUE; } +/** + * @return array + */ function module_list() { return array(); }