Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/composer/composer/src/Composer/Util/AuthHelper.php
<?php

/*
 * This file is part of Composer.
 *
 * (c) Nils Adermann <naderman@naderman.de>
 *     Jordi Boggiano <j.boggiano@seld.be>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace Composer\Util;

use
Composer\Config;
use
Composer\IO\IOInterface;

/**
 * @author Jordi Boggiano <j.boggiano@seld.be>
 */
class AuthHelper
{
    protected
$io;
    protected
$config;

    public function
__construct(IOInterface $io, Config $config)
    {
       
$this->io = $io;
       
$this->config = $config;
    }

    public function
storeAuth($originUrl, $storeAuth)
    {
       
$store = false;
       
$configSource = $this->config->getAuthConfigSource();
        if (
$storeAuth === true) {
           
$store = $configSource;
        } elseif (
$storeAuth === 'prompt') {
           
$answer = $this->io->askAndValidate(
               
'Do you want to store credentials for '.$originUrl.' in '.$configSource->getName().' ? [Yn] ',
                function (
$value) {
                   
$input = strtolower(substr(trim($value), 0, 1));
                    if (
in_array($input, array('y','n'))) {
                        return
$input;
                    }
                    throw new \
RuntimeException('Please answer (y)es or (n)o');
                },
               
null,
               
'y'
           
);

            if (
$answer === 'y') {
               
$store = $configSource;
            }
        }
        if (
$store) {
           
$store->addConfigSetting(
               
'http-basic.'.$originUrl,
               
$this->io->getAuthentication($originUrl)
            );
        }
    }
}