/**
  * Process the package tag.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 protected function processPackage($errorPos)
 {
     $package = $this->commentParser->getPackage();
     if ($package === null) {
         return;
     }
     $content = $package->getContent();
     if ($content === '') {
         $error = '@package tag must contain a name';
         $this->currentFile->addError($error, $errorPos, 'EmptyPackage');
         return;
     }
     if (PHP_CodeSniffer::isUnderscoreName($content) === true) {
         return;
     }
     $newContent = str_replace(' ', '_', $content);
     $newContent = preg_replace('/[^A-Za-z_]/', '', $newContent);
     $nameBits = explode('_', $newContent);
     $firstBit = array_shift($nameBits);
     $newName = strtoupper($firstBit[0]) . substr($firstBit, 1) . '_';
     foreach ($nameBits as $bit) {
         $newName .= strtoupper($bit[0]) . substr($bit, 1) . '_';
     }
     $error = 'Package name "%s" is not valid; consider "%s" instead';
     $validName = trim($newName, '_');
     $data = array($content, $validName);
     $this->currentFile->addError($error, $errorPos, 'InvalidPackage', $data);
 }
 /**
  * The package name must be camel-cased.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 protected function processPackage($errorPos)
 {
     $package = $this->commentParser->getPackage();
     if ($package !== null) {
         $content = $package->getContent();
         if (empty($content) === true) {
             $error = 'Content missing for @package tag in file comment';
             $this->currentFile->addError($error, $errorPos, 'MissingPackage');
         } else {
             if (PHP_CodeSniffer::isUnderscoreName($content) !== true) {
                 // Package name must be properly camel-cased.
                 $nameBits = explode('_', str_replace(' ', '', $content));
                 $firstBit = array_shift($nameBits);
                 $newName = strtoupper($firstBit[0]) . substr($firstBit, 1) . '_';
                 foreach ($nameBits as $bit) {
                     $newName .= strtoupper($bit[0]) . substr($bit, 1) . '_';
                 }
                 $error = 'Package name "%s" is not valid; consider "%s" instead';
                 $data = array($content, trim($newName, '_'));
                 $this->currentFile->addError($error, $errorPos, 'IncorrectPackage', $data);
             } else {
                 if (strpos($content, 'Squiz') === 0) {
                     // Package name must not start with Squiz.
                     $newName = substr($content, 5);
                     $error = 'Package name "%s" is not valid; consider "%s" instead';
                     $data = array($content, $newName);
                     $this->currentFile->addError($error, $errorPos, 'SquizPackage', $data);
                 }
             }
         }
     }
 }
Пример #3
0
 /**
  * The package name must be non-empty.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 private function _processPackage($errorPos)
 {
     $package = $this->commentParser->getPackage();
     if ($package !== null) {
         $content = $package->getContent();
         if (empty($content) === true) {
             $error = 'Content missing for @package tag in file comment';
             $this->currentFile->addError($error, $errorPos);
         }
         /*else if ($content !== 'Chisimba') {
               $error = 'Expected "Chisimba" for package name';
               $this->currentFile->addError($error, $errorPos);
           } */
     }
 }
Пример #4
0
 /**
  * The package name must be 'MySource4'.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 protected function processPackage($errorPos)
 {
     $package = $this->commentParser->getPackage();
     if ($package !== null) {
         $content = $package->getContent();
         if (empty($content) === true) {
             $error = 'Content missing for @package tag in file comment';
             $this->currentFile->addError($error, $errorPos);
         } else {
             if ($content !== 'MySource4') {
                 $error = 'Expected "MySource4" for package name';
                 $this->currentFile->addError($error, $errorPos);
             }
         }
     }
 }
Пример #5
0
	/**
	 * Process the package tag.
	 *
	 * @param int $errorPos The line number where the error occurs.
	 *
	 * @return void
	 */
	protected function processPackage($errorPos)
	{
		$package = $this->commentParser->getPackage();
		if ($package !== null) {
			$content = $package->getContent();
			if ($content !== '') {
				if (PHP_CodeSniffer::isUnderscoreName($content) !== true) {
					// Ignore..
				}
			} else {
				$error = '@package tag must contain a name';
				$this->currentFile->addError($error, $errorPos);
			}
		}

	}//end processPackage()
Пример #6
0
 /**
  * Process the package tag.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 protected function processPackage($errorPos)
 {
     $tag = $this->commentParser->getPackage();
     if ($tag !== null) {
         $content = $tag->getContent();
         if ($content !== '') {
             list($isValid, $validName) = $this->checkPackage($content);
             if (!$isValid) {
                 $error = "Package name \"{$content}\" is not valid; consider \"{$validName}\" instead";
                 $this->currentFile->addError($this->getReqPrefix($this->getReqCode($this->reqCodesWrongFormat, 'package')) . $error, $errorPos);
             }
         } else {
             $error = '@package tag must contain a name';
             $this->currentFile->addError($this->getReqPrefix($this->reqCodeEmpty) . $error, $errorPos);
         }
     }
 }
Пример #7
0
 /**
  * Process the package tag.
  *
  * @param int $errorPos The line number where the error occurs.
  *
  * @return void
  */
 private function _processPackage($errorPos)
 {
     $package = $this->commentParser->getPackage();
     if ($package !== null) {
         $content = $package->getContent();
         if ($content !== '') {
             if (PHP_CodeSniffer::isUnderscoreName($content) !== true) {
                 $nameBits = explode('_', $content);
                 $firstBit = array_shift($nameBits);
                 $newName = strtoupper($firstBit[0]) . substr($firstBit, 1) . '_';
                 foreach ($nameBits as $bit) {
                     $newName .= strtoupper($bit[0]) . substr($bit, 1) . '_';
                 }
                 $validName = trim($newName, '_');
                 $error = "Package name \"{$content}\" is not valid; Consider \"{$validName}\" instead.";
                 $this->currentFile->addError($error, $errorPos);
             }
         } else {
             $error = '@package tag must contain a name';
             $this->currentFile->addError($error, $errorPos);
         }
     }
 }
Пример #8
0
 /**
  * Process the package tag.
  *
  * @param int $errorpos The line number where the error occurs.
  *
  * @return void
  */
 protected function processpackage($errorpos)
 {
     global $CFG;
     $package = $this->commentparser->getPackage();
     $filename = str_replace($CFG->dirroot, '', $this->currentfile->getfilename());
     $path_parts = explode('/', $filename);
     if (in_array($path_parts[1], $this->core_folders)) {
         $expected_package = 'moodlecore';
     } else {
         // Replace slashes or backslashes in file path with dashes
         $expected_package = strtolower(str_replace('/', '-', $filename));
         if (strpos($expected_package, '-')) {
             $expected_package = strtolower(str_replace('\\', '-', $filename));
         }
         // Strip off last part: the name of the searched file
         $expected_package = substr($expected_package, 0, strrpos($expected_package, '-'));
         // Remove first dash if present
         $expected_package = ltrim($expected_package, '-');
     }
     if ($package !== null) {
         $content = $package->getcontent();
         if ($content !== $expected_package) {
             $error = "Package name \"{$content}\" is not valid; \"{$expected_package}\" expected.";
             $this->currentfile->adderror($error, $errorpos);
         } else {
             if ($content !== '') {
                 if (!preg_match('/^[a-z\\-]*$/', $content)) {
                     $error = "Package name \"{$content}\" is not valid; must be lower-case with optional hyphens.";
                     $this->currentfile->adderror($error, $errorpos);
                 }
             } else {
                 $error = '@subpackage tag must contain a name';
                 $this->currentfile->adderror($error, $errorpos);
             }
         }
     }
 }