<?xml version="1.0"?>
<ruleset name="Easy SwipeBox">
  <description>Easy SwipeBox Standards</description>

  <!-- Use PSR-2 as a base -->
  <rule ref="PSR2">
    <!-- Allow opening and closing braces for functions and classes to be on the same line -->
    <exclude name="Squiz.Functions.MultiLineFunctionDeclaration.BraceOnSameLine"/>
    <exclude name="PSR2.Classes.ClassDeclaration.OpenBraceNewLine"/>
    <exclude name="Squiz.WhiteSpace.ScopeClosingBrace"/>

    <!-- Disable newline after opening brace -->
    <exclude name="Squiz.ControlStructures.ControlSignature.NewlineAfterOpenBrace"/>

    <!-- Allow multiple PHP statements in the same line (usually in template files) -->
    <exclude name="Generic.Formatting.DisallowMultipleStatements.SameLine"/>

    <!-- Disable PSR-2 indentation rules that are buggy with 2 spaces -->
    <exclude name="PSR2.ControlStructures.SwitchDeclaration.BreakIndent"/>
    <exclude name="PSR2.Methods.FunctionCallSignature.Indent"/>
  </rule>

  <!-- Force 2 spaces indentation -->
  <rule ref="Generic.WhiteSpace.ScopeIndent">
    <properties>
      <property name="indent" value="2"/>
      <property name="tabIndent" value="false"/>
    </properties>
  </rule>

  <!-- Verify that operators have valid spacing surrounding them -->
  <rule ref="Squiz.WhiteSpace.OperatorSpacing"></rule>
</ruleset>
