Sha256: 3db7b4ece06abe66918d8113758ccc7b033ef5e33cdfde5449d5c705299c504c

Contents?: true

Size: 1.98 KB

Versions: 3

Compression:

Stored size: 1.98 KB

Contents

var app;
var app = angular.module('yopass', ['ngRoute']);

app.controller('createController', function($scope, $http, $location) {
  $scope.save = function(s) {
    $http.post('/v1/secret', {secret: s.secret, lifetime: s.lifetime})
      .success(function(data, status, headers, config) {
        $scope.error = false;
        var base_url = window.location.protocol+"//"+window.location.host+"/#/s/";
        $scope.full_url = base_url+data.key+"/"+data.decryption_key;
        $scope.secret = null; //clear secret on success
        $scope.short_url = base_url+data.key;
        $scope.decryption_key = data.decryption_key;
      })
      .error(function(data, status, headers, config) {
        $scope.error = data.message
      });
  };
});

app.controller('ViewController', function($scope, $routeParams, $http) {
  function getSecret($key, $decryption_key) {
    $http.get('/v1/secret/'+$routeParams.key+'/'+$decryption_key)
      .success(function(data, status, headers, config) {
        $scope.error = false;
        $scope.invalidPassword = false;
        $scope.secret = data.secret;
      })
      .error(function(data, status, headers, config) {
        if(status == 401) {
          $scope.invalidPassword = true;
          return;
        }
        $scope.invalidPassword = false;
        $scope.error = false;
      });
  };
  if ($routeParams.decryption_key) {
    getSecret($routeParams.key,$routeParams.decryption_key);
  } else {
    $scope.display_form = true;
    $scope.view = function(form) {
      getSecret($routeParams.key, form.decryption_key);
    };
  };
});

app.config(function($routeProvider, $locationProvider) {
  $routeProvider
   .when('/s/:key/:decryption_key', {
    templateUrl: 'display-secret.html',
    controller: 'ViewController',
  })
  .when('/s/:key', {
    templateUrl: 'display-secret.html',
    controller: 'ViewController',
  })
  .when('/create', {
    templateUrl: 'create-secret.html',
    controller: 'createController'
  })
  .otherwise({
    redirectTo: '/create'
  });
});

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
yopass-3.0.5 lib/public/js/app.js
yopass-3.0.4 lib/public/js/app.js
yopass-3.0.3 lib/public/js/app.js