protected function checkDuplicates($path, array $vars = array())
    {
        $packageType = substr($vars['type'], strlen('bitrix') + 1);
        $localDir = explode('/', $vars['bitrix_dir']);
        array_pop($localDir);
        $localDir[] = 'local';
        $localDir = implode('/', $localDir);

        $oldPath = str_replace(
            array('{$bitrix_dir}', '{$name}'),
            array($localDir, $vars['name']),
            $this->locations[$packageType]
        );

        if (in_array($oldPath, static::$checkedDuplicates)) {
            return;
        }

        if ($oldPath !== $path && file_exists($oldPath) && $this->io && $this->io->isInteractive()) {

            $this->io->writeError('    <error>Duplication of packages:</error>');
            $this->io->writeError('    <info>Package ' . $oldPath . ' will be called instead package ' . $path . '</info>');

            while (true) {
                switch ($this->io->ask('    <info>Delete ' . $oldPath . ' [y,n,?]?</info> ', '?')) {
                    case 'y':
                        $fs = new Filesystem();
                        $fs->removeDirectory($oldPath);
                        break 2;

                    case 'n':
                        break 2;

                    case '?':
                    default:
                        $this->io->writeError(array(
                            '    y - delete package ' . $oldPath . ' and to continue with the installation',
                            '    n - don\'t delete and to continue with the installation',
                        ));
                        $this->io->writeError('    ? - print help');
                        break;
                }
            }
        }

        static::$checkedDuplicates[] = $oldPath;
    }
protected function checkDuplicates($path, array $vars = array())
    {
        $packageType = substr($vars['type'], strlen('bitrix') + 1);
        $localDir = explode('/', $vars['bitrix_dir']);
        array_pop($localDir);
        $localDir[] = 'local';
        $localDir = implode('/', $localDir);

        $oldPath = str_replace(
            array('{$bitrix_dir}', '{$name}'),
            array($localDir, $vars['name']),
            $this->locations[$packageType]
        );

        if (in_array($oldPath, static::$checkedDuplicates)) {
            return;
        }

        if ($oldPath !== $path && file_exists($oldPath) && $this->io && $this->io->isInteractive()) {

            $this->io->writeError('    <error>Duplication of packages:</error>');
            $this->io->writeError('    <info>Package ' . $oldPath . ' will be called instead package ' . $path . '</info>');

            while (true) {
                switch ($this->io->ask('    <info>Delete ' . $oldPath . ' [y,n,?]?</info> ', '?')) {
                    case 'y':
                        $fs = new Filesystem();
                        $fs->removeDirectory($oldPath);
                        break 2;

                    case 'n':
                        break 2;

                    case '?':
                    default:
                        $this->io->writeError(array(
                            '    y - delete package ' . $oldPath . ' and to continue with the installation',
                            '    n - don\'t delete and to continue with the installation',
                        ));
                        $this->io->writeError('    ? - print help');
                        break;
                }
            }
        }

        static::$checkedDuplicates[] = $oldPath;
    }
protected function checkDuplicates ( $ path , array $ vars = array ( ) ) { $ packageType = substr ( $ vars [ 'type' ] , strlen ( 'bitrix' ) + 1 ) ; $ localDir = explode ( '/' , $ vars [ 'bitrix_dir' ] ) ; array_pop ( $ localDir ) ; $ localDir [ ] = 'local' ; $ localDir = implode ( '/' , $ localDir ) ; $ oldPath = str_replace ( array ( '{$bitrix_dir}' , '{$name}' ) , array ( $ localDir , $ vars [ 'name' ] ) , $ this -> locations [ $ packageType ] ) ; if ( in_array ( $ oldPath , static :: $ checkedDuplicates ) ) { return ; } if ( $ oldPath !== $ path && file_exists ( $ oldPath ) && $ this -> io && $ this -> io -> isInteractive ( ) ) { $ this -> io -> writeError ( '    <error>Duplication of packages:</error>' ) ; $ this -> io -> writeError ( '    <info>Package ' . $ oldPath . ' will be called instead package ' . $ path . '</info>' ) ; while ( true ) { switch ( $ this -> io -> ask ( '    <info>Delete ' . $ oldPath . ' [y,n,?]?</info> ' , '?' ) ) { case 'y' : $ fs = new Filesystem ( ) ; $ fs -> removeDirectory ( $ oldPath ) ; break 2 ; case 'n' : break 2 ; case '?' : default : $ this -> io -> writeError ( array ( '    y - delete package ' . $ oldPath . ' and to continue with the installation' , '    n - don\'t delete and to continue with the installation' , ) ) ; $ this -> io -> writeError ( '    ? - print help' ) ; break ; } } } static :: $ checkedDuplicates [ ] = $ oldPath ; }
Duplicates search packages.

@param string $path
@param array $vars
Duplicates search packages .