<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <title>Demo App</title>
  <link data-require="bootstrap@3.3.5" data-semver="3.3.5" rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" />
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular-touch.min.js"></script>
  <script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.14.3.min.js"></script>
  <script src="script.js"></script>
</head>

<body ng-app="demoApp">
  <div ng-controller="MainController">
    <div class="jumbotron text-center">
      <button class="btn btn-primary" ng-click="showModal()">Show Modal</button>
    </div>
  </div>
</body>

<script type="text/ng-template" id="modalContent.html">
  <div class="modal-header">
    <h3 class="modal-title">Modal</h3>
  </div>
  <div class="modal-body">
    <div class="form">
      <div class="form-group">
        <label for="email" class="sr-only">Email</label>
        <input type="email" id="email" name="email" class="form-control" ng-model="vm.email" placeholder="Email" required>
      </div>
    </div>
  </div>
  <div class="modal-footer">
    <button class="btn btn-primary" type="button" ng-click="ok()">OK</button>
    <button class="btn btn-warning" type="button" ng-click="cancel()">Cancel</button>
  </div>
</script>

</html>
(function(angular) {
  'use strict';
  var demoApp = angular.module('demoApp', ['ngTouch', 'ui.bootstrap']);

  demoApp.controller('MainController', ['$scope', '$modal', function($scope, $modal) {
    $scope.showModal = function() {
      $modal.open({
        templateUrl: 'modalContent.html',
        controller: ['$scope', '$modalInstance', function($scope, $modalInstance) {
          $scope.ok = function() {
            $modalInstance.close('ok');
          };

          $scope.cancel = function() {
            $modalInstance.dismiss('cancel');
          };
        }]
      });
    };
  }]);
})(window.angular);