1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace PetStore
.Web
.Components
20 using Castle
.MonoRail
.Framework
;
23 public class ImageLocationComponent
: ViewComponent
25 private String productImagesDir
;
27 public ImageLocationComponent(String productImagesDir
)
29 this.productImagesDir
= productImagesDir
;
32 public override void Render()
34 String appPath
= RailsContext
.ApplicationPath
;
36 appPath
= Path
.Combine("/" + appPath
, productImagesDir
);
38 String image
= (String
) ComponentParams
["image"];
39 String border
= (String
) ComponentParams
["border"];
40 String width
= (String
) ComponentParams
["width"];
41 String height
= (String
) ComponentParams
["height"];
43 image
= Path
.Combine(appPath
, image
);
45 if (border
== null) border
= "0";
47 if (width
== null && height
== null)
49 RenderText(String
.Format("<img src=\"{0}\" border=\"{1}\" />",
54 RenderText(String
.Format("<img src=\"{0}\" border=\"{1}\" width=\"{2}\" height=\"{3}\" />",
55 image
, border
, width
, height
));