/NewClientWindows.j

http://github.com/chollier/Edgar · Unknown · 143 lines · 114 code · 29 blank · 0 comment · 0 complexity · 9df3ee4b2dcbaa36cdd072e23d756fb7 MD5 · raw file

  1. @import <Foundation/CPObject.j>
  2. @import "DatePicker/DatePicker.j"
  3. @import "ClientsController.j"
  4. var SharedClientWindow = nil;
  5. @implementation NewClientWindow : CPWindow
  6. {
  7. @outlet CPTextField nom @accessors;
  8. @outlet CPTextField prenom @accessors;
  9. @outlet DatePicker datedenaissance @accessors;
  10. @outlet CPTextField telephone @accessors;
  11. @outlet CPTextField email @accessors;
  12. @outlet CPTextField adresse @accessors;
  13. @outlet CPTextField codepostal @accessors;
  14. @outlet CPTextField ville @accessors;
  15. @outlet ClientsController clientsController;
  16. @outlet CPButton addButton;
  17. @outlet CPButton cancelButton;
  18. //@outlet ClientController clientController;
  19. }
  20. + (id)sharedNewClientWindow
  21. {
  22. return SharedClientWindow;
  23. }
  24. - (void)awakeFromCib
  25. {
  26. console.log("new client window woke up");
  27. SharedClientWindow = self;
  28. [super awakeFromCib];
  29. [datedenaissance displayPreset:1];
  30. [datedenaissance setDelegate:self];
  31. // [identifierField setValue:[CPColor grayColor] forThemeAttribute:"text-color" inState:CPTextFieldStatePlaceholder];
  32. }
  33. - (id)initWithContentRect:(CGRect)aRect styleMask:(unsigned)aMask
  34. {
  35. if (self = [super initWithContentRect:aRect styleMask:aMask])
  36. {
  37. //console.log("new client window init");
  38. [self center];
  39. //[self setMovableByWindowBackground:YES];
  40. [cancelButton setKeyEquivalent:CPEscapeFunctionKey];
  41. }
  42. return self;
  43. }
  44. - (@action)orderFront:(id)sender
  45. {
  46. [super orderFront:sender];
  47. [nom setStringValue:""];
  48. //[addButton setEnabled:NO];
  49. }
  50. -(@action)addButtonPressed:(id)sender
  51. {
  52. console.log("add pressed");
  53. if ([[nom stringValue] length] != 0 && [[prenom stringValue] length] != 0 && [datedenaissance date] != nil && [[telephone stringValue] length] != 0 && [[email stringValue] length] != 0 && [[adresse stringValue] length] != 0 && [[codepostal stringValue] length] != 0 && [[ville stringValue] length] != 0)
  54. {
  55. console.log([[datedenaissance date] toDateString]);
  56. //sale
  57. clientController = [[ClientsController alloc] init];
  58. client = [clientController addClient:{"nom":[nom stringValue], "prenom":[prenom stringValue], "anniversaire":[[datedenaissance date] toDateString], "telephone":[telephone stringValue], "email":[email stringValue], "adresse":[adresse stringValue], "codepostal":[codepostal intValue], "ville":[ville stringValue], "notes_memo":@"blah", "alias":[[nom stringValue] stringByAppendingString:[prenom stringValue]], "password":@"lol"}];
  59. [[CPNotificationCenter defaultCenter] postNotificationName:@"ClientAdded" object:nil];
  60. [self orderOut:self]
  61. } else
  62. {
  63. console.log("we're not ok");
  64. }
  65. }
  66. /*- (@action)addRepository:(id)sender
  67. {
  68. var repoIdentifier = [identifierField stringValue];
  69. if (!repoIdentifier)
  70. return;
  71. var existingRepo = [[GithubAPIController sharedController] repositoryForIdentifier:repoIdentifier];
  72. if (existingRepo)
  73. {
  74. [repoController addRepository:existingRepo];
  75. [self orderOut:self];
  76. return;
  77. }
  78. [[GithubAPIController sharedController] loadRepositoryWithIdentifier:repoIdentifier callback:function(repo)
  79. {
  80. [progressIndicator setHidden:YES];
  81. [errorMessageField setHidden:!!repo];
  82. [defaultButton setEnabled:YES];
  83. [cancelButton setEnabled:YES];
  84. if (repo)
  85. {
  86. [repoController addRepository:repo];
  87. [self orderOut:self];
  88. }
  89. }];
  90. [errorMessageField setHidden:YES];
  91. [progressIndicator setHidden:NO];
  92. [defaultButton setEnabled:NO];
  93. [cancelButton setEnabled:NO];
  94. }*/
  95. - (void)sendEvent:(CPEvent)anEvent
  96. {
  97. /* if ([anEvent type] === CPKeyUp && [anEvent keyCode] === CPTabKeyCode)
  98. // [self makeFirstResponder:nom];
  99. else*/
  100. [super sendEvent:anEvent];
  101. }
  102. -(void)datePickerValue:(id)sender
  103. {
  104. //[theDatePicker setDate:[CPDate dateWithTimeIntervalSinceNow:9000000]];
  105. //console.log([datedenaissance date]);
  106. }
  107. -(void)datePickerDidChange:(id)sender
  108. {
  109. /*if([sender object] === theDatePicker){
  110. [theDatePicker2 setMinDate: [theDatePicker date]];
  111. }*/
  112. //[self datePickerValue:sender];
  113. }
  114. @end