public function log(PostmanLogger $log, $desc) { $message = $desc . ' email=' . $this->getEmail(); if (!empty($this->name)) { $message .= ' name=' . $this->getName(); } $log->debug($message); }
public static function createConfig(PostmanTransport $transport) { // create Logger $logger = new PostmanLogger("PostmanBasicAuthConfigurationFactory"); // retrieve the hostname and port form the transport $hostname = $transport->getHostname(); $port = $transport->getPort(); $securityType = $transport->getSecurityType(); $authType = $transport->getAuthenticationType(); $username = $transport->getCredentialsId(); $password = $transport->getCredentialsSecret(); // create the Configuration structure for Zend_Mail $config = array('port' => $port); $logger->debug(sprintf('Using %s:%s ', $hostname, $port)); if ($securityType != PostmanOptions::SECURITY_TYPE_NONE) { $config['ssl'] = $securityType; $logger->debug('Using encryption ' . $securityType); } else { $logger->debug('Using no encryption'); } if ($authType != PostmanOptions::AUTHENTICATION_TYPE_NONE) { $config['auth'] = $authType; $config['username'] = $username; $config['password'] = $password; $logger->debug(sprintf('Using auth %s with username %s and password %s', $authType, $username, PostmanUtils::obfuscatePassword($password))); } else { $logger->debug('Using no authentication'); } // return the Configuration structure return $config; }
function postman_google_api_php_client_autoload($className) { $logger = new PostmanLogger('postman_google_api_php_client_autoload'); $logger->trace('Autoloading ' . $className); $classPath = explode('_', $className); // @jason: make sure the first segment of the classname is 'Postman' if (empty($classPath[0]) || empty($classPath[1])) { return; } if ($classPath[0] != 'Postman' && $classPath[1] != 'Google') { return; } else { // @jason: get rid of the first segment of the classname $classPath = array_slice($classPath, 1); } if (count($classPath) > 3) { // Maximum class file path depth in this project is 3. $classPath = array_slice($classPath, 1, 4); } $filePath = dirname(__FILE__) . '/src/' . implode('/', $classPath) . '.php'; if (file_exists($filePath)) { require_once $filePath; } }
/** * PHP version less than 5.3 don't have str_getcsv natively. * * @param unknown $string * @return multitype: */ function str_getcsv($string) { $logger = new PostmanLogger('postman-common-functions'); $logger->debug('Using custom str_getcsv'); return PostmanUtils::postman_strgetcsv_impl($string); }
/** * Create a custom post type * Callback function - must be public scope * * register_post_type should only be invoked through the 'init' action. * It will not work if called before 'init', and aspects of the newly * created or modified post type will work incorrectly if called later. * * https://codex.wordpress.org/Function_Reference/register_post_type */ public static function create_post_type() { register_post_type(self::POSTMAN_CUSTOM_POST_TYPE_SLUG, array('labels' => array('name' => _x('Sent Emails', 'The group of Emails that have been delivered', Postman::TEXT_DOMAIN), 'singular_name' => _x('Sent Email', 'An Email that has been delivered', Postman::TEXT_DOMAIN)), 'capability_type' => '', 'capabilities' => array())); $logger = new PostmanLogger('PostmanEmailLogPostType'); $logger->trace('Created post type: ' . self::POSTMAN_CUSTOM_POST_TYPE_SLUG); }
/** * * @param unknown $data */ public function import($data) { if (PostmanPreRequisitesCheck::checkZlibEncode()) { $logger = new PostmanLogger(get_class($this)); $logger->debug('Importing Settings'); $base64 = $data; $logger->trace($base64); $gz = base64_decode($base64); $logger->trace($gz); $json = @gzuncompress($gz); $logger->trace($json); if (!empty($json)) { $data = json_decode($json, true); $logger->trace($data); // overwrite the current version with the version from the imported options // this way database upgrading can occur $postmanState = get_option('postman_state'); $postmanState['version'] = $data['version']; $logger->trace(sprintf('Setting Postman version to %s', $postmanState['version'])); assert($postmanState['version'] == $data['version']); update_option('postman_state', $postmanState); $this->options = $data; $logger->info('Imported data'); $this->save(); return true; } else { $logger->error('Could not import data - data error'); return false; } } }
/** * If the host port is a possible configuration option, recommend it * * $hostData includes ['host'] and ['port'] * * response should include ['success'], ['message'], ['priority'] * * @param unknown $hostData */ public function getRecommendation($hostData, $userAuthOverride, $originalSmtpServer) { // $priority = -1; $winningRecommendation = null; $logger = new PostmanLogger(get_class($this)); $scrubbedUserAuthOverride = $this->scrubUserOverride($hostData, $userAuthOverride); foreach ($this->getTransports() as $transport) { $recommendation = $transport->getConfigurationBid($hostData, $scrubbedUserAuthOverride, $originalSmtpServer); $logger->debug(sprintf('Transport %s bid %s', $transport->getName(), $recommendation['priority'])); if ($recommendation['priority'] > $priority) { $priority = $recommendation['priority']; $winningRecommendation = $recommendation; } } return $winningRecommendation; }