<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,39 +1,42 @@
-class IndexPage &lt; Page 
+class IndexPage &lt; Page
 
-  #
-  # The Index Page type redirects to the first published child
-  #
   def render
-
     published_children = children.delete_if{|c| c.status_id != 100 }
+    if published_children.empty?
+      super
+    else
+      page = published_children.first
+      if include_index?
+        page.render
+      else
+        response.redirect redirect_url(page), 302
+      end
+    end
+  end
 
-    if !published_children.empty?
+  def response_code
+    response.status
+  end
 
-      if Radiant::Config[&quot;index.page&quot;] &amp;&amp; Radiant::Config[&quot;index.page&quot;] == 'include'
+  private
 
-        # Just render the first published child under the parents url
-        published_children.first.render
+    def include_index?
+      Radiant::Config[&quot;index.page&quot;] &amp;&amp; Radiant::Config[&quot;index.page&quot;] == 'include'
+    end
 
+    def redirect_url(page)
+      if is_site_language_dependant?
+        site_language + page.url
       else
-
-        # Prefix url with the site language?
-        if defined?(SiteLanguage)  &amp;&amp; SiteLanguage.count &gt; 0
-          redirect_url = (params[:language] || I18n.code.to_s) + published_children.first.url
-        else
-          redirect_url = published_children.first.url
-        end
-
-        # Redirect to a published child page
-        response.headers['Refresh'] = &quot;0; url=#{redirect_url}&quot;
-        ''
+        page.url
       end
+    end
 
-    else
-
-      # No published children found, so render the page itself
-      super
+    def is_site_language_dependant?
+      defined?(SiteLanguage) &amp;&amp; SiteLanguage.count &gt; 0
+    end
 
+    def site_language
+      params[:language] || I18n.code.to_s
     end
-  end
-  
 end
\ No newline at end of file</diff>
      <filename>app/models/index_page.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>de327f0ac4e98dcb706024c8c47c83441847fabe</id>
    </parent>
  </parents>
  <author>
    <name>Michael Kessler</name>
    <email>michi@netzpiraten.ch</email>
  </author>
  <url>http://github.com/jomz/radiant-index-page-extension/commit/318edf6faad87718a1c6b1d50c7e0827ab6c0b8c</url>
  <id>318edf6faad87718a1c6b1d50c7e0827ab6c0b8c</id>
  <committed-date>2009-07-15T11:56:58-07:00</committed-date>
  <authored-date>2009-07-15T11:56:58-07:00</authored-date>
  <message>Refactored and made response.redirect work</message>
  <tree>fede5e0f7103f316d8114eab640c1faca7f6494e</tree>
  <committer>
    <name>Michael Kessler</name>
    <email>michi@netzpiraten.ch</email>
  </committer>
</commit>
