# fluentform/1.2.4/app/Services/wpfluent/src/QueryBuilder/JoinBuilder.php

Fluent Forms – Customizable Contact Forms, Survey, Quiz, &amp; Conversational Form Builder, version 1.2.4. 46 lines.

- Page: https://pluginprobe.com/plugins/fluentform/1.2.4/code/app/Services/wpfluent/src/QueryBuilder/JoinBuilder.php
- Raw: https://pluginprobe.com/plugins/fluentform/1.2.4/raw/app/Services/wpfluent/src/QueryBuilder/JoinBuilder.php
- Modified: 2017-12-29T16:40:50+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/fluentform/1.2.4/code/app/Services/wpfluent/src/QueryBuilder/JoinBuilder.php#L10-L20`.

```php
<?php namespace WpFluent\QueryBuilder;

class JoinBuilder extends QueryBuilderHandler
{
    /**
     * @param $key
     * @param $operator
     * @param $value
     *
     * @return $this
     */
    public function on($key, $operator, $value)
    {
        return $this->joinHandler($key, $operator, $value, 'AND');
    }

    /**
     * @param $key
     * @param $operator
     * @param $value
     *
     * @return $this
     */
    public function orOn($key, $operator, $value)
    {
        return $this->joinHandler($key, $operator, $value, 'OR');
    }

    /**
     * @param        $key
     * @param null   $operator
     * @param null   $value
     * @param string $joiner
     *
     * @return $this
     */
    protected function joinHandler($key, $operator = null, $value = null, $joiner = 'AND')
    {
        $key = $this->addTablePrefix($key);
        $value = $this->addTablePrefix($value);
        $this->statements['criteria'][] = compact('key', 'operator', 'value', 'joiner');

        return $this;
    }
}

```
