Skip to content
Snippets Groups Projects
Commit ce9948b9 authored by Arnaud Levy's avatar Arnaud Levy
Browse files

done

parent 0aec2076
No related branches found
No related tags found
No related merge requests found
......@@ -4,18 +4,10 @@ class ApplicationRecord < ActiveRecord::Base
# TODO put that in summernote-rails
# https://github.com/rails/rails/blob/b961af3345fe2f9e492ba1e5424c2ceb75ac6ead/actiontext/lib/action_text/attribute.rb#L4
# https://github.com/rails/rails/blob/b961af3345fe2f9e492ba1e5424c2ceb75ac6ead/actiontext/lib/action_text/content.rb#L121
def self.has_summernote(name)
class_eval <<-CODE, __FILE__, __LINE__ + 1
def #{name}
value = attributes['#{name}']
actiontext = ActionText::Content.new value
actiontext.to_s
end
def #{name}=(value)
actiontext = ActionText::Content.new value
self.attributes['#{name}'] = actiontext.to_html
end
serialize :#{name}, ActionText::Content
CODE
end
......@@ -29,7 +21,7 @@ class ApplicationRecord < ActiveRecord::Base
def convert_to_summernote
@@summernote_fields.each do |field|
self["#{field}_new"] = send(field).body.to_html
self.attributes["#{field}_new"] = send(field).body.to_html
.gsub('<div>', '<p>')
.gsub('</div>', '</p>')
.gsub('<strong>', '<b>')
......
......@@ -14,7 +14,7 @@
<h3 class="h5 mt-4"><%= Communication::Website::Post.human_attribute_name('text') %></h3>
<%= @post.text %>
<hr>
<pre><%= @post.text_new %></pre>
<pre><%= @post.text_new.to_html %></pre>
</div>
</div>
</div>
......
......@@ -87,18 +87,18 @@ A l'édition, la balise est "remplie" avant affichage, pour avoir une preview.
A l'enregistrement, la balise est vidée.
Etapes normales :
1. A l'import d'une image, ajouter l'action-text-attachement autour
2. A l'enregistrement, déshydrater les action-text-attachements
3. A l'édition, réhydrater les action-text-attachements
4. Après l'enregistrement mettre à jour les blobs attachés à l'objet parent (le post, par exemple)
-[ ] A l'import d'une image, ajouter l'action-text-attachement autour
-[x] A l'enregistrement, déshydrater les action-text-attachements
-[x] A l'édition, réhydrater les action-text-attachements
-[ ] Après l'enregistrement mettre à jour les blobs attachés à l'objet parent (le post, par exemple)
Etapes de migration :
1. Sauvegarder tous les objets à migrer (rails app:fix)
2. A la sauvegarde, transformer le markup Trix en markup Summernote (application_record)
3. Enlever les scripts de l'application_record
4. Supprimer les champs ActionText dans les modèles
5. Supprimer la table d'ActionText
6. Renommer les champs en enlevant _new
-[x] A la sauvegarde, transformer le markup Trix en markup Summernote (application_record)
-[ ] Sauvegarder tous les objets à migrer (rails app:fix)
-[ ] Enlever les scripts de l'application_record
-[ ] Supprimer les champs ActionText dans les modèles
-[ ] Supprimer la table d'ActionText
-[ ] Renommer les champs en enlevant _new
Si un programme a 5 champs summernote avec 3 images dans chaque champ, cela fait 15 attachments à lier au programme.
Si on enlève une image d'un champ, il faut mettre à jour la liste pour avoir les 14 bons attachments.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment