cms-edit: move article.js include to the bottom of the file

<%= error_messages_for 'article' %>

<div class='<%= (environment.enabled?('media_panel') ? 'with_media_panel' : 'no_media_panel') %>'>
<% labelled_form_for 'article', @article, :html => { :multipart => true, :class => @type } do |f| %>

  <%= hidden_field_tag("type", @type) if @type %>

  <%= hidden_field_tag('parent_id', @parent_id) if @parent_id %>

  <%= hidden_field_tag('back_to', @back_to) %>

  <%= hidden_field_tag('success_back_to', @success_back_to) %>

  <%= render :partial => partial_for_class(@article.class), :locals => { :f => f } %>

  <% if environment.is_portal_community?(profile) %>

      <%= check_box(:article, :highlighted) %>
      <%= _('Highlight this article')%>

  <% end %>

  <% button_bar do %>
    <%= submit_button :save, _('Save') %>
    <%= submit_button :save, _('Save and continue'), :name => "continue" %>
  <% end %>

    <%= lightbox_button :help, _('Why categorize?'), :action => 'why_categorize' %>

  <%= select_categories(:article, _('Categorize your article')) %>

  <%= f.text_field('tag_list', :size => 64) %>
  <%= content_tag( 'small', _('Separate tags with commas') ) %>

    <%= options_for_article(@article, @tokenized_children) %>

  <% button_bar do %>
    <%= submit_button :save, _('Save') %>
    <% if @back_to %>
      <%= button :cancel, _('Cancel'), @back_to %>
    <% elsif @parent_id || @article.parent %>
      <%= button :cancel, _('Cancel'), :action => 'view', :id => @parent_id || @article.parent %>
    <% else %>
      <%= button :cancel, _('Cancel'), :action => 'index' %>
    <% end %>
  <% end %>
<% end %>

<% if environment.enabled?('media_panel') && [TinyMceArticle, TextileArticle, Event, EnterpriseHomepage].any?{|klass| @article.kind_of?(klass)} %>
  <%= render :partial => 'text_editor_sidebar' %>
<% end %>

<%= javascript_include_tag "article.js" %>

<%= error_messages_for 'article' %>
<%= javascript_include_tag "article.js" %>

<div class='<%= (environment.enabled?('media_panel') ? 'with_media_panel' : 'no_media_panel') %>'>
<% labelled_form_for 'article', @article, :html => { :multipart => true, :class => @type } do |f| %>

  <%= hidden_field_tag("type", @type) if @type %>

  <%= hidden_field_tag('parent_id', @parent_id) if @parent_id %>

  <%= hidden_field_tag('back_to', @back_to) %>

  <%= hidden_field_tag('success_back_to', @success_back_to) %>

  <%= render :partial => partial_for_class(@article.class), :locals => { :f => f } %>

  <% if environment.is_portal_community?(profile) %>

      <%= check_box(:article, :highlighted) %>
      <%= _('Highlight this article')%>

  <% end %>

  <% button_bar do %>
    <%= submit_button :save, _('Save') %>
    <%= submit_button :save, _('Save and continue'), :name => "continue" %>
  <% end %>

    <%= lightbox_button :help, _('Why categorize?'), :action => 'why_categorize' %>

  <%= select_categories(:article, _('Categorize your article')) %>

  <%= f.text_field('tag_list', :size => 64) %>
  <%= content_tag( 'small', _('Separate tags with commas') ) %>

    <%= options_for_article(@article, @tokenized_children) %>

  <% button_bar do %>
    <%= submit_button :save, _('Save') %>
    <% if @back_to %>
      <%= button :cancel, _('Cancel'), @back_to %>
    <% elsif @parent_id || @article.parent %>
      <%= button :cancel, _('Cancel'), :action => 'view', :id => @parent_id || @article.parent %>
    <% else %>
      <%= button :cancel, _('Cancel'), :action => 'index' %>
    <% end %>
  <% end %>
<% end %>

<% if environment.enabled?('media_panel') && [TinyMceArticle, TextileArticle, Event, EnterpriseHomepage].any?{|klass| @article.kind_of?(klass)} %>
  <%= render :partial => 'text_editor_sidebar' %>
<% end %>


Re-enabled memory analyzer.

Re-enabled memory analyzer.

<%
  if _get["choice"] == "dogarbagecollect"
    _hb.clean
    GC.start
    Knj::Web.redirect("?show=debug_memory_usage")
  end
%>

Memory usage

  <input type="button" value="Garbage collect" onclick="location.href='?show=debug_memory_usage&choice=dogarbagecollect';" />

Hayabusa sessions

      Active sessions
      <%=_hb.num(_hb.sessions.length, 0)%>

      Total sessions
      <%=_hb.num(_hb.ob.list(:Session, "count" => true), 0)%>

<%
  Knj::Memory_analyzer.new.write
%>

<%
  if _get["choice"] == "dogarbagecollect"
    _hb.clean
    GC.start
    Knj::Web.redirect("?show=debug_memory_usage")
  end
%>

Memory usage

  <input type="button" value="Garbage collect" onclick="location.href='?show=debug_memory_usage&choice=dogarbagecollect';" />

Hayabusa sessions

      Active sessions
      <%=_hb.num(_hb.sessions.length, 0)%>

      Total sessions
      <%=_hb.num(_hb.ob.list(:Session, "count" => true), 0)%>

<%
  #Knj::Memory_analyzer.new.write
%>


added feed to index

added feed to index


ActionItem70: not-translated warning

ActionItem70: not-translated warning

git-svn-id: 43659daf80e124e0b603d67096418e58e4f21099@552 3f533792-8f58-4932-b0fe-aaf55b0a4547

<%= _('Category: %s') % @category.full_name %>

<%# FIXME  %>

This page will list everything (articles, documents, photos, etc) that is
related to <%= @category.full_name %>. Actually generating this content is not
implement yet, though.

And yes, this placeholder text is not translated.


ActionItem623: right place for "Back to control panel" in "edit sideboxes"

git-svn-id: 43659daf80e124e0b603d67096418e58e4f21099@2401 3f533792-8f58-4932-b0fe-aaf55b0a4547

<%= _('Editing sideboxes')%>

<% button_bar do %>
  <%= lightbox_button('add', _('Add a block'), { :action => 'add_block' }) %>
  <%= button(:back, _('Back to control panel'), :controller => 'profile_editor') %>
<% end %>

<%= _('Editing sideboxes')%>

<% button_bar do %>
  <%= lightbox_button('add', _('Add a block'), { :action => 'add_block' }) %>
  <%= button(:back, _('Back to control panel'), :controller => 'environment_design') %>
<% end %>


Fixed invalid links showing up on custom sharing form

<%# initialization: required to keep javascript independent of the access type codes, to allow the use the constants instead -%>
<%= render :partial=>"assets/sharing_constants" %>

<%# this hidden input will submit all permission data with the form -%>
<%= hidden_field_tag "sharing[permissions][contributor_types]", "" -%>
<%= hidden_field_tag "sharing[permissions][values]", "" -%>

<%# @resource_type -%>
<%# @favourite_groups -%>
<%# @all_projects -%>

<%# @policy_type -%>
<%# @sharing_mode -%>
<%# @access_mode -%>
<%# @use_custom_sharing -%>
<%# @use_whitelist -%>
<%# @use_blacklist -%>

    <%= help_icon("Here you can specify who can view, download and edit this #{@resource_type}.") -%>
    Sharing

        Here you can specify who can view, download and edit this <%= @resource_type -%>.
        <%= link_to_function "Click here" + expand_image, visual_effect(:toggle_blind, "more_info", :duration => 0.3) -%> for more information.

          Here you may specify the People, Projects or Groups that may View and Edit the details about your <%= @resource_type -%>.

          You may:

Keep the <%= @resource_type -%> private, and only visible to yourself.

Share with all other users, including those that are not a member of a Sysmo project.

Share with all other users that are a member of a Sysmo project.

Define more fine-grained sharing, by selecting Custom sharing permissions.
 By using custom sharing permissions you can share within your Project/Institution only,
 with specific individuals, or set up custom favourite groups for people you regularly need to share with.

<label for="sharing_scope_<%= Policy::PRIVATE -%>">
        <input type="hidden" name="sharing[access_type_<%= Policy::PRIVATE -%>]" value="<%= Policy::NO_ACCESS -%>">
        <input type="hidden" name="sharing[include_custom_sharing_<%= Policy::PRIVATE -%>]" value="0">

        <input <%= 'checked="checked"' if @sharing_mode == Policy::PRIVATE %> id="sharing_scope_<%= Policy::PRIVATE -%>" name="sharing[sharing_scope]"
                                                                              value="<%= Policy::PRIVATE -%>" type="radio" onclick="javascript:setSharingElementVisibility(<%= Policy::PRIVATE -%>);" />
        - Keep this <%= @resource_type -%> private.

Or share it with..

      <label for="sharing_scope_<%= Policy::ALL_REGISTERED_USERS -%>">
        <input type="radio" <%= 'checked="checked"' if @sharing_mode == Policy::ALL_REGISTERED_USERS -%> id="sharing_scope_<%= Policy::ALL_REGISTERED_USERS -%>" name="sharing[sharing_scope]"
               value="<%= Policy::ALL_REGISTERED_USERS -%>" onclick="javascript:setSharingElementVisibility(<%= Policy::ALL_REGISTERED_USERS -%>);" />
        - All users, including those that are not members of SysMO projects, for

      <%= render :partial => "assets/sharing_form_access_type_dropdown", :locals => { :access_type_selector_for_scope => Policy::ALL_REGISTERED_USERS,
        :sharing_scope => @sharing_mode, :access_type => @access_mode } -%>

      <%= render :partial => "assets/sharing_form_custom_permissions_checkbox", :locals => { :custom_sharing_cb_for_scope => Policy::ALL_REGISTERED_USERS,
        :sharing_scope => @sharing_mode, :use_custom_sharing => @use_custom_sharing } -%>

      <label for="sharing_scope_<%= Policy::ALL_SYSMO_USERS -%>">
        <input type="radio" <%= 'checked="checked"' if @sharing_mode == Policy::ALL_SYSMO_USERS -%> id="sharing_scope_<%= Policy::ALL_SYSMO_USERS -%>" name="sharing[sharing_scope]"
               value="<%= Policy::ALL_SYSMO_USERS -%>" onclick="javascript:setSharingElementVisibility(<%= Policy::ALL_SYSMO_USERS -%>);" />
        - All registered users that are members of a SysMO project for

      <%= render :partial => "assets/sharing_form_access_type_dropdown", :locals => { :access_type_selector_for_scope => Policy::ALL_SYSMO_USERS,
        :sharing_scope => @sharing_mode, :access_type => @access_mode } -%>

      <%= render :partial => "assets/sharing_form_custom_permissions_checkbox", :locals => { :custom_sharing_cb_for_scope => Policy::ALL_SYSMO_USERS,
        :sharing_scope => @sharing_mode, :use_custom_sharing => @use_custom_sharing } -%>

      <label for="sharing_scope_<%= Policy::CUSTOM_PERMISSIONS_ONLY -%>">
        <input type="radio" <%= 'checked="checked"' if @sharing_mode == Policy::CUSTOM_PERMISSIONS_ONLY -%> id="sharing_scope_<%= Policy::CUSTOM_PERMISSIONS_ONLY -%>" name="sharing[sharing_scope]"
               value="<%= Policy::CUSTOM_PERMISSIONS_ONLY -%>" onclick="javascript:setSharingElementVisibility(<%= Policy::CUSTOM_PERMISSIONS_ONLY -%>);" />
        - Use custom sharing permissions only

    <div id="specific_sharing" style="display: <%= (@use_custom_sharing || @sharing_mode == Policy::CUSTOM_PERMISSIONS_ONLY) ? "block" : "none" -%>; margin-top: 2em;">

        Custom sharing permissions

          So far you have selected to share this <%= @resource_type -%> with:

          Loading...

          Build up the list of people and groups to share with.
          Select from the options below and click "Add" to apply
          your choices and add collaborators to your current selection:

            <%= image_tag icon_filename_for_key("spinner"), :id => "f_group_deleting_spinner", :alt=>"loading...", :title=>"loading...", :style => "display: none; vertical-align: middle; float: right;" -%>
            <%= help_icon("Here you can choose your favourite groups to share this #{@resource_type} with.") -%>
            Favourite Groups

              <% favourite_groups = FavouriteGroup.get_all_without_blacklists_and_whitelists(current_user.id) -%>
              <% f_group_select_options = (favourite_groups.blank? ? "<option value=\"\">You don't have any favourite groups</option>" : options_for_select(favourite_groups)) -%>

              <%= select_tag "favourite_group_select", f_group_select_options, :onchange => "javascript: replaceFavouriteGroupRedboxActionURL(); return(false);", :style => "width: 82%; vertical-align: middle; margin-right: 0.4em;", :disabled => (favourite_groups.blank?) -%>

              <%= link_to "Add", "", :id => "add_f_group_link", :style => "font-weight: bold; vertical-align: middle;", :disabled => (favourite_groups.blank?),
                :onclick => "javascript: if($('favourite_group_select').disabled) return(false); addContributor('FavouriteGroup', $('favourite_group_select').options[$('favourite_group_select').selectedIndex].text, parseInt($('favourite_group_select').options[$('favourite_group_select').selectedIndex].value), #{Policy::DETERMINED_BY_GROUP}); return(false);" -%>

              <li id="edit_f_group_li" style="display: <%= favourite_groups.blank? ? "none" : "block" -%>; list-style-type: disc; padding: 0;"><%= favourite_group_popup_link_action_edit() -%>

              <li id="delete_f_group_li" style="display: <%= favourite_groups.blank? ? "none" : "block" -%>; list-style-type: disc; padding: 0;">
                <%= link_to "Delete selected favourite group", delete_favourite_group_path(0), :onclick => "deleteSelectedFavouriteGroup(); return(false);" -%>

<%= favourite_group_popup_link_action_new() -%>

            <%= help_icon("Here you can choose projects, institutions and workgroups to share this #{@resource_type} with.") -%>
            Projects and Institutions

              <% right_arrow_image = icon_filename_for_key("arrow_right") -%>

              Step 1
              <%= image_tag right_arrow_image, :style => "vertical-align: middle; padding: 0 0.8em;" -%>

              Step 2
              <%= image_tag right_arrow_image, :style => "vertical-align: middle; padding: 0 0.8em;" -%>

              Step 3

                <input type="hidden" id="proj_select_step_index" value="1">

                  <%= image_tag icon_filename_for_key("spinner"), :id => "institutions_loading_spinner", :alt=>"loading...", :title=>"loading...", :style => "display: none; vertical-align: middle; float: right;" -%>
                  Step 1: Select a project
                  <%= select("proj_project", "select",
                    Project.find(:all).collect {|p| [ p.name, p.id ] },
                    {:include_blank => 'All Projects @ Institution (from Step 2)'}, {:style => "width: 100%; vertical-align: middle; margin: 0.3em 0;"}) -%>

                  Step 2: Select scope of the project
                  <%= select_tag("proj_institution_select", nil, {:style => "width: 100%; vertical-align: middle; margin: 0.3em 0;"}) -%>

                  Step 3: Choose access rights, review and submit

                  <select name="proj_access_type_select" id="proj_access_type_select" onchange="javascript: replaceReviewWorkGroupURL();" style="width: 100%; vertical-align: middle; margin: 0.3em 0;">
                    <option value="<%= Policy::VIEWING -%>" >Viewing only</option>
                    <option value="<%= Policy::DOWNLOADING -%>" >Viewing and downloading only</option>
                    <option value="<%= Policy::EDITING -%>" >Viewing, downloading and editing</option>
                  </select>

                    <%= link_to "< Previous step", "", :onclick => "javascript: projectInstitutionStepAction(-1); return(false);", :style => "font-weight: bold;" -%>

                    <%= link_to "Next step >", "", :onclick => "javascript: projectInstitutionStepAction(1); return(false);", :style => "font-weight: bold;" -%>

                        <%= link_to "Add immediately", "", :onclick => "javascript: addProjectInstitution(); return(false);", :style => "font-weight: bold; padding: 0;" -%>

<%= workgroup_member_review_popup_link() -%>

            <%= help_icon("Here you can specify individual people to share this #{@resource_type} with.") -%>
            Individual People

                Please type names of people to share this <%= @resource_type -%> with into the box below - suggestions will be displayed as you type.
                Select access rights from drop-down menu; these will be applied to all chosen people.
                Clicking "Add" will add selected people to the list.

                      ^_^<input type="text" id="ip_hidden_input" tabindex="-1" >

                        <input type="text" size="1" tabindex="" id="ip_autocomplete_input" />

Type the name of a friend, friend list, or email address

                    <select name="individual_people_access_type_select" id="individual_people_access_type_select" style="width: 344px; vertical-align: middle; margin-top: 0.3em;">
                      <option value="<%= Policy::NO_ACCESS -%>" >no access</option>
                      <option value="<%= Policy::VIEWING -%>" >viewing only</option>
                      <option value="<%= Policy::DOWNLOADING -%>" >viewing and downloading only</option>
                      <option value="<%= Policy::EDITING -%>" >viewing, downloading and editing</option>
                      <option value="<%= Policy::MANAGING -%>" >manage</option>
                    </select>

                    <%= link_to "Add", "", :onclick => "javascript: addIndividualPeople(); return(false);" -%>

    <%= "
" unless @enable_black_white_listing %>

Also include people in my..

          <input <%= "disabled" if @sharing_mode == Policy::PRIVATE -%> style="margin-right: 0.3em;" value="1" type="checkbox" name="sharing[use_whitelist]" id="cb_use_whitelist" <%= "checked='checked'" if @use_whitelist -%> />
          - "white list", who always get full access

        <% white_lst = current_user.get_whitelist -%>
        <%= hidden_field_tag "#{FavouriteGroup::WHITELIST_NAME}_group_id", (white_lst ? white_lst.id : "none") -%>
          [
          <span id="<%= FavouriteGroup::WHITELIST_NAME -%>_edit_span" style="display: <%= white_lst ? "inline" : "none" -%>;">
            <%= link_to "edit", "/", :onclick => "editWhitelistBlacklist('#{FavouriteGroup::WHITELIST_NAME}'); return(false);" -%>

          <% unless white_lst -%>
            <span id="<%= FavouriteGroup::WHITELIST_NAME -%>_create_span">
              <%= link_to "create", "/", :onclick => "createWhitelistBlacklist('#{FavouriteGroup::WHITELIST_NAME}'); return(false);" -%>

          <% end -%>
          ]
        <%= image_tag icon_filename_for_key("spinner"), :id => "#{FavouriteGroup::WHITELIST_NAME}_creation_spinner", :alt=>"loading...", :title=>"loading...", :style => "display: none; vertical-align: middle;" -%>

          <input <%= "disabled" if @sharing_mode == Policy::PRIVATE -%> style="margin-right: 0.3em;" value="1" type="checkbox" name="sharing[use_blacklist]" id="cb_use_blacklist" <%= "checked='checked'" if @use_blacklist -%> />
          - "black list", who have no access at all

        <% black_lst = current_user.get_blacklist -%>
        <%= hidden_field_tag "#{FavouriteGroup::BLACKLIST_NAME}_group_id", (black_lst ? black_lst.id : "none") -%>
          [
          <span id="<%= FavouriteGroup::BLACKLIST_NAME -%>_edit_span" style="display: <%= black_lst ? "inline" : "none" -%>;">
            <%= link_to "edit", "/", :onclick => "editWhitelistBlacklist('#{FavouriteGroup::BLACKLIST_NAME}'); return(false);" -%>

          <% unless black_lst -%>
            <span id="<%= FavouriteGroup::BLACKLIST_NAME -%>_create_span">
              <%= link_to "create", "/", :onclick => "createWhitelistBlacklist('#{FavouriteGroup::BLACKLIST_NAME}'); return(false);" -%>

          <% end -%>
          ]
        <%= image_tag icon_filename_for_key("spinner"), :id => "#{FavouriteGroup::BLACKLIST_NAME}_creation_spinner", :alt=>"loading...", :title=>"loading...", :style => "display: none; vertical-align: middle;" -%>

  <%# this DIV is to hold the 'redbox' links generated by a method in application_helper, -%>
  <%# these will be "clicked" by javascript, because hidden divs that are present in the -%>
  <%# generated code causes IE to break layout by inserting extra line break otherwise -%>
        <div id="<%= FavouriteGroup::WHITELIST_NAME -%>_redbox_link_div">
          <%= whitelist_blacklist_edit_popup_link(FavouriteGroup::WHITELIST_NAME) -%>

        <div id="<%= FavouriteGroup::BLACKLIST_NAME -%>_redbox_link_div">
          <%= whitelist_blacklist_edit_popup_link(FavouriteGroup::BLACKLIST_NAME) -%>

    <%= "
" unless @enable_black_white_listing %>


ActionItem468: increasing tinymce textarea of edit site info

git-svn-id: 43659daf80e124e0b603d67096418e58e4f21099@2074 3f533792-8f58-4932-b0fe-aaf55b0a4547

<%= _('Site info') %>

<%= render :file => 'shared/tiny_mce' %>

<% labelled_form_for :environment, @environment do |f| %>

  <%= f.text_area :description, :cols => 40, :style => 'width: 90%' %>

  <% button_bar do %>
    <%= submit_button(:save, _('Save')) %>
    <%= button(:cancel, _('Cancel'), :action => 'index') %>
  <% end %>

<% end %>

<%= _('Site info') %>

<%= render :file => 'shared/tiny_mce' %>

<% labelled_form_for :environment, @environment do |f| %>

  <%= f.text_area :description %>

  <% button_bar do %>
    <%= submit_button(:save, _('Save')) %>
    <%= button(:cancel, _('Cancel'), :action => 'index') %>
  <% end %>

<% end %>


list_current -> list

list_current -> list

Listing general Tasks

<%= link_to 'New General Task', :controller => 'tasks', :action => 'new' %>

    Title
    User(s)
    Frequency
    Last Done

<%# can't pass local variables this way :( = render_collection_of_partials 'task_list', nil, '@general_tasks, 'manage' => true %>
<% for task in @general_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => true %>
<% end %>

Listing Cage Weighing Tasks

[Cage weighing tasks are managed from the <%= link_to 'cage pages', :controller => 'cages', :action => 'list' %>]

    Title
    User(s)
    Frequency
    Last Done

<% for task in @cage_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => false %>
<% end %>

Listing Medical Tasks

[Medical tasks are managed from the <%= link_to 'medical page', :controller => 'medical_problems', :action => 'list_current' %>]

    Title
    User(s)
    Frequency
    Last Done

<% for task in @medical_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => false %>
<% end %>

Listing general Tasks

<%= link_to 'New General Task', :controller => 'tasks', :action => 'new' %>

    Title
    User(s)
    Frequency
    Last Done

<%# can't pass local variables this way :( = render_collection_of_partials 'task_list', nil, '@general_tasks, 'manage' => true %>
<% for task in @general_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => true %>
<% end %>

Listing Cage Weighing Tasks

[Cage weighing tasks are managed from the <%= link_to 'cage pages', :controller => 'cages', :action => 'list_current' %>]

    Title
    User(s)
    Frequency
    Last Done

<% for task in @cage_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => false %>
<% end %>

Listing Medical Tasks

[Medical tasks are managed from the <%= link_to 'medical page', :controller => 'medical_problems', :action => 'list_current' %>]

    Title
    User(s)
    Frequency
    Last Done

<% for task in @medical_tasks %>
 <%= render_partial 'task_list', nil, 'task' => task, 'manage' => false %>
<% end %>


Authentication UI overhaul, cont'd

Authentication UI overhaul, cont'd

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

  <title><%= page_title %></title>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  <%= stylesheet_link_tag 'journey' %>
  <%= stylesheet_link_tag 'questionnaire' %>

  <%= stylesheet_link_tag 'auth' %>
  <%= ae_form_stylesheet %>
  <%= javascript_include_tag :defaults %>
  <%= javascript_include_tag '/jipe/jester' %>
  <%= javascript_include_tag '/jipe/jipe' %>
  <%= javascript_include_tag 'browserdetect.js' %>
  <%= javascript_include_tag 'overlabel' %>
  <%= javascript_include_tag "layout" %>
  <%= include_tiny_mce_if_needed %>
  <% if @rss_url %>
    <link rel="alternate" title="RSS Feed" href="<%=@rss_url%>" type="application/rss+xml"/>
  <% end %>

<% if flash[:error_messages] -%>

There were errors processing your request:

                <% flash[:error_messages].each do |error| -%>

<%= error %>

                <% end -%>

<% end %>

        <%= link_to(image_tag("journey26-logo.png", :border => "0", :alt => "Journey 2.6"), questionnaires_url) %>

    <%= user_options %>

Warning for Internet Explorer users

Journey is known not to work well with Microsoft Internet Explorer.  Answering questionnaires will work
    fine with any browser, but other functionality, such as editing, importing, exporting, and analyzing
    questionnaires may fail.

Journey is tested and known to work with the following browsers:

Mozilla Firefox 2.0 and up

Safari 3.0 and up

Both of these browsers are available for free, and we recommend their use over Internet Explorer not
    just for this site, but in general, due to their greater track record for security, stability, and
    web standards compliance.

<%= @content_for_layout %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

  <title><%= page_title %></title>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  <%= stylesheet_link_tag 'journey' %>
  <%= stylesheet_link_tag 'questionnaire' %>

  <%= ae_form_stylesheet %>
  <%= javascript_include_tag :defaults %>
  <%= javascript_include_tag '/jipe/jester' %>
  <%= javascript_include_tag '/jipe/jipe' %>
  <%= javascript_include_tag 'browserdetect.js' %>
  <%= javascript_include_tag 'overlabel' %>
  <%= javascript_include_tag "layout" %>
  <%= include_tiny_mce_if_needed %>
  <% if @rss_url %>
    <link rel="alternate" title="RSS Feed" href="<%=@rss_url%>" type="application/rss+xml"/>
  <% end %>

<% if flash[:error_messages] -%>

There were errors processing your request:

                <% flash[:error_messages].each do |error| -%>

<%= error %>

                <% end -%>

<% end %>

        <%= link_to(image_tag("journey26-logo.png", :border => "0", :alt => "Journey 2.6"), questionnaires_url) %>

    <%= user_options %>

Warning for Internet Explorer users

Journey is known not to work well with Microsoft Internet Explorer.  Answering questionnaires will work
    fine with any browser, but other functionality, such as editing, importing, exporting, and analyzing
    questionnaires may fail.

Journey is tested and known to work with the following browsers:

Mozilla Firefox 2.0 and up

Safari 3.0 and up

Both of these browsers are available for free, and we recommend their use over Internet Explorer not
    just for this site, but in general, due to their greater track record for security, stability, and
    web standards compliance.

<%= @content_for_layout %>


Fix typo.

Fix typo.

Edit basic details of request

<%= error_messages_for 'info_request' %>

<% form_tag '../update/' + @info_request.id.to_s do %>

Title (warning: editing this will break URLs right now)

   <%= text_field 'info_request', 'title', :size => 50  %>

Prominence
   <%= select( 'info_request', "prominence", [ "normal", "backpage", "requester_only", "hidden" ]) %>
   (backpage means hidden from lists/search; hidden means completely hidden; super users can see anything)

   Allow new responses from
   <%= select( 'info_request', "allow_new_responses_from", [ "anybody", "authority_only", "nobody" ] ) %>;
   Handle rejected responses with
   <%= select( 'info_request', "handle_rejected_responses", [ "bounce", "holding_pen", "blackhole" ] ) %>

   ('authority_only' means email From: domain of authority request email or any domain that has previously sent a response; 'nobody' also stops requester making followups; take care when using 'blackhole' which just drops mail)

Described state
   <%= select( 'info_request', "described_state", InfoRequest.enumerate_states) %>
    Awaiting description
   <%= select('info_request', "awaiting_description", [["Yes – needs state updating",true],["No – state is up to date",false]]) %>

(don't forget to change 'awaiting description' when you set described state)

Tags (space separated, can use key:value)

   <%= text_field 'info_request', 'tag_string', :size => 60  %>

<%= submit_tag 'Save changes', :accesskey => 's' %>

Note: To edit the actual request body text, click edit
  next to the specific outgoing message.

<% end %>

<%= link_to 'Show', '../show/' + @info_request.id.to_s %> |
<%= link_to 'List all', '../list' %>

<% form_tag '../destroy/' + @info_request.id.to_s do %>

    This is permanent and irreversible! <%= submit_tag 'Destroy request entirely' %>

Use it mainly if someone posts private information, e.g. made a Data Protection request. It
    destroys all responses and tracks as well.

<% end %>

Edit basic details of request

<%= error_messages_for 'info_request' %>

<% form_tag '../update/' + @info_request.id.to_s do %>

Title (warning: editing this will break URLs right now)

   <%= text_field 'info_request', 'title', :size => 50  %>

Prominence
   <%= select( 'info_request', "prominence", [ "normal", "backpage", "requester_only", "hidden" ]) %>
   (backpage means hidden from lists/search; hidden means completely hidden; super users can see anything)

   Allow new responses from
   <%= select( 'info_request', "allow_new_responses_from", [ "anybody", "authority_only", "nobody" ] ) %>;
   Handle rejected responses with
   <%= select( 'info_request', "handle_rejected_responses", [ "bounce", "holding_pen", "blackhole" ] ) %>

   ('authority_only' means email From: domain of authority request email or any domain that has previously sent a response; 'nobody' also stops requester making followups; take care when using 'blackhole' which just drops mail)

Described state
   <%= select( 'info_request', "described_state", InfoRequest.enumerate_states) %>
    Awaiting description
   <%= select('info_request', "awaiting_description", [["Yes – needs state updating",true],["No – state is up to date",false]]) %>

(don't forget to change 'awaiting description' when you set described state)

Tags (space separated, can use key:value)

   <%= text_field 'info_request', 'tag_string', :size => 60  %>

<%= submit_tag 'Save changes', :accesskey => 's' %>

Note: To edit the actual request body text, click edit
  next to the specific outgoing message.

<% end %>

<%= link_to 'Show', '../show/' + @info_request.id.to_s %> |
<%= link_to 'List all', '../list' %>

<% form_tag '../destroy/' + @info_request.id.to_s do %>

    This is permanent and irreversible! <%= submit_tag 'Destory request entirely' %>

Use it mainly if someone posts private information, e.g. made a Data Protection request. It
    destroys all responses and tracks as well.

<% end %>


Fix #814 - missing </div> in signup.rhtml

git-svn-id: 70ab0960c3db1cbf656efd6df54a8f3de72dc710@1007 820eb932-12ee-0310-9ca8-eeb645f39767

<%= start_form_tag :action=> "signup" %>

<%= error_messages_for 'user' %>

Signup

  Desired login:

  <%= text_field "user", "login", :size => 20 %>

  Display name:

  <%= text_field "user", "name", :size => 30 %>

  Email:

  <%= text_field "user", "email", :size => 30 %>

  Choose password:

  <%= password_field "user", "password", :size => 30 %>

  Confirm password:

  <%= password_field "user", "password_confirmation", :size => 30 %>

  <input type="submit" value="Signup »" class="primary" />

<%= end_form_tag %>


Fixed another couple of things caught out by the new Article#to_param

git-svn-id: 70ab0960c3db1cbf656efd6df54a8f3de72dc710@1468 820eb932-12ee-0310-9ca8-eeb645f39767


Adjust slightly modal sign-in width

Adjust slightly modal sign-in width

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="<%= I18n.locale %>">

        <% if @profile_photo_javascript %>

            <link rel="stylesheet" href="/stylesheets/jquery.Jcrop.css" type="text/css" >
        <% end %>

        <title>
        <% if @title %>
            <%=@title%> - <%= site_name %>
        <% else %>
            <%= site_name %> - <%= _('Make and browse Freedom of Information (FOI) requests') %>
        <% end %>
        </title>

        <link rel="shortcut icon" href="/favicon.ico">
	<%= stylesheet_link_tag 'main', :title => "Main", :rel => "stylesheet", :media => "all" %>
	<%= stylesheet_link_tag 'fonts', :rel => "stylesheet", :media => "all"  %>
	<%= stylesheet_link_tag 'theme', :rel => "stylesheet", :media => "all"  %>
	<%= stylesheet_link_tag 'print', :rel => "stylesheet", :media => "print"  %>
	<% if !params[:print_stylesheet].nil? %>
         <%= stylesheet_link_tag 'print', :rel => "stylesheet", :media => "all"  %>
	<% end %>
	<%= javascript_include_tag 'jquery.js', 'jquery-ui.min','jquery.cookie.js', 'general.js' %>
	<%= stylesheet_link_tag 'admin-theme/jquery-ui-1.8.15.custom.css', :rel => 'stylesheet'%>

        <%= stylesheet_link_tag 'custom', :title => "Main", :rel => "stylesheet"  %>
        <% if force_registration_on_new_request %>
        <%= stylesheet_link_tag 'jquery.fancybox-1.3.4', :rel => "stylesheet"  %>
        <% end %>

        <% if @feed_autodetect %>
            <% for feed in @feed_autodetect %>
                <link rel="alternate" type="application/atom+xml" title="<%=h feed[:title] %>" href="<%=h feed[:url]%>">
                <% if feed[:has_json] %>
                    <link rel="alternate" type="application/json" title="JSON version of <%=h feed[:title] %>" href="<%=h feed[:url]%>.json">
                <% end %>
            <% end %>
        <% end %>
        <% if @has_json %>
            <link rel="alternate" type="application/json" title="JSON version of this page" href="<%=h main_url(request.request_uri) %>.json">
        <% end %>

        <% if @no_crawl %>
            <meta name="robots" content="noindex, nofollow">
        <% end %>

    <%= render :partial => 'general/before_head_end' %>

    <body <%= "class='front'" if params[:action] == 'frontpage' %>>

    <% if force_registration_on_new_request && !@user %>
    <%= javascript_include_tag 'jquery.fancybox-1.3.4.pack' %>

    <% end %>

<% # code for popup advert for a campaign etc.
=begin

Close

    [ message goes here ]

Close

=end
%>

<%= render :partial => 'general/locale_switcher' %>

        <% if not (controller.action_name == 'signin' or controller.action_name == 'signup') %>

          <% if @user %>
              <%= _('Hello, {{username}}!', :username => h(@user.name))%>

                <% if @user %>
                    <%=link_to _("My profile"), user_url(@user) %>
                <% end %>

              <%= link_to _("Sign out"), signout_url(:r => request.request_uri) %>
          <% else %>
              <%= link_to _("Sign in or sign up"), signin_url(:r => request.request_uri) %>
          <% end %>

        <% end %>

            <% form_tag({:controller => "general", :action => "search_redirect"}, {:id => "navigation_search_form"}) do %>

                   <%= text_field_tag 'query', params[:query], { :size => 40, :id => "navigation_search_query" } %>
                   <%= image_submit_tag('search-button.png') %>

            <% end %>

        <%= render :partial => 'general/orglink' %>

        <%= render :partial => 'general/topnav' %>

            <% if flash[:notice] %>

<%= flash[:notice] %>

            <% end %>
            <% if flash[:error] %>

<%= flash[:error] %>

            <% end %>

            <div id="<%= controller.controller_name + "_" + controller.action_name %>" class="controller_<%= controller.controller_name %>">
            <%= yield :layout %>

    <%= render :partial => 'general/footer' %>

    <%= render :partial => 'general/before_body_end' %>

X
<%= _("Paste this link into emails, tweets, and anywhere else:") %>

<input type="text">


ActionItem862: not allowing enterprise to edit titles

<%= required_fields_message %>

<%= render :file => 'shared/tiny_mce' %>

<% if profile.enterprise? && environment.enabled?('disable_cms') && !@article.name.blank? %>
  <div>
    <%= _('Title') %>: <%= @article.name %>
  </div>
<% else %>
  <%= required labelled_form_field(_('Title'), text_field(:article, 'name', :size => '64')) %>
<% end %>

<%= labelled_form_field(_('Text'), text_area(:article, 'body', :cols => 40, :style => 'width:99%')) %>

<%= required_fields_message %>

<%= render :file => 'shared/tiny_mce' %>

<%= required labelled_form_field(_('Title'), text_field(:article, 'name', :size => '64')) %>

<%= labelled_form_field(_('Text'), text_area(:article, 'body', :cols => 40, :style => 'width:99%')) %>


General code cleanup, moving require statements to where they really belong.

more test

<%= @whatever %>

Rack Version: <%= Rack::VERSION %>

Test base: <%= Picombo::Url.base() %>

Session: <%= Picombo::Session.instance.get.inspect %>

GET params: <%= Picombo::Input.instance.get.inspect %>

Memory Usage: <%= (`#{'ps -o rss= -p '+Process.pid.to_s}`.to_f/1024.0) %>MB

<%= Picombo::Router.current_uri %>

<%= Picombo::Router.segments.inspect %>

<%= Picombo::Router.controller %>

<%= Picombo::Router.method %>

XSS CLEAN TEST

<%= Picombo::Security.xss_clean('')%>

<%= Picombo::Core.list_files('controllers').inspect %>

more test

<%= @whatever %>

Rack Version: <%= Rack::VERSION %>

Test base: <%= Picombo::Url.base() %>

Session: <%= Picombo::Session.instance.get.inspect %>

GET params: <%= Picombo::Input.instance.get.inspect %>

Memory Usage: <%= (`#{'ps -o rss= -p '+Process.pid.to_s}`.to_f/1024.0) %>MB

<%= Picombo::Router.current_uri %>

<%= Picombo::Router.segments.inspect %>

<%= Picombo::Router.controller %>

<%= Picombo::Router.method %>

XSS CLEAN TEST

<%= Picombo::Input.instance.xss_clean('')%>

<%= Picombo::Core.list_files('controllers').inspect %>


Improve diary post screen.

Improve diary post screen.

<%= error_messages_for 'diary_entry' %>

<% form_for :controller => 'diary_entry', :action => 'new' do |f| %>

      Subject
      <%= f.text_field :title, :size => 60 %>

      Body
      <%= f.text_area :body, :cols => 80 %>

      <%= submit_tag 'Save' %>

<% end %>

<%= error_messages_for 'diary_entry' %>

<% form_tag :controller => 'diary_entry', :action => 'new' do %>
subject<%= text_field 'diary_entry', 'title' %>

body<%= text_area 'diary_entry', 'body' %>

  <%= submit_tag 'Save' %>
<% end %>


Use new standard form of links on home page of admin

<% @title = "Summary" %>

<%=@title%>

<%=@public_body_count%> public authorities

        <%=@info_request_count%> requests, <%=@outgoing_message_count%> outgoing messages,
        <%=@incoming_message_count%> incoming messages

<%=@user_count%> users, <%=@track_thing_count%> tracked things

<%=@comment_count%> annotations

Things to do

  <% if @holding_pen_messages.size > 0 %>

        <%=@holding_pen_messages.size%> Put misdelivered responses with the right request

            <% for message in @holding_pen_messages %>

                  <% if message.get_body_for_quoting.strip.size == 0 %>
                      <%= link_to "(no body)", "request/show_raw_email/" + message.raw_email_id.to_s %>
                  <% else %>
                      <%= link_to excerpt(message.get_body_for_quoting, "", 60), "request/show_raw_email/" + message.raw_email_id.to_s %>
                  <% end %>

                  <%=simple_date(message.sent_at)%>

            <% end %>

  <% end %>

  <% if @error_message_requests.size > 0 %>

        <%=@error_message_requests.size%> Fix these delivery and other errors

            <% for @request in @error_message_requests %>

                  <%= request_both_links(@request) %>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @attention_requests.size > 0 %>

        <%=@attention_requests.size%> Review requests marked by users as requiring your attention

            <% for @request in @attention_requests %>

                  <%= request_both_links(@request) %>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @requires_admin_requests.size > 0 %>

        <%=@requires_admin_requests.size%> These require administrator attention

            <% for @request in @requires_admin_requests %>

                  <%= request_both_links(@request) %>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @blank_contacts.size > 0 %>

        <%=@blank_contacts.size%> Find missing FOI email for these public authorities (try phoning!)

            <% for @blank_contact in @blank_contacts %>

                  <%= public_body_both_links(@blank_contact) %>

                  <%=simple_date(@blank_contact.updated_at)%>

            <% end %>

  <% end %>

  <% if @old_unclassified.size > 0 %>

        <%=@old_unclassified.size%> Classify responses that are still unclassified <%=InfoRequest::OLD_AGE_IN_DAYS.inspect %> after response

            <% for @request in @old_unclassified %>

                    <%= request_both_links(@request) %>

                    <%=simple_date(@request.get_last_response_event.created_at)%>

            <% end %>

  <% end %>

<% if @holding_pen_messages.size == 0 && @old_unclassified.size == 0 && @requires_admin_requests.size == 0 && @blank_contacts.size == 0 && @attention_requests.size == 0 %>

      No pending administration required.

<% end %>

<% @title = "Summary" %>

<%=@title%>

<%=@public_body_count%> public authorities

        <%=@info_request_count%> requests, <%=@outgoing_message_count%> outgoing messages,
        <%=@incoming_message_count%> incoming messages

<%=@user_count%> users, <%=@track_thing_count%> tracked things

<%=@comment_count%> annotations

Things to do

  <% if @holding_pen_messages.size > 0 %>

        <%=@holding_pen_messages.size%> Put misdelivered responses with the right request

            <% for message in @holding_pen_messages %>

                  <% if message.get_body_for_quoting.strip.size == 0 %>
                      <%= link_to "(no body)", "request/show_raw_email/" + message.raw_email_id.to_s %>
                  <% else %>
                      <%= link_to excerpt(message.get_body_for_quoting, "", 60), "request/show_raw_email/" + message.raw_email_id.to_s %>
                  <% end %>

                  <%=simple_date(message.sent_at)%>

            <% end %>

  <% end %>

  <% if @error_message_requests.size > 0 %>

        <%=@error_message_requests.size%> Fix these delivery and other errors

            <% for @request in @error_message_requests %>

                  <%= link_to(''.html_safe, request_path(@request)) %>
                  <%= link_to(@request.title, admin_request_show_url(@request))%>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @attention_requests.size > 0 %>

        <%=@attention_requests.size%> Review requests marked by users as requiring your attention

            <% for @request in @attention_requests %>

                  <%= link_to(''.html_safe, admin_request_show_url(@request))%>
                  <%= link_to(@request.title, request_path(@request)) %>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @requires_admin_requests.size > 0 %>

        <%=@requires_admin_requests.size%> These require administrator attention

            <% for @request in @requires_admin_requests %>

                  <%= link_to(''.html_safe, admin_request_show_url(@request))%>
                  <%= link_to(@request.title, request_path(@request)) %>

                  <%=simple_date(@request.get_last_event.created_at)%>

            <% end %>

  <% end %>

  <% if @blank_contacts.size > 0 %>

        <%=@blank_contacts.size%> Find missing FOI email for these public authorities (try phoning!)

            <% for @blank_contact in @blank_contacts %>

                  <%= link_to(''.html_safe, admin_body_show_path(@blank_contact))%>
                  <%= link_to h(@blank_contact.name), public_body_url(@blank_contact) %>

                  <%=simple_date(@blank_contact.updated_at)%>

            <% end %>

  <% end %>

  <% if @old_unclassified.size > 0 %>

        <%=@old_unclassified.size%> Classify responses that are still unclassified <%=InfoRequest::OLD_AGE_IN_DAYS.inspect %> after response

            <% for @request in @old_unclassified %>

                    <%= link_to("".html_safe, admin_request_show_url(@request)) %>
                    <%= link_to(@request.title, request_path(@request)) %>

                    <%=simple_date(@request.get_last_response_event.created_at)%>

            <% end %>

  <% end %>

<% if @holding_pen_messages.size == 0 && @old_unclassified.size == 0 && @requires_admin_requests.size == 0 && @blank_contacts.size == 0 && @attention_requests.size == 0 %>

      No pending administration required.

<% end %>


moved the pages lookup code to application init controller.

<%= link_to "home", :controller => "articles", :action => "home"-%>
<%for page in @pages -%>
   | <%= (not page.target_url or page.target_url == "") ? link_to( page.title.downcase, :controller => "pages", :action => "show", :id => page.id) : link_to(page.title.downcase, page.target_url)-%>
<%end-%> | Logout

<%= link_to "home", :controller => "articles", :action => "home"-%>
<% for page in Page.find(:all)-%>
   | <%= (not page.target_url or page.target_url == "") ? link_to( page.title.downcase, :controller => "pages", :action => "show", :id => page.id) : link_to(page.title.downcase, page.target_url)-%>
<%end-%>


ActionItem152: adding icons CSS back

ActionItem152: adding icons CSS back

git-svn-id: 43659daf80e124e0b603d67096418e58e4f21099@1223 3f533792-8f58-4932-b0fe-aaf55b0a4547

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>
      <%- if @category -%>
        Noosfero → <%= @category.full_name -%>
      <%- else -%>
        Noosfero
      <%- end -%>
    </title>
    <meta name="description" content="FIXME: Descriptions of Noosfero" />
    <meta name="keywords" content="Noosfero, Community, Open Source" />
    <%= stylesheet_link_tag 'common' %>
    <%= stylesheet_link_tag 'help' %>
    <%= stylesheet_link_tag 'menu' %>
    <%= stylesheet_link_tag 'button' %>
    <%= stylesheet_link_tag 'search' %>
    <%= stylesheet_link_tag 'blocks' %>

    <%# FIXME %>
    <%= stylesheet_link_tag '/designs/templates/default/stylesheets/style.css' %>
    <%= stylesheet_link_tag '/designs/icons/default/style.css' %>

    <%= javascript_include_tag(:defaults) %>
    <%= javascript_include_tag 'menu' %>
    <%= include_lightbox_header %>
    <%# cms stuff %>
    <% if params[:controller] == 'cms' %>
      <%= javascript_include_tag 'cms' %>
    <% end %>

  <body class='category<%= category_color %>' onload='noosfero_init();'>

    <% unless flash[:notice].nil? %>

        <%= flash[:notice] %>
        <%= javascript_tag(visual_effect(:fade, "notice", :duration => 15)) %>

    <% end %>

      <%= _('Go to content') %>

      <% if @category -%>
        <%= @category.full_name(" → ") %>
      <% end -%>
      <%= javascript_tag(visual_effect(:fade, "path_category", :duration => 10)) %>

          <%= render :file => 'shared/categories_menu' %>

          <%= shortcut_header_links %>

          <% if @controller.send(:boxes_editor?) %>
            <%= yield %>
            <%= display_boxes_editor(@controller.boxes_holder) %>
          <% else %>
            <% if uses_design_blocks?  %>
              <%= display_boxes(@controller.boxes_holder, yield) %>
            <% else %>
              <%= yield %>
            <% end %>
          <% end %>

      <%= localist_menu %>
      <%= footer %>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>
      <%- if @category -%>
        Noosfero → <%= @category.full_name -%>
      <%- else -%>
        Noosfero
      <%- end -%>
    </title>
    <meta name="description" content="FIXME: Descriptions of Noosfero" />
    <meta name="keywords" content="Noosfero, Community, Open Source" />
    <%= stylesheet_link_tag 'common' %>
    <%= stylesheet_link_tag 'help' %>
    <%= stylesheet_link_tag 'menu' %>
    <%= stylesheet_link_tag 'button' %>
    <%= stylesheet_link_tag 'search' %>
    <%= stylesheet_link_tag 'blocks' %>

    <%# FIXME %>
    <%= stylesheet_link_tag '/designs/templates/default/stylesheets/style.css' %>

    <%= javascript_include_tag(:defaults) %>
    <%= javascript_include_tag 'menu' %>
    <%= include_lightbox_header %>
    <%# cms stuff %>
    <% if params[:controller] == 'cms' %>
      <%= javascript_include_tag 'cms' %>
    <% end %>

  <body class='category<%= category_color %>' onload='noosfero_init();'>

    <% unless flash[:notice].nil? %>

        <%= flash[:notice] %>
        <%= javascript_tag(visual_effect(:fade, "notice", :duration => 15)) %>

    <% end %>

      <%= _('Go to content') %>

      <% if @category -%>
        <%= @category.full_name(" → ") %>
      <% end -%>
      <%= javascript_tag(visual_effect(:fade, "path_category", :duration => 10)) %>

          <%= render :file => 'shared/categories_menu' %>

          <%= shortcut_header_links %>

          <% if @controller.send(:boxes_editor?) %>
            <%= yield %>
            <%= display_boxes_editor(@controller.boxes_holder) %>
          <% else %>
            <% if uses_design_blocks?  %>
              <%= display_boxes(@controller.boxes_holder, yield) %>
            <% else %>
              <%= yield %>
            <% end %>
          <% end %>

      <%= localist_menu %>
      <%= footer %>


Fixed favicon.ico link

Fixed favicon.ico link

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
  <%= auto_discovery_link_tag(:rss, {:controller => 'observer', :action  =>  'rss'}, {:title => 'Mushroom Observer RSS'}) %>
  <title>Mushroom Observer: <%= if @title.nil? then controller.action_name else @title end %></title>
  <%= css = nil
	if CSS.member?(controller.action_name)
		css = controller.action_name
	else
		unless session['user'].nil?
        	css = session['user'].theme
		end
	end
	unless CSS.member?(css)
		css = CSS[rand(CSS.length)]
	end
	stylesheet_link_tag 'general', css
  %>
  <%= "<link rel=\"SHORTCUT ICON\" href=\"#{DOMAIN}/images/favicon.ico\" />"%>

		<%= @page_title || "Mushroom Observer" %>

								<%= link_to('Introduction', :controller => 'observer',
								            :action => 'intro') %>

								<%= link_to('How To Use',
								            :controller => 'observer',
								            :action => 'how_to_use') %>

            					<%= link_to('Send a Comment', :controller => 'observer',
            								:action => 'ask_webmaster_question') %>

								<%= link_to('News', :controller => 'observer',
								            :action => 'news') %>

								<%= link_to('Latest Changes',
								            :controller => 'observer',
								            :action => 'list_rss_logs') %>

								<%= link_to('Index A->Z', :controller => 'observer',
								                          :action => 'observation_index') %>

								Observations:

								  <%= link_to('Create Observation',
								                        :controller => 'observer',
								                        :action => 'create_observation')
								                 %>

								  <%= link_to('Sort by Date',
								                        :controller => 'observer',
								                        :action => 'list_observations') %>

								  <%= link_to('Sort by Name',
								                        :controller => 'observer',
								                        :action => 'observations_by_name')
								                 %>

								Species Lists:

								  <%= link_to('Create List',
								                        :controller => 'observer',
								                        :action => 'create_species_list')
								                 %>

								  <%= link_to('Sort by Date',
								                        :controller => 'observer',
								                        :action => 'list_species_lists')
								                 %>

								  <%= link_to('Sort by Title',
								                        :controller => 'observer',
								                        :action => 'species_lists_by_title')
								                        %>

								<%= link_to('Newest Images', :controller => 'observer',
								            :action => 'list_images') %>

								<%= link_to('Comments', :controller => 'observer',
								            :action => 'list_comments') %>

                                <%= link_to('Contributors', :controller => 'observer',
                                            :action => 'users_by_contribution') %>

                                <%= link_to('Site Stats', :controller => 'observer',
                                            :action => 'show_site_stats') %>

								<% if session['user'].nil? %>
								Account:

								  <%= link_to('Login', :controller => 'account',
								                        :action => 'login') %>

								  <%= link_to('Create Account',
								                        :controller => 'account',
														:action => 'signup') %>
								<% else %>
								Current user:

								  <%= h(session['user'].login) %>

								  <%= link_to('Comments for You',
								                        :controller => 'observer',
								                        :action => 'show_comments_for_user',
								                        :id => session['user']) %>

								  <%= link_to('Your Observations',
								                        :controller => 'observer',
								                        :action => 'show_user_observations',
								                        :id => session['user']) %>

                                  <%= link_to('Your Summary',
                                                        :controller => 'observer',
                                                        :action => 'show_user',
                                                        :id => session['user']) %>

								  <%= link_to('Preferences',
								                        :controller => 'account',
								                        :action => 'prefs') %>

								  Join Mailing List

								  <%= link_to('Logout',
								                        :controller => 'account',
								                        :action => 'logout_user') %>
									<% if session['user'].id == 0 %>

										Admin:

										  <%= link_to('Users',
										                        :controller => 'observer',
										                        :action => 'users_by_name') %>

										  <%= link_to('Email Features',
										                        :controller => 'observer',
										                        :action => 'email_features') %>

									<% end %>
								<% end %>

									<%= link_to(sprintf('Colors from %s', css),
												:controller => 'observer', :action => 'color_themes') %>

									Powered by:

									Ruby on Rails

									Preferred browser:

									FireFox
									<% if @invalid.nil? %>

                                    <% end %>

            		<%
            		if @search.nil?
            		    pattern = session["pattern"]
            		else
            		    pattern = @search.pattern
            		end
            		form_tag(:action => 'pattern_search',
            		         :controller => 'observer', :id => @comment) do %>
                      Find: <%= text_field("search", "pattern", :size => 50, :value => pattern)%>
                      <%= submit_tag 'Observations' %>
                      <%= submit_tag 'Images' %>
                      <%= submit_tag 'Names' %>
                    <% end -%>
                    <% if flash[:notice] %>
					  <%= flash[:notice] %>

					<% end %>
					<%= @content_for_layout %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
  <%= auto_discovery_link_tag(:rss, {:controller => 'observer', :action  =>  'rss'}, {:title => 'Mushroom Observer RSS'}) %>
  <title>Mushroom Observer: <%= if @title.nil? then controller.action_name else @title end %></title>
  <%= css = nil
	if CSS.member?(controller.action_name)
		css = controller.action_name
	else
		unless session['user'].nil?
        	css = session['user'].theme
		end
	end
	unless CSS.member?(css)
		css = CSS[rand(CSS.length)]
	end
	stylesheet_link_tag 'general', css
  %>
<link rel="SHORTCUT ICON" href="http://localhost:3000/images/favicon.ico" />

		<%= @page_title || "Mushroom Observer" %>

								<%= link_to('Introduction', :controller => 'observer',
								            :action => 'intro') %>

								<%= link_to('How To Use',
								            :controller => 'observer',
								            :action => 'how_to_use') %>

            					<%= link_to('Send a Comment', :controller => 'observer',
            								:action => 'ask_webmaster_question') %>

								<%= link_to('News', :controller => 'observer',
								            :action => 'news') %>

								<%= link_to('Latest Changes',
								            :controller => 'observer',
								            :action => 'list_rss_logs') %>

								<%= link_to('Index A->Z', :controller => 'observer',
								                          :action => 'observation_index') %>

								Observations:

								  <%= link_to('Create Observation',
								                        :controller => 'observer',
								                        :action => 'create_observation')
								                 %>

								  <%= link_to('Sort by Date',
								                        :controller => 'observer',
								                        :action => 'list_observations') %>

								  <%= link_to('Sort by Name',
								                        :controller => 'observer',
								                        :action => 'observations_by_name')
								                 %>

								Species Lists:

								  <%= link_to('Create List',
								                        :controller => 'observer',
								                        :action => 'create_species_list')
								                 %>

								  <%= link_to('Sort by Date',
								                        :controller => 'observer',
								                        :action => 'list_species_lists')
								                 %>

								  <%= link_to('Sort by Title',
								                        :controller => 'observer',
								                        :action => 'species_lists_by_title')
								                        %>

								<%= link_to('Newest Images', :controller => 'observer',
								            :action => 'list_images') %>

								<%= link_to('Comments', :controller => 'observer',
								            :action => 'list_comments') %>

                                <%= link_to('Contributors', :controller => 'observer',
                                            :action => 'users_by_contribution') %>

                                <%= link_to('Site Stats', :controller => 'observer',
                                            :action => 'show_site_stats') %>

								<% if session['user'].nil? %>
								Account:

								  <%= link_to('Login', :controller => 'account',
								                        :action => 'login') %>

								  <%= link_to('Create Account',
								                        :controller => 'account',
														:action => 'signup') %>
								<% else %>
								Current user:

								  <%= h(session['user'].login) %>

								  <%= link_to('Comments for You',
								                        :controller => 'observer',
								                        :action => 'show_comments_for_user',
								                        :id => session['user']) %>

								  <%= link_to('Your Observations',
								                        :controller => 'observer',
								                        :action => 'show_user_observations',
								                        :id => session['user']) %>

                                  <%= link_to('Your Summary',
                                                        :controller => 'observer',
                                                        :action => 'show_user',
                                                        :id => session['user']) %>

								  <%= link_to('Preferences',
								                        :controller => 'account',
								                        :action => 'prefs') %>

								  Join Mailing List

								  <%= link_to('Logout',
								                        :controller => 'account',
								                        :action => 'logout_user') %>
									<% if session['user'].id == 0 %>

										Admin:

										  <%= link_to('Users',
										                        :controller => 'observer',
										                        :action => 'users_by_name') %>

										  <%= link_to('Email Features',
										                        :controller => 'observer',
										                        :action => 'email_features') %>

									<% end %>
								<% end %>

									<%= link_to(sprintf('Colors from %s', css),
												:controller => 'observer', :action => 'color_themes') %>

									Powered by:

									Ruby on Rails

									Preferred browser:

									FireFox
									<% if @invalid.nil? %>

                                    <% end %>

            		<%
            		if @search.nil?
            		    pattern = session["pattern"]
            		else
            		    pattern = @search.pattern
            		end
            		form_tag(:action => 'pattern_search',
            		         :controller => 'observer', :id => @comment) do %>
                      Find: <%= text_field("search", "pattern", :size => 50, :value => pattern)%>
                      <%= submit_tag 'Observations' %>
                      <%= submit_tag 'Images' %>
                      <%= submit_tag 'Names' %>
                    <% end -%>
                    <% if flash[:notice] %>
					  <%= flash[:notice] %>

					<% end %>
					<%= @content_for_layout %>


Update top level menu

Update top level menu

<%= link_to _("Quiénes somos"), help_about_path %>

<%= link_to _("Guía para solicitantes"), help_requesting_path %>

<%= link_to _("Solicitar documentos"), body_index_path, :class => 'make-request-link' %>

<%= link_to _("Buscar solicitudes"), request_list_all_url %>

<%= link_to _("Noticias"), blog_url %>

<%= link_to _("Tu derecho a saber"), help_right_to_know_path %>


Removing unused link in section form

Removing unused link in section form

git-svn-id: 4158f9403e16ea83fe8a6e07a45f1f3b56a747ab@2236 567b1171-46fb-0310-a4c9-b4bef9110e78

<% form_remote_for :section,
     :url => { :action => (@section.new_record? ? 'create' : 'update'), :id => @section }, :html => { :id => 'section-form' } do |f| %>

Section name

<%= f.text_field :name, :class => 'big' %>

Type of section

      <select id="section_show_paged_articles" name="section[show_paged_articles]" onchange="SectionForm.toggleSettings();">
        <%= options_for_select [
              ['Section with multiple articles (blog)', '0'],
              ['Section with multiple pages (one article per page)', '1']],
              (@section.show_paged_articles? ? '1' : '0') %>
      </select>

      Section path

        Example: If you have a section called Tips & Tricks and you'd like the URL for this section to be domain.com/tips,
        you can add 'tips' in this field.

<%= f.text_field :path, :class => 'big' %>

      Url that the archive area is available at.

<%= f.text_field :archive_path %>

    <% if @templates.any? -%>

<%= 'Paged ' if @section.show_paged_articles? %>Section Template

      <select name="section[template]">
        <%= options_from_templates_for_select(@templates, @section.template) %>
      </select>

Section Archive Template

      <select name="section[archive_template]">
        <%= options_from_templates_for_select(@templates, @section.archive_template) %>
      </select>

    <% end -%>
    <% if @layouts.any? -%>

Section layout

      <select name="section[layout]">
        <%= options_from_templates_for_select(@layouts, @section.layout) %>
      </select>

    <% end -%>

    <div id="blog-options"<%= %( style="display:none;") if @section.show_paged_articles? %>>

Articles per page

<%= f.text_field :articles_per_page, :class => 'tiny' %>

Advanced options

<%= submit_tag 'Save Section' %>

<% end -%>

<% form_remote_for :section,
     :url => { :action => (@section.new_record? ? 'create' : 'update'), :id => @section }, :html => { :id => 'section-form' } do |f| %>

Section name (<%= link_to_function 'Customize path', %(['sec-lbl', 'sec-input'].each(Element.toggle)) %>)

<%= f.text_field :name, :class => 'big' %>

Type of section

      <select id="section_show_paged_articles" name="section[show_paged_articles]" onchange="SectionForm.toggleSettings();">
        <%= options_for_select [
              ['Section with multiple articles (blog)', '0'],
              ['Section with multiple pages (one article per page)', '1']],
              (@section.show_paged_articles? ? '1' : '0') %>
      </select>

      Section path

        Example: If you have a section called Tips & Tricks and you'd like the URL for this section to be domain.com/tips,
        you can add 'tips' in this field.

<%= f.text_field :path, :class => 'big' %>

      Url that the archive area is available at.

<%= f.text_field :archive_path %>

    <% if @templates.any? -%>

<%= 'Paged ' if @section.show_paged_articles? %>Section Template

      <select name="section[template]">
        <%= options_from_templates_for_select(@templates, @section.template) %>
      </select>

Section Archive Template

      <select name="section[archive_template]">
        <%= options_from_templates_for_select(@templates, @section.archive_template) %>
      </select>

    <% end -%>
    <% if @layouts.any? -%>

Section layout

      <select name="section[layout]">
        <%= options_from_templates_for_select(@layouts, @section.layout) %>
      </select>

    <% end -%>

    <div id="blog-options"<%= %( style="display:none;") if @section.show_paged_articles? %>>

Articles per page

<%= f.text_field :articles_per_page, :class => 'tiny' %>

Advanced options

<%= submit_tag 'Save Section' %>

<% end -%>


Fix typo.

Fix typo.

<% @title = "Application Programming Interface - API" %>

<%= render :partial => 'sidebar' %>

<%=@title %>

 Introduction

This page explains how programmers can make other websites and software
interact with <%= site_name %> via an "API".

<%= site_name %> does not have a full API yet, but we are gradually adding
lots of things that are similar in use to an API as they are requested.

 1. Linking to new requests

To encourage your users to make requests to a particular public authority, use URLs of the form:
<%= link_to new_request_to_body_url(:url_name => "liverpool_city_council") , new_request_to_body_url(:url_name => "liverpool_city_council") %>.
These are the parameters you can add to those URLs, either in the URL or from a form.

 title - default summary of the new request.

 default_letter - default text of the body of the letter. The salutation (Dear...) and signoff (Yours...) are wrapped round this.

 body - as an alternative to default_letter, this sets the default entire text of the request, so you can customise the salutation and signoff.

 tags - space separated list of tags, so you can find and link up any requests made later, e.g. openlylocal spending_id:12345. The : indicates it is a machine tag. The values of machine tags may also include colons, useful for URIs.

 2. RSS (actually, Atom) feeds

There are Atom feeds on most pages which list FOI requests, which you can
use to get updates and links in XML format. Find the URL of the Atom feed in
one of these ways:

Look for the  RSS feed links.

Examine the <tt><link rel="alternate" type="application/atom+xml"></tt> tag in the head of the HTML.

Add <tt>/feed</tt> to the start of another URL.

In particular, even complicated search queries have Atom feeds.
You can do all sorts of things with them, such as query by authority, by file
type, by date range, or by status. See the advanced search
tips for details.

 3. JSON structured data

Quite a few pages have JSON versions, which let you download information about
objects in a structured form. Find them by:

Adding <tt>.json</tt> to the end of the URL.

Look for the <tt><link rel="alternate" type="application/json"></tt> tag in the head of the HTML.

Requests, users and authorities all have JSON versions containing basic
information about them. Every Atom feed has a JSON equivalent, containing
information about the list of events in the feed.

 4. Spreadsheet of all authorities

A spreadsheet file listing every body in <%= site_name %> is available:
<%= link_to "all-authorities.csv", all_public_bodies_csv_url() %>

Please contact us if you need an API feature that isn't there yet. It's
very much a work in progress, and we do add things when people ask us to.

<% @title = "Application Programming Interface - API" %>

<%= render :partial => 'sidebar' %>

<%=@title %>

 Introduction

This page explains how programmers can make other websites and software
interact with <%= site_name %> via an "API".

<%= site_name %> does not have a full API yet, but we are gradually adding
lots of things that are similar in use to an API as they are requested.

 1. Linking to new requests

To encourage your users to make links to a particular public authority, use URLs of the form
<%= link_to new_request_to_body_url(:url_name => "liverpool_city_council") , new_request_to_body_url(:url_name => "liverpool_city_council") %>.
These are the parameters you can add to those URLs, either in the URL or from a form.

 title - default summary of the new request.

 default_letter - default text of the body of the letter. The salutation (Dear...) and signoff (Yours...) are wrapped round this.

 body - as an alternative to default_letter, this sets the default entire text of the request, so you can customise the salutation and signoff.

 tags - space separated list of tags, so you can find and link up any requests made later, e.g. openlylocal spending_id:12345. The : indicates it is a machine tag. The values of machine tags may also include colons, useful for URIs.

 2. RSS (actually, Atom) feeds

There are Atom feeds on most pages which list FOI requests, which you can
use to get updates and links in XML format. Find the URL of the Atom feed in
one of these ways:

Look for the  RSS feed links.

Examine the <tt><link rel="alternate" type="application/atom+xml"></tt> tag in the head of the HTML.

Add <tt>/feed</tt> to the start of another URL.

In particular, even complicated search queries have Atom feeds.
You can do all sorts of things with them, such as query by authority, by file
type, by date range, or by status. See the advanced search
tips for details.

 3. JSON structured data

Quite a few pages have JSON versions, which let you download information about
objects in a structured form. Find them by:

Adding <tt>.json</tt> to the end of the URL.

Look for the <tt><link rel="alternate" type="application/json"></tt> tag in the head of the HTML.

Requests, users and authorities all have JSON versions containing basic
information about them. Every Atom feed has a JSON equivalent, containing
information about the list of events in the feed.

 4. Spreadsheet of all authorities

A spreadsheet file listing every body in <%= site_name %> is available:
<%= link_to "all-authorities.csv", all_public_bodies_csv_url() %>

Please contact us if you need an API feature that isn't there yet. It's
very much a work in progress, and we do add things when people ask us to.


Added active theme indicator to themes admin (closes #225) [kevin@sb.org]

git-svn-id: 70ab0960c3db1cbf656efd6df54a8f3de72dc710@457 820eb932-12ee-0310-9ca8-eeb645f39767

<% for theme in @themes %>
<img src="<%= url_for :action => 'preview', :theme => theme.name %>" alt="<%= theme.name %>" align="right" />

  <%= theme.description %>

  <% if theme.path == @active.path -%>
  (Active theme)
  <% else -%>
  <%= link_to "Activate", :action => 'switchto', :theme => theme.name %>
  <% end -%>

<% end %>

<% for theme in @themes %>
<img src="<%= url_for :action => 'preview', :theme => theme.name %>" alt="<%= theme.name %>" align="right" />

  <%= theme.description %>

  <%= link_to "Activate", :action => 'switchto', :theme => theme.name %>

<% end %>


Automatix

Automatix

git-svn-id: e70f47238a868777ecefe75ba01929cffb2d8127@328 d8b24053-1f83-4035-b5c3-ce8b92cd91ad

Ubuntu-Derivate

Communtu setzt auf einer Ubuntu-Basisinstallation auf.
Es gibt nun eine ganze Reihe von <%= link_to 'Ubuntu-Derivaten', 'http://wiki.ubuntuusers.de/Was_ist_Linux?#Was-sind-Derivate-einer-Distribution' %>, und viele Ubuntu-Nutzer fragen sich,
ob sie statt Ubuntu lieber ein Derivat benutzen sollten.
Die Antwort ist: meistens fährt man mit dem Standard-Ubuntu ganz gut, denn
Communtu erlaubt, die Derivate auf einfache Weise nachzuinstallieren.
Allerdings ist das nicht bei allen Derivaten gleich sinnvoll.

Alle Derivate können unter <%= link_to 'Installationsvorschläge', user_path(current_user) + "/suggestion" %>
unter der Kategorie "Derivate" zur Installation ausgewählt werden.
Ebenso kannst du dort nachgucken, aus welchen Paketen ein Derivat besteht.

Über Communtu sinnvoll nachinstallierbare Derivate

<%= link_to 'Ubuntu Studio', 'http://wiki.ubuntuusers.de/Ubuntu_Studio'%>
wird bei Communtu mitinstalliert, wenn du bei Audio, Film und/oder Grafik/Design "erweitert" anwählst.

<%= link_to 'Medibuntu', 'http://medibuntu.org' %> stellt Multimedia-Paketquellen bereit, die aus rechtlichen Gründen nicht von Ubuntu selbst angeboten wird. Medibuntu wird bei Communtu mit berücksichtigt (z.B. bei Audio und Film).

<%= link_to 'Mythbuntu', 'http://www.mythbuntu.org/' %> - der PC wird zum Videorekorder. Bei Film "Freak" auswählen, und es wird mitinstalliert.

<%= link_to 'Edubuntu', 'http://www.edubuntu.org/' %> - Lernsoftware. Bei "Bildung und Wissenschaft" den Level "erweitert" auswählen, und es wird mitinstalliert.

<%= link_to 'Kubuntu', 'http://wiki.ubuntuusers.de/KDE' %> Kubuntu ist Ubuntu mit dem KDE-Desktop.

<%= link_to 'Linux Mint', 'http://de.wikipedia.org/wiki/Linux_Mint' %> ist eine Ubuntu-Abspaltung mit eigener User-Community.
Linux Mint ähnelt Ubuntu sehr, hat aber viele Codes, z.B. für DVDs und MP3s, schon vorinstalliert. Diese Codecs gibt es allerdings auch bei Communtu, unter Unterhaltungsmedien.

	<%= link_to 'Automatix', 'http://wiki.ubuntuusers.de/Baustelle/Verlassen/Automatix2' %> war eine Installationshilfe, die sich großer Beliebtheit erfreute (sie wurde sogar von der New York Times empfohlen), die aber nicht ganz den Ubuntu-Programmierstandards entsprach und inzwischen nicht mehr weiterentwickelt wird.

Derivate, die mit einer eigenen Installations-CD installiert werden sollten

<%= link_to 'Xubuntu', 'http://wiki.ubuntuusers.de/Xfce' %> - mit dem schlanken Xfce als grafischer Oberfläche - besonders für ältere Rechner geeignet. Sollte von CD installiert werden, um wirklich eine schlanke Installation zu haben. Nachinstallationen mit Communtu möglich.

<%= link_to 'Linux MCE', 'http://de.wikipedia.org/wiki/LinuxMCE' %> - damit wird Ubuntu zum <%=link_to 'Fernsehcomputer', 'http://de.wikipedia.org/wiki/Home_Theater_Personal_Computer' %>. Aufgrund der notwendigen Treiberinstallation sollte Linux MCE direkt installiert werden, Communtu kann dann aber für die Installation weiterer Software genutzt werden.

<%= link_to 'Gobuntu', 'http://www.ubuntu.com/products/whatisubuntu/gobuntu' %> ist ein Ubuntu-Derivat komplett aus freier Software. Sollte mit der Gobuntu-CD installiert werden, damit es auch wirklich nur freie Software ist. Nachinstallationen mit Communtu möglich, sinnvollerweise sollten dann im Nutzerprofil "freie Software" angewählt werden.

Derivate, die wir uns noch genauer angucken müssen

 <%= link_to 'Impi Linux', 'http://www.impi.org.za/' %>

 <%= link_to 'Nexenta OS', 'http://de.wikipedia.org/wiki/GNU-Varianten#Nexenta_OS'%>

 <%= link_to 'linex', 'http://de.wikipedia.org/wiki/LinEx'%>

 <%= link_to 'Ubuntulite', 'http://ubuntulite.tuxfamily.org/'%>

Ubuntu-Derivate

Communtu setzt auf einer Ubuntu-Basisinstallation auf.
Es gibt nun eine ganze Reihe von <%= link_to 'Ubuntu-Derivaten', 'http://wiki.ubuntuusers.de/Was_ist_Linux?#Was-sind-Derivate-einer-Distribution' %>, und viele Ubuntu-Nutzer fragen sich,
ob sie statt Ubuntu lieber ein Derivat benutzen sollten.
Die Antwort ist: meistens fährt man mit dem Standard-Ubuntu ganz gut, denn
Communtu erlaubt, die Derivate auf einfache Weise nachzuinstallieren.
Allerdings ist das nicht bei allen Derivaten gleich sinnvoll.

Alle Derivate können unter <%= link_to 'Installationsvorschläge', user_path(current_user) + "/suggestion" %>
unter der Kategorie "Derivate" zur Installation ausgewählt werden.
Ebenso kannst du dort nachgucken, aus welchen Paketen ein Derivat besteht.

Über Communtu sinnvoll nachinstallierbare Derivate

<%= link_to 'Ubuntu Studio', 'http://wiki.ubuntuusers.de/Ubuntu_Studio'%>
wird bei Communtu mitinstalliert, wenn du bei Audio, Film und/oder Grafik/Design "erweitert" anwählst.

<%= link_to 'Medibuntu', 'http://medibuntu.org' %> stellt Multimedia-Paketquellen bereit, die aus rechtlichen Gründen nicht von Ubuntu selbst angeboten wird. Medibuntu wird bei Communtu mit berücksichtigt (z.B. bei Audio und Film).

<%= link_to 'Mythbuntu', 'http://www.mythbuntu.org/' %> - der PC wird zum Videorekorder. Bei Film "Freak" auswählen, und es wird mitinstalliert.

<%= link_to 'Edubuntu', 'http://www.edubuntu.org/' %> - Lernsoftware. Bei "Bildung und Wissenschaft" den Level "erweitert" auswählen, und es wird mitinstalliert.

<%= link_to 'Kubuntu', 'http://wiki.ubuntuusers.de/KDE' %> Kubuntu ist Ubuntu mit dem KDE-Desktop.

<%= link_to 'Linux Mint', 'http://de.wikipedia.org/wiki/Linux_Mint' %> ist eine Ubuntu-Abspaltung mit eigener User-Community.
Linux Mint ähnelt Ubuntu sehr, hat aber viele Codes, z.B. für DVDs und MP3s, schon vorinstalliert. Diese Codecs gibt es allerdings auch bei Communtu, unter Unterhaltungsmedien.

Derivate, die mit einer eigenen Installations-CD installiert werden sollten

<%= link_to 'Xubuntu', 'http://wiki.ubuntuusers.de/Xfce' %> - mit dem schlanken Xfce als grafischer Oberfläche - besonders für ältere Rechner geeignet. Sollte von CD installiert werden, um wirklich eine schlanke Installation zu haben. Nachinstallationen mit Communtu möglich.

<%= link_to 'Linux MCE', 'http://de.wikipedia.org/wiki/LinuxMCE' %> - damit wird Ubuntu zum <%=link_to 'Fernsehcomputer', 'http://de.wikipedia.org/wiki/Home_Theater_Personal_Computer' %>. Aufgrund der notwendigen Treiberinstallation sollte Linux MCE direkt installiert werden, Communtu kann dann aber für die Installation weiterer Software genutzt werden.

<%= link_to 'Gobuntu', 'http://www.ubuntu.com/products/whatisubuntu/gobuntu' %> ist ein Ubuntu-Derivat komplett aus freier Software. Sollte mit der Gobuntu-CD installiert werden, damit es auch wirklich nur freie Software ist. Nachinstallationen mit Communtu möglich, sinnvollerweise sollten dann im Nutzerprofil "freie Software" angewählt werden.

Derivate, die wir uns noch genauer angucken müssen

 <%= link_to 'Impi Linux', 'http://www.impi.org.za/' %>

 <%= link_to 'Nexenta OS', 'http://de.wikipedia.org/wiki/GNU-Varianten#Nexenta_OS'%>

 <%= link_to 'linex', 'http://de.wikipedia.org/wiki/LinEx'%>

 <%= link_to 'Ubuntulite', 'http://ubuntulite.tuxfamily.org/'%>


zoom

zoom

You need a Flash player to use Potlatch, the
    OpenStreetMap Flash editor. You can download Flash Player from Adobe.com.

    Several other options are also available
    for editing OpenStreetMap.


Removed obsolete method 'node_link' and replaced it by zen_path.

<% icon = 'user'
if li.is_anon?
  icon += '_pub'
elsif li.is_su?
  icon += '_su'
elsif li.is_admin?
  icon += '_admin'
end %>
<tr id='user<%= li[:id] %>' class='u<%= li.status %>'>
  <%= link_to_remote(_("img_#{icon}"),
          :update =>"user#{li[:id]}",
          :url    => edit_user_path(li),
          :method => :get) %>
  <%= if li.is_anon? then 'public' else li.login end %>
  <a href='<%= zen_path(li.contact) %>'><%= li.fullname %>
  <%= _(User::Num_to_status[li.status].to_s) %>
  <%= li.groups.map {|g| g.name }.join(', ') %>

<% icon = 'user'
if li.is_anon?
  icon += '_pub'
elsif li.is_su?
  icon += '_su'
elsif li.is_admin?
  icon += '_admin'
end %>
<tr id='user<%= li[:id] %>' class='u<%= li.status %>'>
  <%= link_to_remote(_("img_#{icon}"),
          :update =>"user#{li[:id]}",
          :url    => edit_user_path(li),
          :method => :get) %>
  <%= if li.is_anon? then 'public' else li.login end %>
  <%= node_link(:node=>li.contact, :text=>li.fullname) %>
  <%= _(User::Num_to_status[li.status].to_s) %>
  <%= li.groups.map {|g| g.name }.join(', ') %>


Point footer help desk link to AI web

Point footer help desk link to AI web

Help Desk

<%= link_to _("Contact {{site_name}}", :site_name => site_name), help_contact_url %>

This website is powered by Alaveteli – an open source
                application being developed by mySociety
 in collaboration with Access Info Europe and other
                civil society organisations.

                The other original content of this website was developed by Access Info Europe
 and is made
                public under a Creative Commons Attribution, Share Alike licence.

<%= link_to _("Help Desk"), help_contact_url %>

<%= link_to _("Contact {{site_name}}", :site_name => site_name), help_contact_url %>

This website is powered by Alaveteli – an open source
                application being developed by mySociety
 in collaboration with Access Info Europe and other
                civil society organisations.

                The other original content of this website was developed by Access Info Europe
 and is made
                public under a Creative Commons Attribution, Share Alike licence.


No need to run urls created with url_for through an XML escaper; they are already escaped. And in new versions of ruby, were getting double escaped.

<%
if any_services_in_progress? %>
  <complete value="false">false</complete>
  <in_progress>
    <% # URLS delivered by url_for already come with & rather than & seperating query params, no need to XML-escape them. I used to not realize that and send them through REXML::Text to escape them. Old versions of REXML were buggy, and avoided double escaping. New versions are not buggy and the unneccesary trip through REXML::Text messed them up. Phew, that was crazy to debug
    %>
    <refresh_url><%=
    url_for(params.merge( :'umlaut.request_id' => @user_request.id, :only_path => false ) ) %></refresh_url>
    <refresh_url_path><%=  url_for(params.merge( :'umlaut.request_id' => @user_request.id, :only_path => true ) ) %></refresh_url_path>
    <requested_wait_seconds><%= AppConfig.param("poll_wait_seconds", 4)%></requested_wait_seconds>
    <services_in_progress>
      <% @user_request.services_in_progress.collect { |s| s.service_types_generated}.flatten.uniq.each do |type| %>
          <service name="<%= type.name %>" />
      <% end %>
    </services_in_progress>
  </in_progress>
<% else %>
  <complete value="true">true</complete>
<% end %>

<% if any_services_in_progress? %>
  <complete value="false">false</complete>
  <in_progress>
    <refresh_url><%= REXML::Text.new( url_for(params.merge( :'umlaut.request_id' => @user_request.id, :only_path => false ) )).to_s %></refresh_url>
    <refresh_url_path><%= REXML::Text.new( url_for(params.merge( :'umlaut.request_id' => @user_request.id, :only_path => true ) )).to_s %></refresh_url_path>
    <requested_wait_seconds><%= AppConfig.param("poll_wait_seconds", 4)%></requested_wait_seconds>
    <services_in_progress>
      <% @user_request.services_in_progress.collect { |s| s.service_types_generated}.flatten.uniq.each do |type| %>
          <service name="<%= type.name %>" />
      <% end %>
    </services_in_progress>
  </in_progress>
<% else %>
  <complete value="true">true</complete>
<% end %>


Show total

Show total

Show only...

<% for category, description in PublicBody.categories_with_description %>

    <%= link_to_unless (@tag == category), description, list_public_bodies_url(:tag => category) %>

<% end %>

Are we missing a public authority?

<% @title = "Public authorities - " + @description %>

<%=@title%>

    <%= @public_bodies.size %> in total

<%= render :partial => 'body_listing', :locals => { :public_bodies => @public_bodies } %>

<%= will_paginate(@public_bodies) %>

Show only...

<% for category, description in PublicBody.categories_with_description %>

    <%= link_to_unless (@tag == category), description, list_public_bodies_url(:tag => category) %>

<% end %>

Are we missing a public authority?

<% @title = "Public authorities - " + @description %>

<%=@title%>

<%= render :partial => 'body_listing', :locals => { :public_bodies => @public_bodies } %>

<%= will_paginate(@public_bodies) %>


Leaving hosts on links src when added on tinymce

It also fixes src from images

(ActionItem2555)

<%= javascript_include_tag 'tinymce/jscripts/tiny_mce/tiny_mce.js' %>
<script type="text/javascript">
  var myplugins = "searchreplace,print,table,contextmenu";
  var first_line, second_line;
  var mode = '<%= mode ||= false %>'
  <% if mode %>
    first_line = "fontsizeselect,bold,italic,underline,bullist,numlist,justifyleft,justifycenter,justifyright,link,unlink"
    second_line = ""
  <% else %>
    first_line = "print,separator,copy,paste,separator,undo,redo,separator,search,replace,separator,forecolor,fontsizeselect,formatselect"
    second_line = "bold,italic,underline,strikethrough,separator,bullist,numlist,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,link,unlink,image,table,separator,cleanup,code"
  <% end %>

  if (tinymce.isIE) {
    // the paste plugin is only useful in Internet Explorer
    myplugins = "paste," + myplugins;
  }
tinyMCE.init({
        mode : "textareas",
        editor_selector : "mceEditor",
        theme : "advanced",
        relative_urls : false,
        remove_script_host : false,
        document_base_url : <%= environment.top_url.to_json %>,
        plugins: myplugins,
        theme_advanced_toolbar_location : "top",
        theme_advanced_layout_manager: 'SimpleLayout',
        theme_advanced_buttons1 : first_line,
        theme_advanced_buttons2 : second_line,
        theme_advanced_buttons3 : "",
        theme_advanced_blockformats :"p,address,pre,h2,h3,h4,h5,h6",
        paste_auto_cleanup_on_paste : true,
        paste_insert_word_content_callback : "convertWord",
        paste_use_dialog: false,
        apply_source_formatting : true,
        extended_valid_elements : "applet[style|archive|codebase|code|height|width],comment,iframe[src|style|allowtransparency|frameborder|width|height|scrolling],embed[title|src|type|height|width]",
        content_css: '/stylesheets/tinymce.css',
        language: <%= tinymce_language.inspect %>,
        entity_encoding: 'raw'
        });

function convertWord(type, content) {
  switch (type) {
    // Gets executed before the built in logic performes it's cleanups
    case "before":
      //content = content.toLowerCase(); // Some dummy logic
      break;

    // Gets executed after the built in logic performes it's cleanups
    case "after":
      content = content.replace(/<!--\s*-->/, '');
      break;
  }

  return content;
}

</script>

<%= javascript_include_tag 'tinymce/jscripts/tiny_mce/tiny_mce.js' %>
<script type="text/javascript">
  var myplugins = "searchreplace,print,table,contextmenu";
  var first_line, second_line;
  var mode = '<%= mode ||= false %>'
  <% if mode %>
    first_line = "fontsizeselect,bold,italic,underline,bullist,numlist,justifyleft,justifycenter,justifyright,link,unlink"
    second_line = ""
  <% else %>
    first_line = "print,separator,copy,paste,separator,undo,redo,separator,search,replace,separator,forecolor,fontsizeselect,formatselect"
    second_line = "bold,italic,underline,strikethrough,separator,bullist,numlist,separator,justifyleft,justifycenter,justifyright,justifyfull,separator,link,unlink,image,table,separator,cleanup,code"
  <% end %>

  if (tinymce.isIE) {
    // the paste plugin is only useful in Internet Explorer
    myplugins = "paste," + myplugins;
  }
tinyMCE.init({
        mode : "textareas",
        editor_selector : "mceEditor",
        theme : "advanced",
        relative_urls : false,
        remove_script_host : true,
        document_base_url : <%= environment.top_url.to_json %>,
        plugins: myplugins,
        theme_advanced_toolbar_location : "top",
        theme_advanced_layout_manager: 'SimpleLayout',
        theme_advanced_buttons1 : first_line,
        theme_advanced_buttons2 : second_line,
        theme_advanced_buttons3 : "",
        theme_advanced_blockformats :"p,address,pre,h2,h3,h4,h5,h6",
        paste_auto_cleanup_on_paste : true,
        paste_insert_word_content_callback : "convertWord",
        paste_use_dialog: false,
        apply_source_formatting : true,
        extended_valid_elements : "applet[style|archive|codebase|code|height|width],comment,iframe[src|style|allowtransparency|frameborder|width|height|scrolling],embed[title|src|type|height|width]",
        content_css: '/stylesheets/tinymce.css',
        language: <%= tinymce_language.inspect %>,
        entity_encoding: 'raw'
        });

function convertWord(type, content) {
  switch (type) {
    // Gets executed before the built in logic performes it's cleanups
    case "before":
      //content = content.toLowerCase(); // Some dummy logic
      break;

    // Gets executed after the built in logic performes it's cleanups
    case "after":
      content = content.replace(/<!--\s*-->/, '');
      break;
  }

  return content;
}

</script>