[24828] users/jberry/mpwa/app

source_changes at macosforge.org source_changes at macosforge.org
Sat May 5 16:28:44 PDT 2007


Revision: 24828
          http://trac.macosforge.org/projects/macports/changeset/24828
Author:   jberry at macports.org
Date:     2007-05-05 16:28:44 -0700 (Sat, 05 May 2007)

Log Message:
-----------
mpwa: Check that there's actually a submitter name and email, and simplify by using some additiional rails magic

Modified Paths:
--------------
    users/jberry/mpwa/app/controllers/tag_controller.rb
    users/jberry/mpwa/app/models/port.rb
    users/jberry/mpwa/app/models/port_pkg.rb
    users/jberry/mpwa/app/models/tag.rb

Modified: users/jberry/mpwa/app/controllers/tag_controller.rb
===================================================================
--- users/jberry/mpwa/app/controllers/tag_controller.rb	2007-05-05 23:06:57 UTC (rev 24827)
+++ users/jberry/mpwa/app/controllers/tag_controller.rb	2007-05-05 23:28:44 UTC (rev 24828)
@@ -15,7 +15,7 @@
   def show
     if !params[:name].nil?
         @key = params[:name]
-        @tag = Tag.by_name(params[:name])
+        @tag = Tag.find_by_name(params[:name])
         render :action => 'notag' if @tag.nil?
     else
         @key = params[:id]

Modified: users/jberry/mpwa/app/models/port.rb
===================================================================
--- users/jberry/mpwa/app/models/port.rb	2007-05-05 23:06:57 UTC (rev 24827)
+++ users/jberry/mpwa/app/models/port.rb	2007-05-05 23:28:44 UTC (rev 24828)
@@ -7,12 +7,8 @@
     has_and_belongs_to_many :tags
     has_and_belongs_to_many :maintainers, :class_name => 'Person', :join_table => 'maintainers_ports' 
     
-    def Port.by_name(name)
-        Port.find(:first, :conditions => "name = '#{name}'")
-    end
-    
     def Port.ensure_port(name, meta)
-        port = Port.by_name(name)
+        port = Port.find_by_name(name)
         if port.nil?
             # build a new port using default values
             port = Port.new
@@ -40,7 +36,7 @@
     end
 
     def add_tag(name)
-        self.tags << Tag.ensure_tag(name) unless has_tag name
+        self.tags << Tag.find_or_create_by_name(name) unless has_tag name
     end
     
 end

Modified: users/jberry/mpwa/app/models/port_pkg.rb
===================================================================
--- users/jberry/mpwa/app/models/port_pkg.rb	2007-05-05 23:06:57 UTC (rev 24827)
+++ users/jberry/mpwa/app/models/port_pkg.rb	2007-05-05 23:28:44 UTC (rev 24828)
@@ -91,6 +91,8 @@
         File.open(metaPath, "r") { |f| meta = PortPkg.extract_pkg_meta_from_file(f) }
         
         # Fill-in portpkg information from metadata
+        raise PortPkgException, "no submitter name" if meta.submitter_name.nil? || meta.submitter_name.empty?
+        raise PortPkgException, "no submitter email" if meta.submitter_email.nil? || meta.submitter_email.empty?
         self.submitted_at = Time.now
         self.submitter = Person.ensure_person_with_email(meta.submitter_email, meta.submitter_name)
         self.submitter_notes = meta.submitter_notes
@@ -140,7 +142,7 @@
     end
 
     def add_tag(name)
-        self.tags << Tag.ensure_tag(name) unless has_tag name
+        self.tags << Tag.find_or_create_by_name(name) unless has_tag name
     end
     
 end

Modified: users/jberry/mpwa/app/models/tag.rb
===================================================================
--- users/jberry/mpwa/app/models/tag.rb	2007-05-05 23:06:57 UTC (rev 24827)
+++ users/jberry/mpwa/app/models/tag.rb	2007-05-05 23:28:44 UTC (rev 24828)
@@ -1,21 +1,4 @@
 class Tag < ActiveRecord::Base
     has_and_belongs_to_many :ports
     has_and_belongs_to_many :port_pkgs
-    
-    def Tag.by_name(name)
-        Tag.find(:first, :conditions => "name = '#{name}'")
-    end
-    
-    def Tag.ensure_tag(name)
-        tag = Tag.by_name(name)
-        if tag.nil?
-            # build a new tag
-            tag = Tag.new
-            tag.name = name
-            
-            # Save the tag
-            tag.save
-        end
-        return tag
-    end    
 end

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070505/5db07529/attachment.html


More information about the macports-changes mailing list