`
vickcy
  • 浏览: 32205 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用Redmine的Macro优化其wiki页面 (jQuery使用)

阅读更多

用Redmine的Macro优化其wiki页面 (jQuery使用)

 

概要

本文说明了如何用Redmine的Macro功能结合jQuery和jQueryUI优化Redmine的wiki页面的显示。

以下代码均为在 ${redmine_root}\lib\redmine\wiki_formatting\macros.rb 文件中追加macro实现。

 

Redmine版本为: 0.8.1

 

 

环境配置

${redmine_root}\public\javascripts 文件夹中加入 jquery-1.3.2.min.js 和 jquery-ui-1.7.1.custom.min.js库。

${redmine_root}\public\stylesheets 文件夹中加入 jqueryui 的主题CSS,比如cupertino

jqueryUI相关的CSS和JS库请在jqueryui.com 下载。


每日工作情况一览表

脚本:

desc "Add accordion in wiki Daily Report page." 
      macro :accordion_script do |obj, args|
        <<"EOB" 
        <div id="linkDailyReport"></div>
        <link rel="stylesheet" type="text/css" media="screen" href="/stylesheets/cupertino/jquery-ui-1.7.1.custom.css" /> 
        <script type="text/javascript" src="/javascripts/jquery-1.3.2.min.js"></script>
        <script type="text/javascript" src="/javascripts/jquery-ui-1.7.1.custom.min.js"></script>
        <script type="text/javascript">
        jQuery.noConflict();
        var $j = jQuery;

        $j(function(){
            var index = 0;
              $j("#divWiki p").each(function(i){
                  if (this.innerHTML.toLowerCase().indexOf("<script ") >= 0) {
                      return;
                  }

              var linkText = $j(this).text(); 
                if (linkText.search("^2009") == 0) {
                  var strYear = linkText.substr(0,4);
                  var strMonth = linkText.substr(5,2);
                  var month = strYear + "-" + strMonth;        
                var monthId = "#" + month;
                if ($j(monthId).length == 0) {
                    $j("#linkDailyReport").append('<h3><a href="#">' + strYear + '-' + strMonth + '</a></h3><div id="' + month + '"></div>');
                    index++;
                }
                $j(monthId).append('<p>' + $j(this).html() + '</p>');
                $j(this).remove();
                }
          });

             $j("#linkDailyReport").accordion({
                 autoHeight: false
             });
             $j("#linkDailyReport").accordion('activate', index - 1);
        });
        </script>
EOB
      end

 

使用方法:

h1. 作業日報

{{accordion_script}}

[[作業日報テンプレート]]

[[2009-03-18(水)作業日報]]

[[2009-03-19(木)作業日報]]

[[2009-03-23(月)作業日報]]

[[2009-03-24(火)作業日報]]

[[2009-03-25(水)作業日報]]

[[2009-03-26(木)作業日報]]

[[2009-03-27(金)作業日報]]

[[2009-03-30(月)作業日報]]

[[2009-03-31(火)作業日報]]

[[2009-04-01(水)作業日報]]

[[2009-04-02(木)作業日報]]

[[2009-04-03(金)作業日報]]

[[2009-04-06(月)作業日報]]



.........

 

效果图:





在wiki页面的H2、H3上加上编号和索引

脚本:

desc "set section number for h2 h3" 
      macro :section_number do |obj, args|
        <<"EOB" 
        <script type="text/javascript" src="/javascripts/jquery-1.3.2.min.js"></script>
        <script type="text/javascript">
        jQuery.noConflict();
        var $j = jQuery;
        var space = "&nbsp;";
        var countH2 = 0;
        var countH3 = 0;
        $j(".heading2,.heading3").each(function(i) {
           if (this.className == "heading2") {
              countH2++;
              $j(this).prepend(countH2 + space);
              countH3 = 0;
           } else {
              countH3++;
              $j(this).prepend(countH2 + "." + countH3 + space);
        }});
        countH2 = 0;
        countH3 = 0;
        $j(".wiki h2,.wiki h3").each(function(i) {
           if (this.tagName.toLowerCase() == "h2") {
              countH2++;
              $j(this).prepend(countH2 + space);
              countH3 = 0;
           } else {
              countH3++;
              $j(this).prepend(countH2 + "." + countH3 + space);
        }});
        </script>
EOB
        end
  • 大小: 72.2 KB
1
0
分享到:
评论
1 楼 sd8089730 2013-02-19  
求指点 redmine 用来做日报.. 每个人都写日报 难道都写一个wiki里了?

相关推荐

    redmine_tagging, 为Redmine问题/wiki页面添加简单标签支持.zip

    redmine_tagging, 为Redmine问题/wiki页面添加简单标签支持 Redmine标签插件 这里插件向Redmine添加有用的标记功能:在边栏中标记云标记建议和自动完成Redmine搜索集成( 可能搜索 #tag 以查找 wiki/问题)基于标签的...

    redmine-personal_wiki_page:将指向个人 wiki 页面的链接添加到 Redmine 的标题

    redmine-personal_wiki_page | | 将指向个人 wiki 页面的链接添加到 Redmine 的标题安装确保您的 Redmine 安装中有Gemfile.local文件。 添加到您的Gemfile.local : gem "redmine-personal_wiki_page" 然后执行: $ ...

    redmine-plugin-wiki-external:Redmine 插件使用外部 wiki 系统而不是 Redmine 的内置 wiki

    redmine-plugin-wiki-external 强制使用外部 wiki(例如单独的 MediaWiki 安装)而不是内部 Redmine wiki 的 Redmine... 请注意,列出给定 Redmine 项目的 wiki 页面的能力不适用于外部 wiki。 您需要在自己的 wiki 平

    redmine_page_break_macro:用于添加分页宏的 Redmine 插件,用于指定 wiki 页面中的分页位置

    用于添加分页宏的 Redmine 插件,用于指定 wiki 页面中的分页位置。 {{page_break}} macro用法: 在浏览器中打印: 将 wiki 页面导出为 PDF: 导出的PDF: 支持的版本 Redmine 2.6,trunk(仅使用本地测试) ...

    redmine中文使用手册

    整个Redmine的使用手册没有包含安装配置的内容,主要是因为Redmine安装配置的资料在网络上已经非常丰富,所以手册的主要目的是帮助用户快速学习如何在Redmine中进行日常工作,包括创建项目、提交和处理问题。...

    redmine的一些教程

    5. **性能优化**:调整配置以提高Redmine的性能和响应速度。 四、Redmine Sprints 插件与Scrum-pm插件 `Redmine Sprints Plugin 用户手册.pdf` 和 `Redmine 安装 scrum-pm插件.pdf` 关注的是Scrum敏捷开发方法在...

    Redmine一经典使用说明,比较详细并且有具体使用简单使用制度

    Redmine的界面直观易用,项目页面是其核心,这里可以查看项目概述、里程碑、问题、文件等。创建新项目时,需填写项目名称、描述、负责人等信息,并设置相应的权限。权限管理是Redmine的一大特色,它允许管理员定义...

    redmine_drawio:宏插件可将draw.io图嵌入Redmine Wiki页面

    此插件将允许将draw.io图表嵌入 Wiki页面,发行说明和发行说明。 一张纸条 在提交问题之前,请仔细阅读README.md文件(此页面):许多看似有缺陷的替代品是宏的预期行为,因此在开始使用此插件以及发现异常行为之前...

    redmine_wiki_extensions

    Redmine Wiki扩展插件 Wiki Extensions是一个插件,它向Redmine添加了几个有用的Wiki宏。 插件安装 将插件目录复制到插件目录中 迁移插件:rake redmine:plugins:migrate RAILS_ENV = production 启动Redmine ...

    如何让redmine中问题或论坛中图片附件自动预览

    如果Redmine尚未集成jQuery,需要将其添加到项目的`public/javascripts`目录,并在相应页面中引入。同样,可能还需要创建或修改CSS样式来调整预览图片的样式。 3. **识别图片附件**: 在对应的视图模板中,遍历每...

    redmine使用jmeter批量创建issue

    通过这种方式,我们能够使用JMeter有效地自动化批量创建Redmine中的Issue,这对于大型项目或需要大量初始化数据的场景非常有用。同时,这也能帮助测试Redmine系统的性能和稳定性,尤其是在高并发情况下。

    Redmine使用说明文档.

    Redmine 使用说明文档 一、Redmine 概述 Redmine 是一个基于 web 的项目管理软件,基于 ROR(Ruby on Rails)框架开发的一套跨平台项目管理系统。它支持多种数据库,除了和 DotProject 的功能大致相当外,还有不少...

    redmine_wiki_todos:允许您将简单的任务列表嵌入到 Redmine 的 wiki 的宏

    Redmine wiki 任务列表 添加宏,允许您将带有可点击复选框的简单任务列表嵌入到 Redmine 的 wiki 安装 只需将redmine_wiki_todos文件夹放入 Redmine 的plugins文件夹并重新启动 Redmine。 用法 将这样的内容添加到您...

    Redmine_用户手册.doc

    Redmine wiki 页面显示 Redmine 的 Wiki 信息,包括 Wiki 文章和 Wiki 链接。 13. 版本库 版本库页面显示项目的版本库信息,包括版本库统计和版本库链接。 14. 项目配置 项目配置页面显示项目的配置信息,包括...

    Redmine简要使用介绍.pdf

    未来,随着团队对Redmine使用的深入探索,还可以发掘更多实用的功能,进一步优化项目管理工作流程。同时,对于Redmine无法满足的特定需求,可以考虑结合其他工具或方法,共同构建一套更为完善的项目管理体系。

    redmine常用技巧

    - **创建和编辑Wiki页面**:在Redmine中,每个项目都可以拥有一个Wiki空间,用于存储文档、会议记录等信息。管理员或具有相应权限的用户可以创建新页面并进行编辑。 - **链接和引用**:在编写Wiki内容时,可以通过...

    redmine_wiki_css:用于 redmine wiki 的 css

    在使用 Redmine 进行项目文档管理时,wiki 页面是重要的组成部分,它允许团队成员创建、编辑和组织共享知识。然而,Redmine 的默认样式可能无法满足所有用户对于界面美观和个性化的需求。为了解决这个问题,我们可以...

Global site tag (gtag.js) - Google Analytics