Update the server-group properties
(self, gid)
| 237 | |
| 238 | @pga_login_required |
| 239 | def update(self, gid): |
| 240 | """Update the server-group properties""" |
| 241 | |
| 242 | # There can be only one record at most |
| 243 | servergroup = ServerGroup.query.filter_by( |
| 244 | user_id=current_user.id, |
| 245 | id=gid).first() |
| 246 | |
| 247 | data = request.form if request.form else json.loads( |
| 248 | request.data |
| 249 | ) |
| 250 | |
| 251 | if servergroup is None: |
| 252 | return make_json_response( |
| 253 | status=417, |
| 254 | success=0, |
| 255 | errormsg=gettext(SG_NOT_FOUND_ERROR) |
| 256 | ) |
| 257 | else: |
| 258 | try: |
| 259 | if 'name' in data: |
| 260 | servergroup.name = data['name'] |
| 261 | db.session.commit() |
| 262 | except exc.IntegrityError: |
| 263 | db.session.rollback() |
| 264 | return bad_request(gettext( |
| 265 | "The specified server group already exists." |
| 266 | )) |
| 267 | except Exception as e: |
| 268 | db.session.rollback() |
| 269 | return make_json_response( |
| 270 | status=410, success=0, errormsg=str(e) |
| 271 | ) |
| 272 | |
| 273 | icon_class, is_shared = get_icon_css_class(gid, servergroup.user_id) |
| 274 | return jsonify( |
| 275 | node=self.blueprint.generate_browser_node( |
| 276 | gid, |
| 277 | None, |
| 278 | servergroup.name, |
| 279 | icon_class, |
| 280 | True, |
| 281 | self.node_type, |
| 282 | can_delete=True, # This is user created hence can delete |
| 283 | is_shared=is_shared |
| 284 | ) |
| 285 | ) |
| 286 | |
| 287 | @pga_login_required |
| 288 | def properties(self, gid): |
no test coverage detected