app/models/attachment.rb in tawork-0.0.24 vs app/models/attachment.rb in tawork-0.0.25
- old
+ new
@@ -3,16 +3,30 @@
include Elasticsearch::Model::Callbacks
# after_save :save_to_git
belongs_to :attachable, :polymorphic => true
validates_presence_of :attachable
+ after_update :update_version_count
- settings do
- mappings dynamic: 'false' do
+ settings analysis: {
+ filter: {
+ nGram_filter: Searcher::Filters.ngram
+ },
+ analyzer: {
+ email_tokenizer: {
+ tokenizer: "uax_url_email",
+ filter: "lowercase"
+ },
+ nGram_analyzer: Searcher::Analyzers.ngram,
+ email_ngram_analyzer: Searcher::Analyzers.email_ngram,
+ whitespace_analyzer: Searcher::Analyzers.whitespace
+ },
+ } do
+ mapping dynamic: 'false', index_analyzer: "nGram_analyzer", search_analyzer: "whitespace_analyzer" do
indexes :id, :index => :not_analyzed
indexes :type, :as => :type, :boost => 100
- indexes :filename, :analyzer => 'snowball', :boost => 100
+ indexes :filename, :analyzer => 'stop', :boost => 100
indexes :content_type, :analyzer => 'snowball'
indexes :body, :analyzer => 'snowball'
indexes :created_at, :type => 'date', :include_in_all => false
indexes :updated_at, :type => 'date', :include_in_all => false
end
@@ -120,16 +134,23 @@
text.encode(Encoding.find('ASCII'), encoding_options)
rescue
Rails.logger.info "document not extractable."
end
+ def save_and_destroy(deleted_by)
+ DeletedItem.save_and_destroy(self, deleted_by)
+ end
+
protected
def wiki_attachment_data
"#{id}-data"
end
def wiki_dir
"/attachments/#{id}"
end
+ def update_version_count
+ update_column(:version_count, versions.count)
+ end
end