<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,7 +1,7 @@
 &lt;% user_projects_by_root = User.current.projects.find(:all, :include =&gt; :parent).group_by(&amp;:root) %&gt;
 &lt;select onchange=&quot;if (this.value != '') { window.location = this.value; }&quot;&gt;
-&lt;option selected&gt;&lt;%= l(:label_jump_to_a_project) %&gt;&lt;/option&gt;
-&lt;option disabled&gt;---&lt;/option&gt;
+&lt;option selected=&quot;selected&quot;&gt;&lt;%= l(:label_jump_to_a_project) %&gt;&lt;/option&gt;
+&lt;option disabled=&quot;disabled&quot;&gt;---&lt;/option&gt;
 &lt;% user_projects_by_root.keys.sort.each do |root| %&gt;
     &lt;%= content_tag('option', h(root.name), :value =&gt; url_for(:controller =&gt; 'projects', :action =&gt; 'show', :id =&gt; root)) %&gt;
     &lt;% user_projects_by_root[root].sort.each do |project| %&gt;</diff>
      <filename>app/views/layouts/_project_selector.rhtml</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,4 @@
-&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.1//EN&quot; &quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&quot;&gt;
+&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
 &lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot;&gt;
 &lt;head&gt;
 &lt;title&gt;&lt;%=h html_title %&gt;&lt;/title&gt;
@@ -73,7 +73,7 @@
 &lt;div id=&quot;ajax-indicator&quot; style=&quot;display:none;&quot;&gt;&lt;span&gt;&lt;%= l(:label_loading) %&gt;&lt;/span&gt;&lt;/div&gt;
 	
 &lt;div id=&quot;footer&quot;&gt;
-    Powered by &lt;%= link_to Redmine::Info.app_name, Redmine::Info.url %&gt; &lt;%= Redmine::VERSION %&gt; &amp;copy 2006-2007 Jean-Philippe Lang
+    Powered by &lt;%= link_to Redmine::Info.app_name, Redmine::Info.url %&gt; &lt;%= Redmine::VERSION %&gt; &amp;copy; 2006-2007 Jean-Philippe Lang
 &lt;/div&gt;
 &lt;/body&gt;
 &lt;/html&gt;</diff>
      <filename>app/views/layouts/base.rhtml</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
 &lt;p&gt;&lt;%= link_to(h(news.project.name), :controller =&gt; 'projects', :action =&gt; 'show', :id =&gt; news.project) + ': ' unless @project %&gt;
 &lt;%= link_to h(news.title), :controller =&gt; 'news', :action =&gt; 'show', :id =&gt; news %&gt;
-&lt;%= &quot;(#{news.comments_count} #{lwr(:label_comment, news.comments_count).downcase})&quot; if news.comments_count &gt; 0 %&gt;&lt;/span&gt;
+&lt;%= &quot;(#{news.comments_count} #{lwr(:label_comment, news.comments_count).downcase})&quot; if news.comments_count &gt; 0 %&gt;
 &lt;br /&gt;
 &lt;% unless news.summary.blank? %&gt;&lt;span class=&quot;summary&quot;&gt;&lt;%=h news.summary %&gt;&lt;/span&gt;&lt;br /&gt;&lt;% end %&gt;
-&lt;span class=&quot;author&quot;&gt;&lt;%= authoring news.created_on, news.author %&gt;&lt;/p&gt;
+&lt;span class=&quot;author&quot;&gt;&lt;%= authoring news.created_on, news.author %&gt;&lt;/span&gt;&lt;/p&gt;</diff>
      <filename>app/views/news/_news.rhtml</filename>
    </modified>
    <modified>
      <diff>@@ -11,9 +11,9 @@
   &lt;%= select_tag 'type', options_for_select([[l(:label_diff_inline), &quot;inline&quot;], [l(:label_diff_side_by_side), &quot;sbs&quot;]], @diff_type), :onchange =&gt; &quot;if (this.value != '') {this.form.submit()}&quot; %&gt;&lt;/p&gt;
 &lt;% end %&gt;
 
-&lt;div class=&quot;autoscroll&quot;&gt;
 &lt;% cache(@cache_key) do %&gt;
 &lt;% @diff.each do |table_file| %&gt;
+&lt;div class=&quot;autoscroll&quot;&gt;
 &lt;% if @diff_type == 'sbs' %&gt;
     &lt;table class=&quot;filecontent CodeRay&quot;&gt;
       &lt;thead&gt;
@@ -84,9 +84,9 @@
       &lt;/tbody&gt;
     &lt;/table&gt;
 &lt;% end %&gt;
+&lt;/div&gt;
 &lt;% end %&gt;
 &lt;% end %&gt;
-&lt;/div&gt;
 
 &lt;% content_for :header_tags do %&gt;
 &lt;%= stylesheet_link_tag &quot;scm&quot; %&gt;</diff>
      <filename>app/views/repositories/diff.rhtml</filename>
    </modified>
    <modified>
      <diff>@@ -24,12 +24,6 @@
 
 &lt;%= link_to_attachments @page.attachments, :delete_url =&gt; (authorize_for('wiki', 'destroy_attachment') ? {:controller =&gt; 'wiki', :action =&gt; 'destroy_attachment', :page =&gt; @page.title} : nil) %&gt;
 
-&lt;div class=&quot;contextual&quot;&gt;
-&lt;%= l(:label_export_to) %&gt;
-&lt;%= link_to 'HTML', {:page =&gt; @page.title, :export =&gt; 'html', :version =&gt; @content.version}, :class =&gt; 'icon icon-html' %&gt;,
-&lt;%= link_to 'TXT', {:page =&gt; @page.title, :export =&gt; 'txt', :version =&gt; @content.version}, :class =&gt; 'icon icon-txt' %&gt;
-&lt;/div&gt;
-
 &lt;% if authorize_for('wiki', 'add_attachment') %&gt;
 &lt;p&gt;&lt;%= toggle_link l(:label_attachment_new), &quot;add_attachment_form&quot; %&gt;&lt;/p&gt;
 &lt;% form_tag({ :controller =&gt; 'wiki', :action =&gt; 'add_attachment', :page =&gt; @page.title }, :multipart =&gt; true, :class =&gt; &quot;tabular&quot;, :id =&gt; &quot;add_attachment_form&quot;, :style =&gt; &quot;display:none;&quot;) do %&gt;
@@ -38,6 +32,13 @@
 &lt;% end %&gt;
 &lt;% end %&gt;
 
+&lt;div class=&quot;contextual&quot;&gt;
+&lt;%= l(:label_export_to) %&gt;
+&lt;%= link_to 'HTML', {:page =&gt; @page.title, :export =&gt; 'html', :version =&gt; @content.version}, :class =&gt; 'icon icon-html' %&gt;,
+&lt;%= link_to 'TXT', {:page =&gt; @page.title, :export =&gt; 'txt', :version =&gt; @content.version}, :class =&gt; 'icon icon-txt' %&gt;
+&lt;/div&gt;
+&amp;nbsp;
+
 &lt;% content_for :header_tags do %&gt;
   &lt;%= stylesheet_link_tag 'scm' %&gt;
 &lt;% end %&gt;</diff>
      <filename>app/views/wiki/show.rhtml</filename>
    </modified>
    <modified>
      <diff>@@ -112,7 +112,7 @@ module Redmine
                                        :author =&gt; changeset[:user],
                                        :time =&gt; Time.parse(changeset[:date]),
                                        :message =&gt; changeset[:description],
-                                       :paths =&gt; changeset[:files].split.collect{|path| {:action =&gt; 'X', :path =&gt; &quot;/#{path}&quot;}}
+                                       :paths =&gt; changeset[:files].to_s.split.collect{|path| {:action =&gt; 'X', :path =&gt; &quot;/#{path}&quot;}}
             })
           end
           return nil if $? &amp;&amp; $?.exitstatus != 0</diff>
      <filename>lib/redmine/scm/adapters/mercurial_adapter.rb</filename>
    </modified>
    <modified>
      <diff>@@ -69,4 +69,8 @@ module ApplicationHelper
     super((@current_theme &amp;&amp; @current_theme.stylesheets.include?(source)) ?
       &quot;/themes/#{@current_theme.dir}/stylesheets/#{source}&quot; : source)
   end
+  
+  def path_to_stylesheet(source)
+    stylesheet_path source
+  end
 end</diff>
      <filename>lib/redmine/themes.rb</filename>
    </modified>
    <modified>
      <diff>@@ -39,6 +39,9 @@ ContextMenu.prototype = {
 		this.selection = tr;
 		var id = tr.id.substring(6, tr.id.length);
 		/* TODO: do not hard code path */
-		new Ajax.Updater({success:'context-menu'}, '../../issues/context_menu/' + id, {asynchronous:true, evalScripts:true, onComplete:function(request){Effect.Appear('context-menu', {duration: 0.20})}})		
+		new Ajax.Updater({success:'context-menu'}, '../../issues/context_menu/' + id, {asynchronous:true, evalScripts:true, onComplete:function(request){
+		  Effect.Appear('context-menu', {duration: 0.20});
+		  if (window.parseStylesheets) { window.parseStylesheets(); }
+		}})		
 	}
 }</diff>
      <filename>public/javascripts/context_menu.js</filename>
    </modified>
    <modified>
      <diff>@@ -123,7 +123,7 @@ hr { width: 100%; height: 1px; background: #ccc; border: 0;}
 textarea.wiki-edit { width: 99%; }
 li p {margin-top: 0;}
 div.issue {background:#ffffdd; padding:6px; margin-bottom:6px;border: 1px solid #d7d7d7;}
-.autoscroll {overflow-x: auto; padding:1px; width:100%;}
+.autoscroll {overflow-x: auto; padding:1px; width:100%; margin-bottom: 1.2em;}
 #user_firstname, #user_lastname, #user_mail, #my_account_form select { width: 90%; }
 
 /***** Tabular forms ******/</diff>
      <filename>public/stylesheets/application.css</filename>
    </modified>
    <modified>
      <diff>@@ -24,7 +24,7 @@
 }
 #context-menu li.folder ul {
 	position:absolute;
-	left:128px; /* IE */
+	left:168px; /* IE6 */
 	top:-2px;
 }
 #context-menu li.folder&gt;ul { left:148px; }</diff>
      <filename>public/stylesheets/context_menu.css</filename>
    </modified>
    <modified>
      <diff>@@ -117,4 +117,6 @@ function getElementsBySelect(rule) {
 		
 		return nodes;
 	}
+
+window.parseStylesheets = parseStylesheets;
 &lt;/script&gt;
\ No newline at end of file</diff>
      <filename>public/stylesheets/csshover.htc</filename>
    </modified>
    <modified>
      <diff>@@ -35,83 +35,88 @@ class RepositoriesMercurialControllerTest &lt; Test::Unit::TestCase
     Repository::Mercurial.create(:project =&gt; Project.find(3), :url =&gt; REPOSITORY_PATH)
   end
   
-  def test_show
-    get :show, :id =&gt; 3
-    assert_response :success
-    assert_template 'show'
-    assert_not_nil assigns(:entries)
-    assert_not_nil assigns(:changesets)
-  end
-  
-  def test_browse_root
-    get :browse, :id =&gt; 3
-    assert_response :success
-    assert_template 'browse'
-    assert_not_nil assigns(:entries)
-    assert_equal 3, assigns(:entries).size
-    assert assigns(:entries).detect {|e| e.name == 'images' &amp;&amp; e.kind == 'dir'}
-    assert assigns(:entries).detect {|e| e.name == 'sources' &amp;&amp; e.kind == 'dir'}
-    assert assigns(:entries).detect {|e| e.name == 'README' &amp;&amp; e.kind == 'file'}
-  end
-  
-  def test_browse_directory
-    get :browse, :id =&gt; 3, :path =&gt; ['images']
-    assert_response :success
-    assert_template 'browse'
-    assert_not_nil assigns(:entries)
-    assert_equal 2, assigns(:entries).size
-    entry = assigns(:entries).detect {|e| e.name == 'edit.png'}
-    assert_not_nil entry
-    assert_equal 'file', entry.kind
-    assert_equal 'images/edit.png', entry.path
-  end
-  
-  def test_changes
-    get :changes, :id =&gt; 3, :path =&gt; ['images', 'edit.png']
-    assert_response :success
-    assert_template 'changes'
-    assert_tag :tag =&gt; 'h2', :content =&gt; 'edit.png'
-  end
-  
-  def test_entry_show
-    get :entry, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb']
-    assert_response :success
-    assert_template 'entry'
-    # Line 19
-    assert_tag :tag =&gt; 'th',
-               :content =&gt; /10/,
-               :attributes =&gt; { :class =&gt; /line-num/ },
-               :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /WITHOUT ANY WARRANTY/ }
-  end
-  
-  def test_entry_download
-    get :entry, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb'], :format =&gt; 'raw'
-    assert_response :success
-    # File content
-    assert @response.body.include?('WITHOUT ANY WARRANTY')
-  end
-
-  def test_diff
-    # Full diff of changeset 4
-    get :diff, :id =&gt; 3, :rev =&gt; 4
-    assert_response :success
-    assert_template 'diff'
-    # Line 22 removed
-    assert_tag :tag =&gt; 'th',
-               :content =&gt; /22/,
-               :sibling =&gt; { :tag =&gt; 'td', 
-                             :attributes =&gt; { :class =&gt; /diff_out/ },
-                             :content =&gt; /def remove/ }
-  end
+  if File.directory?(REPOSITORY_PATH)
+    def test_show
+      get :show, :id =&gt; 3
+      assert_response :success
+      assert_template 'show'
+      assert_not_nil assigns(:entries)
+      assert_not_nil assigns(:changesets)
+    end
+    
+    def test_browse_root
+      get :browse, :id =&gt; 3
+      assert_response :success
+      assert_template 'browse'
+      assert_not_nil assigns(:entries)
+      assert_equal 3, assigns(:entries).size
+      assert assigns(:entries).detect {|e| e.name == 'images' &amp;&amp; e.kind == 'dir'}
+      assert assigns(:entries).detect {|e| e.name == 'sources' &amp;&amp; e.kind == 'dir'}
+      assert assigns(:entries).detect {|e| e.name == 'README' &amp;&amp; e.kind == 'file'}
+    end
+    
+    def test_browse_directory
+      get :browse, :id =&gt; 3, :path =&gt; ['images']
+      assert_response :success
+      assert_template 'browse'
+      assert_not_nil assigns(:entries)
+      assert_equal 2, assigns(:entries).size
+      entry = assigns(:entries).detect {|e| e.name == 'edit.png'}
+      assert_not_nil entry
+      assert_equal 'file', entry.kind
+      assert_equal 'images/edit.png', entry.path
+    end
+    
+    def test_changes
+      get :changes, :id =&gt; 3, :path =&gt; ['images', 'edit.png']
+      assert_response :success
+      assert_template 'changes'
+      assert_tag :tag =&gt; 'h2', :content =&gt; 'edit.png'
+    end
+    
+    def test_entry_show
+      get :entry, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb']
+      assert_response :success
+      assert_template 'entry'
+      # Line 19
+      assert_tag :tag =&gt; 'th',
+                 :content =&gt; /10/,
+                 :attributes =&gt; { :class =&gt; /line-num/ },
+                 :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /WITHOUT ANY WARRANTY/ }
+    end
+    
+    def test_entry_download
+      get :entry, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb'], :format =&gt; 'raw'
+      assert_response :success
+      # File content
+      assert @response.body.include?('WITHOUT ANY WARRANTY')
+    end
   
-  def test_annotate
-    get :annotate, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb']
-    assert_response :success
-    assert_template 'annotate'
-    # Line 23, revision 4
-    assert_tag :tag =&gt; 'th', :content =&gt; /23/,
-               :sibling =&gt; { :tag =&gt; 'td', :child =&gt; { :tag =&gt; 'a', :content =&gt; /4/ } },
-               :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /jsmith/ },
-               :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /watcher =/ }
+    def test_diff
+      # Full diff of changeset 4
+      get :diff, :id =&gt; 3, :rev =&gt; 4
+      assert_response :success
+      assert_template 'diff'
+      # Line 22 removed
+      assert_tag :tag =&gt; 'th',
+                 :content =&gt; /22/,
+                 :sibling =&gt; { :tag =&gt; 'td', 
+                               :attributes =&gt; { :class =&gt; /diff_out/ },
+                               :content =&gt; /def remove/ }
+    end
+    
+    def test_annotate
+      get :annotate, :id =&gt; 3, :path =&gt; ['sources', 'watchers_controller.rb']
+      assert_response :success
+      assert_template 'annotate'
+      # Line 23, revision 4
+      assert_tag :tag =&gt; 'th', :content =&gt; /23/,
+                 :sibling =&gt; { :tag =&gt; 'td', :child =&gt; { :tag =&gt; 'a', :content =&gt; /4/ } },
+                 :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /jsmith/ },
+                 :sibling =&gt; { :tag =&gt; 'td', :content =&gt; /watcher =/ }
+    end
+  else
+    puts &quot;Mercurial test repository NOT FOUND. Skipping functional tests !!!&quot;
+    def test_fake; assert true end
   end
 end</diff>
      <filename>test/functional/repositories_mercurial_controller_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>a2c18b2037aae6f708a8a4ea5d5844deebdf47a5</id>
    </parent>
  </parents>
  <author>
    <name>Jean-Philippe Lang</name>
    <email>jp_lang@yahoo.fr</email>
  </author>
  <url>http://github.com/edavis10/redmine/commit/bd7542cf9815ce527996ed740925a7449c70ded9</url>
  <id>bd7542cf9815ce527996ed740925a7449c70ded9</id>
  <committed-date>2008-01-07T12:46:54-08:00</committed-date>
  <authored-date>2008-01-07T12:46:54-08:00</authored-date>
  <message>Merged r1015, r1019, r1022 to r1025, r1045 and r1047 from trunk.

git-svn-id: http://redmine.rubyforge.org/svn/branches/0.6-stable@1048 e93f8b46-1217-0410-a6f0-8f06a7374b81</message>
  <tree>dac0d48d8ce794e2eb7ad7e119e71f04bb962238</tree>
  <committer>
    <name>Jean-Philippe Lang</name>
    <email>jp_lang@yahoo.fr</email>
  </committer>
</commit>
