[25031] users/jberry/mpwa
source_changes at macosforge.org
source_changes at macosforge.org
Fri May 11 21:02:43 PDT 2007
Revision: 25031
http://trac.macosforge.org/projects/macports/changeset/25031
Author: jberry at macports.org
Date: 2007-05-11 21:02:42 -0700 (Fri, 11 May 2007)
Log Message:
-----------
Implement search for port by portname.
Modified Paths:
--------------
users/jberry/mpwa/app/controllers/port_controller.rb
users/jberry/mpwa/app/models/port.rb
users/jberry/mpwa/app/views/layouts/application.rhtml
users/jberry/mpwa/doc/TODO.txt
Added Paths:
-----------
users/jberry/mpwa/app/views/port/query.rhtml
Modified: users/jberry/mpwa/app/controllers/port_controller.rb
===================================================================
--- users/jberry/mpwa/app/controllers/port_controller.rb 2007-05-12 03:06:52 UTC (rev 25030)
+++ users/jberry/mpwa/app/controllers/port_controller.rb 2007-05-12 04:02:42 UTC (rev 25031)
@@ -50,6 +50,12 @@
redirect_to :action => 'list'
end
+ def query
+ @q = params[:q]
+ @port_pages, @ports = paginate :ports, :per_page => 80, :order => 'name',
+ :conditions => Port.build_query_conditions(@q)
+ end
+
private :create, :edit, :update, :destroy
end
Modified: users/jberry/mpwa/app/models/port.rb
===================================================================
--- users/jberry/mpwa/app/models/port.rb 2007-05-12 03:06:52 UTC (rev 25030)
+++ users/jberry/mpwa/app/models/port.rb 2007-05-12 04:02:42 UTC (rev 25031)
@@ -29,8 +29,12 @@
port.save
end
return port
- end
+ end
+ def Port.build_query_conditions(q)
+ "name like '%#{sanitize_sql(q)}%'"
+ end
+
def has_tag(name)
!self.tags.select { |t| t.name == name }.empty?
end
Modified: users/jberry/mpwa/app/views/layouts/application.rhtml
===================================================================
--- users/jberry/mpwa/app/views/layouts/application.rhtml 2007-05-12 03:06:52 UTC (rev 25030)
+++ users/jberry/mpwa/app/views/layouts/application.rhtml 2007-05-12 04:02:42 UTC (rev 25031)
@@ -15,7 +15,7 @@
<h1><a href='/'>MacPorts</a></h1>
</div>
</div class='header_right'>
- <form action='/search' method='post'>
+ <form action='/port/query' method='post'>
Search: <input type='text' size='25' value='' name='q'>
</form>
</div>
Added: users/jberry/mpwa/app/views/port/query.rhtml
===================================================================
--- users/jberry/mpwa/app/views/port/query.rhtml (rev 0)
+++ users/jberry/mpwa/app/views/port/query.rhtml 2007-05-12 04:02:42 UTC (rev 25031)
@@ -0,0 +1,16 @@
+<h2>Search Results</h2>
+
+<p>Result of search for "<%=h @q %>"
+
+<table>
+ <% for row in columnize(@ports.sort, 4) %>
+ <tr>
+ <% for port in row %>
+ <td><%= link_to port.name, :controller => 'port', :action => 'show', :id => port if !port.nil? %></td>
+ <% end %>
+ </tr>
+ <% end %>
+</table>
+
+<%= link_to 'Previous page', { :page => @port_pages.current.previous, :q => @q } if @port_pages.current.previous %>
+<%= link_to 'Next page', { :page => @port_pages.current.next, :q => @q } if @port_pages.current.next %>
Modified: users/jberry/mpwa/doc/TODO.txt
===================================================================
--- users/jberry/mpwa/doc/TODO.txt 2007-05-12 03:06:52 UTC (rev 25030)
+++ users/jberry/mpwa/doc/TODO.txt 2007-05-12 04:02:42 UTC (rev 25031)
@@ -1,10 +1,10 @@
Short Term:
-Medium Term:
+ - Get it live
+ - Improve ui and gui
+ - Implement tagging
+ - Make latest/greatest port version more visible
- - Improve (drastically) the UI for port browsing
- - Implement port searching
-
UI Design Thoughts:
- Global Page header:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macports-changes/attachments/20070511/897fac0a/attachment.html
More information about the macports-changes
mailing list