@@ -122,27 +122,27 @@ public function new(array $data)
122122
123123 DB ::beginTransaction ();
124124
125- $ secretKey = str_random (16 ) . '. ' . str_random (15 );
126- $ key = new Models \APIKey ;
127- $ key ->fill ([
128- 'public ' => str_random (16 ),
129- 'secret ' => Crypt::encrypt ($ secretKey ),
130- 'allowed_ips ' => empty ($ this ->allowed ) ? null : json_encode ($ this ->allowed )
131- ]);
132- $ key ->save ();
133-
134- foreach ($ data ['permissions ' ] as $ permission ) {
135- if (in_array ($ permission , $ this ->permissions )) {
136- $ model = new Models \APIPermission ;
137- $ model ->fill ([
138- 'key_id ' => $ key ->id ,
139- 'permission ' => $ permission
140- ]);
141- $ model ->save ();
125+ try {
126+ $ secretKey = str_random (16 ) . '. ' . str_random (15 );
127+ $ key = new Models \APIKey ;
128+ $ key ->fill ([
129+ 'public ' => str_random (16 ),
130+ 'secret ' => Crypt::encrypt ($ secretKey ),
131+ 'allowed_ips ' => empty ($ this ->allowed ) ? null : json_encode ($ this ->allowed )
132+ ]);
133+ $ key ->save ();
134+
135+ foreach ($ data ['permissions ' ] as $ permission ) {
136+ if (in_array ($ permission , $ this ->permissions )) {
137+ $ model = new Models \APIPermission ;
138+ $ model ->fill ([
139+ 'key_id ' => $ key ->id ,
140+ 'permission ' => $ permission
141+ ]);
142+ $ model ->save ();
143+ }
142144 }
143- }
144145
145- try {
146146 DB ::commit ();
147147 return $ secretKey ;
148148 } catch (\Exception $ ex ) {
@@ -164,11 +164,16 @@ public function revoke(string $key)
164164 {
165165 DB ::beginTransaction ();
166166
167- $ model = Models \APIKey::where ('public ' , $ key )->firstOrFail ();
168- $ permissions = Models \APIPermission::where ('key_id ' , $ model ->id )->delete ();
169- $ model ->delete ();
167+ try {
168+ $ model = Models \APIKey::where ('public ' , $ key )->firstOrFail ();
169+ $ permissions = Models \APIPermission::where ('key_id ' , $ model ->id )->delete ();
170+ $ model ->delete ();
170171
171- DB ::commit ();
172+ DB ::commit ();
173+ } catch (\Exception $ ex ) {
174+ DB ::rollBack ();
175+ throw $ ex ;
176+ }
172177 }
173178
174179}
0 commit comments