function _load_target_field_defs() { require_once 'AMP/UserData.php'; $udm = new UserData(AMP_Registry::getDbcon(), $this->_form_id, $admin = true); $fields_lookup = array(); $types_to_avoid = array("html", "static", "header"); $types_to_group = array('checkgroup', 'multiselect'); foreach ($udm->fields as $field_name => $field_def) { if (!(isset($field_def['enabled']) && $field_def['enabled']) || !isset($field_def['type'])) { continue; } if (array_search($field_def['type'], $types_to_group) !== FALSE) { $this->_group_fields[$field_name] = $field_def['label']; continue; } if (array_search($field_def['type'], $types_to_avoid) !== FALSE) { continue; } $label = $field_name; if (isset($field_def['label']) && $field_def['label']) { $label = $field_def['label']; } $fields_lookup[$field_name] = $label; } $fields_lookup['id'] = 'ID'; require_once 'AMP/System/User/Profile/Profile.php'; $user = new AMP_System_User_Profile(AMP_Registry::getDbcon()); $db_fields = $user->getAllowedKeys(); foreach ($fields_lookup as $field_key => $field_label) { if (!isset($db_fields[strtoupper($field_key)])) { unset($fields_lookup[$field_key]); } } $this->_target_fields_lookup = $fields_lookup; }
function export(&$target_set, $args = null) { $sample = current($target_set); $keys = $sample->export_keys(); $dump = array(); foreach ($keys as $key) { $blank_set[$key] = null; } foreach ($target_set as $source) { $values = $source->getData(); $user_values = array(); if (isset($values['uid']) && $values['uid']) { $owner = new AMP_System_User_Profile(AMP_Registry::getDbcon(), $values['uid']); if ($owner->hasData()) { $owner_data = $owner->getData(); unset($owner_data['id']); $user_values = array_combine_key($keys, $owner_data); } } $safe_values = array_combine_key($keys, $values); $dump[$source->id] = array_merge($blank_set, $safe_values, $user_values); } require_once 'AMP/Renderer/CSV.php'; $renderer = new AMP_Renderer_CSV(); $file = $renderer->format(array($keys)); $file .= $renderer->format($dump); $renderer->header(date("Y_m_d__") . get_class($this)); print $file; exit; }
function success() { $email_request = AMP_params('email'); if (!$email_request) { return false; } $finder = new AMP_System_User_Profile(AMP_dbcon()); $accounts = $finder->find(array('Email' => $email_request, 'publish' => 1, 'modin' => 20)); if (empty($accounts)) { return false; } return $this->send_password_reset(current($accounts)); }
function GSD_get_current_user_data() { $user_cookie = $_COOKIE['AMPContentLoginCredentials']; if (!$user_cookie) { return false; } $splits = explode(':', $user_cookie); $user_id = $splits[3]; if (!$user_id) { return false; } $user = new AMP_System_User_Profile(AMP_Registry::getDbcon(), $user_id); return $user->getData(); }
function validate_unique_email($udm) { if (!AMP_params('btnUdmSubmit')) { return; } if (AMP_params('Email') && !AMP_params('uid')) { $finder = new AMP_System_User_Profile(AMP_dbcon()); $existing_accounts = $finder->find(array('Email' => AMP_params('Email'), 'modin' => 20)); if (!empty($existing_accounts)) { AMP_flashMessage('The email address you entered is already associated with an account and must be unique to create a new one. Are you already a member? If so <a href="forgot_password.php?login_type=content">you can recover your password here</a>.', $error = true); AMP_redirect('/form.php?id=' . $udm->instance); exit; } } }
*****/ $mod_name = 'udm'; require_once 'AMP/BaseDB.php'; require_once 'AMP/UserData/Input.inc.php'; require_once 'utility.functions.inc.php'; // User ID. $uid = isset($_REQUEST['uid']) ? $_REQUEST['uid'] : false; if (!$uid) { $uid = isset($_REQUEST['id']) ? $_REQUEST['id'] : false; } #set_error_handler( 'e' ); $modin = isset($_REQUEST['modin']) && $_REQUEST['modin'] ? $_REQUEST['modin'] : false; if ($uid && !$modin) { //look up the modin via uid require_once 'AMP/System/User/Profile/Profile.php'; $profile = new AMP_System_User_Profile(AMP_Registry::getDbcon(), $uid); if ($profile->hasData() && ($modin = $profile->getModin())) { //redirect to the standard URL $url_vars = AMP_URL_Values(); if (!$url_vars) { $url_vars = array(); } $url_vars = array_merge($url_vars, array('uid' => 'uid=' . $uid, 'modin' => 'modin=' . $modin)); unset($url_vars['id']); ampredirect(AMP_url_add_vars(AMP_SYSTEM_URL_FORM_ENTRY, $url_vars)); } } if ($modin) { $form_id_nav = $modin; $form_permissions =& AMPSystem_Lookup::instance('PermissionsbyForm'); $tools = AMP_lookup('ToolsbyForm');
function find_dia_key($options) { if (isset($options['dia_key']) && $options['dia_key']) { return $options['dia_key']; } if (isset($this->udm->uid)) { require_once 'AMP/System/User/Profile/Profile.php'; $user_data = new AMP_System_User_Profile($this->udm->dbcon, $this->udm->uid); $dia_key = $user_data->getData('dia_key'); if ($dia_key) { return $dia_key; } } return false; }
function donation_is_unique($donation) { $finder = new AMP_System_User_Profile(AMP_dbcon()); $finder->_exact_value_fields[] = WIN_RECENT_DONATION_KEY; return !$finder->find(array(WIN_RECENT_DONATION_KEY => $donation['key']), 'AMP_System_User_Profile'); }
function commit_import() { if (!isset($this->_form_import)) { $this->_form_import =& $this->_map->getComponent('import'); } if (!$this->_form_import->submitted() || !$this->_form_import->validate()) { $this->_form_import->initNoId(); $this->_form_import->applyDefaults(); $this->_form_import->Build(); $this->_display->add($this->_form_import); return true; } $this->_form_import->Build(); $target_form_id = $this->_form_import->getFormId(); $import_map = $this->_form_import->getMap(); $import_file = $this->_form_import->getSource(); $import_fields = $this->_form_import->getSourceFields(); if (!$import_file) { return false; } $count = 0; // doing this with the UserData structure would be more correct // but is too slow to be useful at this time //require_once( 'AMP/UserData/Input.inc.php'); //$user = new UserDataInput( AMP_Registry::getDbcon( ), $target_form_id, $admin = true ); //$user->doPlugin( 'QuickForm', 'Build'); require_once 'AMP/System/User/Profile/Profile.php'; $user = new AMP_System_User_Profile(AMP_Registry::getDbcon()); foreach ($import_file as $row_id => $row_data) { $saveable_data = array('modin' => $target_form_id); set_time_limit(10); foreach ($row_data as $key => $value) { $source_key = $import_fields[$key]; if (!isset($import_map[$source_key])) { continue; } $saveable_data[$import_map[$source_key]] = $value; } /* if ( isset( $saveable_data['id'])) { $user->uid = $saveable_data['id']; } */ $user->setData($saveable_data); $count += $user->save(); //$count += $user->doAction( 'Save' ); //$user->clearData( ); trigger_error('imported ' . $count); } $import_action_text = AMP_past_participle(AMP_TEXT_IMPORT); if ($count) { $this->message(sprintf(AMP_TEXT_LIST_ACTION_SUCCESS, $import_action_text, $count)); } else { $this->message(sprintf(AMP_TEXT_LIST_ACTION_FAIL, $import_action_text)); } }
function save_owner($event_data = array()) { if (empty($event_data)) { $event_data = $this->getData(); } $uid = isset($event_data['uid']) ? $event_data['uid'] : false; if (!$uid && (!defined('AMP_FORM_ID_EVENT_OWNER') || !AMP_FORM_ID_EVENT_OWNER)) { return false; } require_once 'AMP/System/User/Profile/Profile.php'; $owner = new AMP_System_User_Profile($this->dbcon, $uid); if (!$owner->hasData()) { $owner->setDefaults(); $owner->mergeData(array('modin' => AMP_FORM_ID_EVENT_OWNER)); } $allowed_keys = $this->export_keys(); foreach ($this->_legacy_fields as $old_name => $new_name) { if (!isset($event_data[$old_name])) { continue; } $event_data[$new_name] = $event_data[$old_name]; } $allowed_data = array_combine_key($allowed_keys, $event_data); unset($allowed_data['id']); $owner->mergeData($allowed_data); $result = $owner->save(); if (!$result) { return false; } $this->_owner =& $owner; return $owner->id; }
function save($data) { $data = $this->udm->getData(); foreach ($data as $key => $value) { if ($field = $this->checkPrefix($key)) { $plugin[$field] = $value; } } $options = $this->getOptions(); require_once 'PayPal.php'; require_once 'PayPal/Profile/API.php'; require_once 'PayPal/Profile/Handler.php'; require_once 'PayPal/Profile/Handler/Array.php'; require_once 'PayPal/Type/DoDirectPaymentRequestType.php'; require_once 'PayPal/Type/DoDirectPaymentRequestDetailsType.php'; require_once 'PayPal/Type/DoDirectPaymentResponseType.php'; require_once 'PayPal/Type/BasicAmountType.php'; require_once 'PayPal/Type/PaymentDetailsType.php'; require_once 'PayPal/Type/AddressType.php'; require_once 'PayPal/Type/CreditCardDetailsType.php'; require_once 'PayPal/Type/PayerInfoType.php'; require_once 'PayPal/Type/PersonNameType.php'; $pid = ProfileHandler::generateID(); $handler = ProfileHandler_Array::getInstance(array('username' => $options['api_username'], 'password' => $options['api_password'], 'certificateFile' => $options['cert_file'], 'subject' => null, 'environment' => $options['environment'])); $profile = APIProfile::getInstance($pid, $handler); $dp_request = PayPal::getType('DoDirectPaymentRequestType'); $firstName = $data['First_Name']; $lastName = $data['Last_Name']; $creditCardType = $plugin['cc_type']; $creditCardNumber = $plugin['cc_number']; $expDateMonth = $plugin['cc_expiration']['m']; // Month must be padded with leading zero $padDateMonth = str_pad($expDateMonth, 2, '0', STR_PAD_LEFT); $expDateYear = $plugin['cc_expiration']['Y']; $cvv2Number = $plugin['cc_cvv2']; $address1 = $data['Street']; $address2 = isset($data['Street_1']) ? $data['Street_1'] : null; $city = $data['City']; $state = $data['State']; $zip = $data['Zip']; $amount = $plugin['amount']; $OrderTotal = PayPal::getType('BasicAmountType'); $OrderTotal->setattr('currencyID', 'USD'); $OrderTotal->setval($amount, 'iso-8859-1'); $PaymentDetails = PayPal::getType('PaymentDetailsType'); $PaymentDetails->setOrderTotal($OrderTotal); $shipTo = PayPal::getType('AddressType'); $shipTo->setName($firstName . ' ' . $lastName); $shipTo->setStreet1($address1); $shipTo->setStreet2($address2); $shipTo->setCityName($city); $shipTo->setStateOrProvince($state); $shipTo->setCountry('US'); $shipTo->setPostalCode($zip); $PaymentDetails->setShipToAddress($shipTo); $dp_details = PayPal::getType('DoDirectPaymentRequestDetailsType'); $dp_details->setPaymentDetails($PaymentDetails); // Credit Card info $card_details = PayPal::getType('CreditCardDetailsType'); $card_details->setCreditCardType($creditCardType); $card_details->setCreditCardNumber($creditCardNumber); $card_details->setExpMonth($padDateMonth); $card_details->setExpYear($expDateYear); $card_details->setCVV2($cvv2Number); $payer = PayPal::getType('PayerInfoType'); $person_name = PayPal::getType('PersonNameType'); $person_name->setFirstName($firstName); $person_name->setLastName($lastName); $payer->setPayerName($person_name); $payer->setPayerCountry('US'); $payer->setAddress($shipTo); if (isset($data['Email'])) { $payer->setPayer($data['Email']); } $card_details->setCardOwner($payer); $dp_details->setCreditCard($card_details); $dp_details->setIPAddress($_SERVER['SERVER_ADDR']); $dp_details->setPaymentAction('Sale'); $dp_request->setDoDirectPaymentRequestDetails($dp_details); $caller = PayPal::getCallerServices($profile); if (PEAR::isError($caller)) { trigger_error($caller->getMessage()); return false; } $response = $caller->DoDirectPayment($dp_request); $ack = $response->getAck(); define('ACK_SUCCESS', 'Success'); define('ACK_SUCCESS_WITH_WARNING', 'SuccessWithWarning'); switch ($ack) { case ACK_SUCCESS: case ACK_SUCCESS_WITH_WARNING: if (isset($options['response']) && $options['response']) { $response_code = 'Transaction ID: ' . $response->getTransactionID() . "\n" . 'Completed AVS Code: ' . $response->getAVSCode() . "\n" . 'CVV2 Code: ' . $response->getCVV2Code(); require_once 'AMP/System/User/Profile/Profile.php'; $profile = new AMP_System_User_Profile($this->dbcon, $this->udm->uid); if ($profile->hasData()) { $update = array($options['response'] => $response_code); $profile->mergeData($update); $profile->save(); } else { trigger_error('cannot update profile with paypal response: ' . $response_code); } } return true; default: require_once 'PayPal/Type/AbstractResponseType.php'; require_once 'PayPal/Type/ErrorType.php'; require_once 'PayPal/Type/DoDirectPaymentResponseType.php'; $errors = $response->getErrors(); if (!is_array($errors)) { $errors = array($errors); } foreach ($errors as $error) { trigger_error($error->getShortMessage() . ' : ' . $error->getLongMessage()); $flash = AMP_System_Flash::instance(); $flash->add_error($error->getLongMessage()); } } return false; }
<?php require_once 'AMP/Base/Config.php'; require_once 'AMP/Auth/Password/Reset/Form.php'; require_once 'AMP/System/User/Profile/Profile.php'; require_once 'AMP/Auth/Handler.inc.php'; #require_once( 'AMP/BaseTemplate.php' ); #require_once( 'AMP/BaseModuleIntro.php' ); // define('AMP_AUTHENTICATION_DEBUG',true); $AMP_Authen_Handler = new AMP_Authentication_Handler(AMP_Registry::getDbcon(), 'content'); if (!$AMP_Authen_Handler->is_authenticated()) { AMP_flashMessage('You need to submit another password reset request, as yours has expired'); $AMP_Authen_Handler->do_login(); } $password_reset_form = new AMP_Auth_Password_Reset_Form(); $password_reset_form->Build(); if ($_POST['new_password']) { $passwords = $password_reset_form->getValues(); $user = new AMP_System_User_Profile(AMP_dbcon(), $AMP_Authen_Handler->userid); if ($user->reset_password($passwords, 'custom2')) { global $dbcon; $dbcon->Execute('DELETE FROM users_sessions where hash=' . $dbcon->qstr($hash)); AMP_flashMessage('Password reset successful'); AMP_redirect('profile.php'); } else { AMP_flashMessage('Passwords do not match'); } } echo $password_reset_form->execute(); require_once 'AMP/BaseFooter.php';
function __construct($db_connection) { parent::__construct($db_connection); }