GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.
Completed
Push — master ( 72699b...b8e5ff )
by
unknown
09:37
created

ScriptAbstractCreator::addScript()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 4
rs 10
c 0
b 0
f 0
ccs 3
cts 3
cp 1
crap 1
1
<?php
2
/**
3
 * @author Nikita Melnikov <[email protected]>
4
 * @link https://github.com/shogodev/argilla/
5
 * @copyright Copyright &copy; 2003-2014 Shogo
6
 * @license http://argilla.ru/LICENSE
7
 * @package ext.mainscript
8
 */
9
abstract class ScriptAbstractCreator
10
{
11
  /**
12
   * Относительный путь к директории скриптов
13
   *
14
   * @var string
15
   */
16
  public $path = '/js/';
17
18
  /**
19
   * Допустимые имена скриптов
20
   *
21
   * @var array of strings
22
   */
23
  public static $scripts = array('packed.js', 'compiled.js', 'vendor.js', 'common.js');
24
25
  /**
26
   * Список имя скриптов
27
   *
28
   * @var array
29
   */
30
  protected $scriptList;
31
32
33
  /**
34
   * @throws CException
35
   *
36
   * @return array
37
   */
38 11
  final public function getScriptList()
39
  {
40 11
    if( !is_array($this->scriptList) )
41 11
      throw new CException("Свойство scriptList дожно быть массивом");
42
43 11
    if( empty($this->scriptList) )
44 11
      throw new CException("Имя список не может быть пустым");
45
46 11
    foreach($this->scriptList as $scriptName)
47 11
    if( !in_array($scriptName, static::$scripts) )
48 11
      throw new CException("Неверное имя или путь скрипта ".$scriptName);
49
50 11
     return $this->getScriptPath();
51
  }
52
53 8
  public function addScript($script)
54
  {
55 8
    $this->scriptList[] = $script;
56 8
  }
57
58
  /**
59
   * Обновление файла крипта
60
   * Скрипт обновляется только в случае,
61
   * когда обновилась контрольная сумма файлов,
62
   * либо не существует сам файл скриптов
63
   */
64 8
  public function update()
65
  {
66 8
    $isUpdated = ScriptHashHelper::getInstance()->isUpdated || !$this->scripsExists();
0 ignored issues
show
Bug introduced by
The property isUpdated cannot be accessed from this context as it is declared protected in class ScriptHashHelper.

This check looks for access to properties that are not accessible from the current context.

If you need to make a property accessible to another context you can either raise its visibility level or provide an accessible getter in the defining class.

Loading history...
67
68
    if( $isUpdated )
69 8
    {
70 1
      $this->delete();
71 1
      $this->create();
72 1
    }
73 8
  }
74
75
  /**
76
   * Возвращает полный путь к файлу скриптов
77
   *
78
   * @return array
79
   */
80
  public function getScriptPath()
81
  {
82 12
    return array_map(function($scriptName) {
83 12
      return ScriptsFileFinder::getInstance()->getRoot() . $this->path . $scriptName;
84 12
    }, $this->scriptList);
85
  }
86
87 10
  public function scripsExists()
88
  {
89 10
    return $this->scriptListExist($this->getScriptPath());
90
  }
91
92
  /**
93
   * Возвращает допустимые полные пути к скриптам
94
   *
95
   * @return array
96
   */
97
  protected function scriptsPath()
98
  {
99
    $data = array();
100
101
    foreach( self::$scripts as $script )
102
    {
103
      $data[] = ScriptsFileFinder::getInstance()->getRoot() . $this->path . $script;
104
    }
105
106
    return $data;
107
  }
108
109 10
  protected function scriptListExist(array $scriptList)
110
  {
111 10
    foreach($scriptList as $script)
112
    {
113 10
      if( !file_exists($script) )
114 10
      {
115 3
        return false;
116
      }
117 9
    }
118
119 9
    return true;
120
  }
121
122
  abstract public function create();
123
124
  abstract protected function delete();
125
}
126