Skip to content

Commit

Permalink
Merge 7284786 into 0c41f7a
Browse files Browse the repository at this point in the history
  • Loading branch information
sayamkanwar committed Dec 9, 2018
2 parents 0c41f7a + 7284786 commit ba3c67e
Showing 1 changed file with 42 additions and 23 deletions.
65 changes: 42 additions & 23 deletions ide/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,32 +89,51 @@ def save_to_db(request):
net_name = request.POST.get('net_name')
user_id = request.POST.get('user_id')
next_layer_id = request.POST.get('nextLayerId')
public_sharing = True
user = None
public_sharing = True
if net_name == '':
net_name = 'Net'
try:
# making model sharing public by default for now
# TODO: Prvilege on Sharing
if user_id:
user_id = int(user_id)
user = User.objects.get(id=user_id)

# create a new model on share event
model = Network(name=net_name, public_sharing=public_sharing, author=user)
model.save()
# create first version of model
model_version = NetworkVersion(network=model, network_def=net)
model_version.save()
# create initial update for nextLayerId
model_update = NetworkUpdates(network_version=model_version,
updated_data=json.dumps({'nextLayerId': next_layer_id}),
tag='ModelShared')
model_update.save()

return JsonResponse({'result': 'success', 'id': model.id})
except:
return JsonResponse({'result': 'error', 'error': str(sys.exc_info()[1])})

if Network.objects.filter(name=net_name).exists():
# Update the exising json field
try:
if user_id:
user_id = int(user_id)
user = User.objects.get(id=user_id)
# load the model with the net name
model = Network.objects.get(name=net_name)
model_id = model.id
# update the model with network id same as model id
existing_model = NetworkVersion.objects.get(network_id=model_id)
existing_model.network_def = net
existing_model.save()
return JsonResponse({'result': 'success', 'id': model.id})
except:
return JsonResponse({'result': 'error', 'error': str(sys.exc_info()[1])})
else:
try:
if user_id:
user_id = int(user_id)
user = User.objects.get(id=user_id)
# create a new model on save event
model = Network(name=net_name,
public_sharing=public_sharing,
author=user)
model.save()
# create first version of model
model_version = NetworkVersion(network=model,
network_def=net)
model_version.save()
# create initial update for nextLayerId
model_update = NetworkUpdates(network_version=model_version,
updated_data=json.dumps({'nextLayerId': next_layer_id}),
tag="ModelShared")
model_update.save()
return JsonResponse({'result': 'success',
'id': model.id})
except:
return JsonResponse({'result': 'error',
'error': str(sys.exc_info()[1])})


def create_network_version(network_def, updates_batch):
Expand Down

0 comments on commit ba3c67e

Please sign in to comment.