renameModal.js 1018 B

12345678910111213141516171819202122232425262728293031323334
  1. define(['plugins/dialog', 'knockout', , 'knockout.validation'], function (dialog, ko, ko_validation) {
  2. ko.validation = ko_validation;
  3. var RenameModal = function(defaultValue) {
  4. var self = this;
  5. self.previousName = defaultValue;
  6. self.input = ko.observable(defaultValue).extend({
  7. required: true,
  8. pattern: {
  9. message : 'The name must not contain a \'/\'',
  10. params : '^[^/]+$'
  11. }
  12. });
  13. self.form = ko.validatedObservable( {input: self.input} );
  14. self.isValid = ko.computed(function() {
  15. return self.form.isValid() && self.input() != self.previousName;
  16. });
  17. };
  18. RenameModal.prototype.ok = function() {
  19. dialog.close(this, this.input());
  20. };
  21. RenameModal.prototype.close = function() {
  22. dialog.close(this);
  23. };
  24. RenameModal.show = function(defaultValue){
  25. return dialog.show(new RenameModal(defaultValue));
  26. };
  27. return RenameModal;
  28. });