Setup::makeDir()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 2
Bugs 0 Features 0
Metric Value
dl 0
loc 6
rs 9.4285
c 2
b 0
f 0
cc 2
eloc 4
nc 2
nop 1
1
<?php
2
3
namespace cvweiss\projectbase;
4
5
class Setup
6
{
7
    public static function prepareProject()
8
    {
9
        $vendorDir = dirname(dirname(dirname(__DIR__)));
10
        // Composer insists that libs are kept in vendor, so we'll make that assumption
11
        $projectDir = basename($vendorDir) == 'vendor' ? dirname($vendorDir) : dirname(dirname(__DIR__));
12
13
        // Create necessary directories
14
        $dirs = ['/view/', '/cache/', '/cache/twig'];
15
        foreach ($dirs as $dir) self::makeDir($projectDir . $dir);
16
17
        // Copy the public directory
18
        if (strlen($vendorDir) > strlen($projectDir)) {
19
            echo("cp -r $vendorDir/public $projectDir/public\n");
20
        }
21
    }
22
23
    private static function makeDir($dir)
24
    {
25
        if (is_dir($dir)) return;
26
        echo "Creating directory: $dir\n";
27
        mkdir($dir);
28
    }
29
}
30