I'm using angular.js and trying to verify the form before actually submitting it. This is my HTML so far:

```
<form name="form" class="css-form" novalidate>
    <table>
        <tr>
            <td>
                <input type="text" ng-model="branch.phone_number" name="uPhone" required="" />
                <br />
                <div ng-show="form.$submitted || form.uPhone.$touched">
                    <div ng-show="form.uPhone.$error.required">Insert phone number!</div>
                </div>
            </td>
        </tr>
        <tr>
            <td>
                <input type="checkbox" ng-model="branch.approved" ng-checked="branch.approved === 1" required="" ng-disabled="checkUser()" />
            </td>
        <tr/>
        <tr>
            <td align="right">
                <input type="button" ng-click="reset()" value="Reset" />
            </td>
        <tr/>
        <tr>
            <td align="left">
                <input type="submit" ng-click="form.$valid && save()" value="Save" />
            </td>
        </tr>
    </table>
</form>

```

And this is my `checkUser` function:

```
    $scope.checkUser = function() {
        return (user.get().is_admin === 1) ? false : true;
    };

```

Basically, if `ng-model="branch.approved"` is not truthy, the form won't allow to submit it. If I delete the ng-disabled attribute, the form submits.

What's going on and how to solve it? Thanks!