From 9393a9630277c6b8858ded50744052a1d4e552c5 Mon Sep 17 00:00:00 2001
From: zmagod
Date: Wed, 24 Aug 2016 14:10:50 +0200
Subject: [PATCH 1/2] adds edit workflow link if no workflow [fixes SCI-374]
---
app/assets/javascripts/projects/canvas.js | 9 ++++
app/assets/stylesheets/projects.scss | 45 +++++++++++++++-----
app/views/projects/show/_experiment.html.erb | 16 +++++--
config/locales/en.yml | 4 +-
4 files changed, 58 insertions(+), 16 deletions(-)
diff --git a/app/assets/javascripts/projects/canvas.js b/app/assets/javascripts/projects/canvas.js
index b5bf108d8..79de83959 100644
--- a/app/assets/javascripts/projects/canvas.js
+++ b/app/assets/javascripts/projects/canvas.js
@@ -2990,6 +2990,15 @@ function initJsPlumb(containerSel, containerChildSel, modulesSel, params) {
jsPlumb.fire("jsPlumbLoaded", instance);
}
+// Opens edit mode if redirected from empty experiment
+(function noWorkflowimgEditMode(){
+ if( getParam('editMode') ){
+ $(document).ready(function(){
+ $("#edit-canvas-button").click();
+ });
+ }
+})();
+
// Initialize first-time tutorial
function initializeTutorial(isEditMode) {
if (showTutorial()) {
diff --git a/app/assets/stylesheets/projects.scss b/app/assets/stylesheets/projects.scss
index a4cf5e8bc..a583506f6 100644
--- a/app/assets/stylesheets/projects.scss
+++ b/app/assets/stylesheets/projects.scss
@@ -407,40 +407,63 @@ li.module-hover {
}
}
-/* EXPERIMENT PANEL */
+// EXPERIMENT PANEL
.experiment-panel {
+ @include box-shadow(0 4px 8px 0 $color-dove-gray);
+ height: 550px;
margin: 0 auto;
margin-bottom: 35px;
margin-top: 45px;
max-width: 700px;
- height: 550px;
- @include box-shadow(0px 4px 8px 0px $color-dove-gray);
.experiment-description {
- margin-top:20px;
+ margin-top: 20px;
}
.no-description {
+ color: $color-alto;
display: block;
+ font-size: 18px;
+ font-weight: bold;
text-align: center;
- font-size: 16px;
+
+ a {
+ color: $color-alto;
+ text-decoration: none;
+ }
+ }
+
+ .no-workflowimg {
+ color: $color-alto;
+ display: block;
+ font-size: 26px;
+ font-weight: bold;
+ height: 300px;
+ margin: 15px 0;
+ padding-top: 150px;
+ text-align: center;
+
+ a {
+ color: $color-alto;
+ text-decoration: none;
+ }
}
}
.workflowimg-container {
- margin: 15px 0;
height: 300px;
+ margin: 15px 0;
img {
- max-width:100%;
max-height: 300px;
+ max-width: 100%;
}
}
-/* SHOW */
+// SHOW
.center-btn {
- margin: 0 auto;
display: block;
+ margin: 0 auto;
max-width: 200px;
}
@@ -452,10 +475,10 @@ li.module-hover {
text-align: center;
&:hover {
- color:$color-alto;
+ color: $color-alto;
}
&:focus {
- color:$color-alto;
+ color: $color-alto;
}
}
diff --git a/app/views/projects/show/_experiment.html.erb b/app/views/projects/show/_experiment.html.erb
index 29c20c73b..8ed0eea7e 100644
--- a/app/views/projects/show/_experiment.html.erb
+++ b/app/views/projects/show/_experiment.html.erb
@@ -29,7 +29,15 @@
>
<% else %>
-
+
+ <% if can_edit_experiment(experiment) %>
+
<%= link_to( t('experiments.edit.add_task'),
+ canvas_experiment_path(experiment,
+ editMode: true)) %>
+ <% else %>
+
<%= t('experiments.edit.no_workflowimg') %>
+ <% end %>
+
<% end %>
@@ -39,13 +47,13 @@
<%= experiment.description %>
<% else %>
<% if can_edit_experiment(experiment) %>
- <%= link_to t('experiments.edit.add-description'),
+
<%= link_to t('experiments.edit.add-description'),
edit_project_experiment_url(@project, experiment),
remote: true,
data: { id: experiment.id },
- class: 'no-description-experiment' %>
+ class: 'no-description-experiment' %>
<% else %>
- <%= t('experiments.edit.no-description') %>
+ <%= t('experiments.edit.no-description') %>
<% end %>
<% end %>
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 0ca267122..03e885407 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -606,8 +606,10 @@ en:
modal_create: 'Save'
label_title: "Edit details"
panel_label: 'Change details'
- add-description: 'Add description'
+ add-description: 'Add description...'
no-description: 'No description'
+ no_workflowimg: 'No workflow'
+ add_task: 'Add a task to experiment...'
create:
success_flash: "Successfully created experiment %{experiment}"
error_flash: 'Could not create a new experiment.'
From f515366d912bbbdb4dd48de3954f55cdbfa113bc Mon Sep 17 00:00:00 2001
From: zmagod
Date: Thu, 25 Aug 2016 09:11:42 +0200
Subject: [PATCH 2/2] fixes workflowing after updating description, fixes
canvas bug
---
app/assets/javascripts/projects/canvas.js | 4 +---
app/controllers/experiments_controller.rb | 1 +
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/app/assets/javascripts/projects/canvas.js b/app/assets/javascripts/projects/canvas.js
index 79de83959..789545fda 100644
--- a/app/assets/javascripts/projects/canvas.js
+++ b/app/assets/javascripts/projects/canvas.js
@@ -2993,9 +2993,7 @@ function initJsPlumb(containerSel, containerChildSel, modulesSel, params) {
// Opens edit mode if redirected from empty experiment
(function noWorkflowimgEditMode(){
if( getParam('editMode') ){
- $(document).ready(function(){
- $("#edit-canvas-button").click();
- });
+ $("#edit-canvas-button").click();
}
})();
diff --git a/app/controllers/experiments_controller.rb b/app/controllers/experiments_controller.rb
index e1f4345b4..91d3a6eb9 100644
--- a/app/controllers/experiments_controller.rb
+++ b/app/controllers/experiments_controller.rb
@@ -66,6 +66,7 @@ class ExperimentsController < ApplicationController
@experiment.update_attributes(experiment_params)
@experiment.last_modified_by = current_user
if @experiment.save
+ @experiment.touch(:workflowimg_updated_at)
flash[:success] = t('experiments.update.success_flash',
experiment: @experiment.name)
redirect_to canvas_experiment_path(@experiment)