On 03/18/2010 03:11 PM, Scott Seago wrote:
> Mohammed Morsi wrote:
>> ---
>>  .../controllers/hardware_profiles_controller.rb    |   39 
>> ++++++++++++++++++++
>>  src/app/controllers/portal_pool_controller.rb      |    6 +++
>>  src/app/controllers/provider_controller.rb         |    6 +++
>>  src/app/views/hardware_profiles/_list.html.erb     |   24 ++++++++++++
>>  src/app/views/hardware_profiles/index.html.erb     |    1 +
>>  .../views/portal_pool/hardware_profiles.html.erb   |    1 +
>>  src/app/views/provider/hardware_profiles.html.erb  |    1 +
>>  7 files changed, 78 insertions(+), 0 deletions(-)
>>  create mode 100644 src/app/controllers/hardware_profiles_controller.rb
>>  create mode 100644 src/app/views/hardware_profiles/_list.html.erb
>>  create mode 100644 src/app/views/hardware_profiles/index.html.erb
>>  create mode 100644 src/app/views/portal_pool/hardware_profiles.html.erb
>>  create mode 100644 src/app/views/provider/hardware_profiles.html.erb
>>
>> diff --git a/src/app/controllers/hardware_profiles_controller.rb 
>> b/src/app/controllers/hardware_profiles_controller.rb
>> new file mode 100644
>> index 0000000..523a72c
>> --- /dev/null
>> +++ b/src/app/controllers/hardware_profiles_controller.rb
>> @@ -0,0 +1,39 @@
>> +# Copyright (C) 2010 Red Hat, Inc.
>> +#
>> +# This program is free software; you can redistribute it and/or modify
>> +# it under the terms of the GNU General Public License as published by
>> +# the Free Software Foundation; version 2 of the License.
>> +#
>> +# This program is distributed in the hope that it will be useful,
>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> +# GNU General Public License for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, write to the Free Software
>> +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
>> +# MA  02110-1301, USA.  A copy of the GNU General Public License is
>> +# also available at http://www.gnu.org/copyleft/gpl.html.
>> +
>> +# Filters added to this controller apply to all controllers in the 
>> application.
>> +# Likewise, all the methods added will be available for all 
>> controllers.
>> +
>> +require 'util/taskomatic'
>> +
>> +class HardwareProfilesController < ApplicationController
>> +  before_filter :require_user
>> +
>> +  def index
>> +    @hardware_profiles = HardwareProfile.find(:all)
>> +    #require_privilege(Privilege::PROVIDER_VIEW, @hardware_profile) ?
>> +  end
> Can we get rid of 'index' ? I'm not sure a flat list of all profiles 
> for all providers makes sense -- or maybe 'index' should require a 
> provider ID? Anyway it's not a big deal for this patch -- we just need 
> to decide how to handle this sort of page/request
>> +
>> +  def new
>> +  end
>> +
>> +  def create
>> +  end
>> +
>> +  def delete
>> +  end
>> +end
>> diff --git a/src/app/controllers/portal_pool_controller.rb 
>> b/src/app/controllers/portal_pool_controller.rb
>> index 90df8a5..449f96c 100644
>> --- a/src/app/controllers/portal_pool_controller.rb
>> +++ b/src/app/controllers/portal_pool_controller.rb
>> @@ -38,6 +38,12 @@ class PortalPoolController < ApplicationController
>>      @instances = @pool.instances
>>    end
>>
>> +  def hardware_profiles
>> +    @pool = PortalPool.find(params[:id])
>> +    @hardware_profiles = @pool.hardware_profiles
>> +    require_privilege(Privilege::INSTANCE_VIEW,@pool)
>> +  end
>> +
> Change this to POOL_VIEW
>>    def new
>>      require_privilege(Privilege::POOL_MODIFY)
>>      @portal_pool = PortalPool.new
>> diff --git a/src/app/controllers/provider_controller.rb 
>> b/src/app/controllers/provider_controller.rb
>> index 53056f5..b676fa7 100644
>> --- a/src/app/controllers/provider_controller.rb
>> +++ b/src/app/controllers/provider_controller.rb
>> @@ -50,6 +50,12 @@ class ProviderController < ApplicationController
>>      redirect_to :action => "index"
>>    end
>>
>> +  def hardware_profiles
>> +    @provider = Provider.find(params[:id])
>> +    @hardware_profiles = @provider.hardware_profiles
>> +    require_privilege(Privilege::PROVIDER_VIEW, @provider)
>> +  end
>> +
>>    def accounts
>>       @provider = Provider.find(params[:id])
>>       require_privilege(Privilege::ACCOUNT_VIEW, @provider)
>> diff --git a/src/app/views/hardware_profiles/_list.html.erb 
>> b/src/app/views/hardware_profiles/_list.html.erb
>> new file mode 100644
>> index 0000000..6b53194
>> --- /dev/null
>> +++ b/src/app/views/hardware_profiles/_list.html.erb
>> @@ -0,0 +1,24 @@
>> +<% if @hardware_profiles.size == 0 %>
>> +<h1>There are no hardware profiles to display</h1>
>> +<% else %>
>> + <table>
>> + <thead>
>> + <tr>
>> + <th scope="col">Name</th>
>> + <th scope="col">Memory</th>
>> + <th scope="col">Storage</th>
>> + <th scope="col">Architecture</th>
>> + </tr>
>> + </thead>
>> + <tbody>
>> + <%...@hardware_profiles.each {|hp| %>
>> + <tr>
>> + <td><%= hp.name %></td>
>> + <td><%= hp.memory %></td>
>> + <td><%= hp.storage %></td>
>> + <td><%= hp.architecture %></td>
>> + </tr>
>> + <% } %>
>> + </tbody>
>> + </table>
>> +<% end %>
>> diff --git a/src/app/views/hardware_profiles/index.html.erb 
>> b/src/app/views/hardware_profiles/index.html.erb
>> new file mode 100644
>> index 0000000..c19c3fa
>> --- /dev/null
>> +++ b/src/app/views/hardware_profiles/index.html.erb
>> @@ -0,0 +1 @@
>> +<%= render :partial => 'list' %>
>> diff --git a/src/app/views/portal_pool/hardware_profiles.html.erb 
>> b/src/app/views/portal_pool/hardware_profiles.html.erb
>> new file mode 100644
>> index 0000000..579d796
>> --- /dev/null
>> +++ b/src/app/views/portal_pool/hardware_profiles.html.erb
>> @@ -0,0 +1 @@
>> +<%= render :partial => 'hardware_profiles/list' %>
>> diff --git a/src/app/views/provider/hardware_profiles.html.erb 
>> b/src/app/views/provider/hardware_profiles.html.erb
>> new file mode 100644
>> index 0000000..579d796
>> --- /dev/null
>> +++ b/src/app/views/provider/hardware_profiles.html.erb
>> @@ -0,0 +1 @@
>> +<%= render :partial => 'hardware_profiles/list' %>
> Conditional ACK.
> Make the one permission change, add a link to this on the pool show 
> page and push
>
> Scott
Updated and pushed.

    -Mo
_______________________________________________
deltacloud-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/deltacloud-devel

Reply via email to