嗨 

所以我们又到了一个 GSOC 的结束,和大量的编码。对我个人来说,我的第二次与 Joomla! 的合作是一个更加学习的过程。我真的学到了很多,我非常高兴。

正如你们从我的前一篇博客中所知,我们现在有了四个新模块,我在过去几周里测试了它们,并大大改进了它们的选项和可靠性。

我在 mod_civicontribute 中使用的一种新方法可能很有趣,即在模态窗口中显示模块内容。因为模块没有可以被调用的自己的 URL,所以不可能把它放在模态窗口中。

在我的模块中,当模块在前端被渲染时,即默认模板,我还会强制它在一个临时文件夹中形成一个静态 HTML 页面。页面将有与模块相同的名称,因此可以很容易地从模块内部链接到模态窗口。

现在来谈谈安装改进。

我的主要目标是使 civiCRM 能够在禁用 PHP_ZIP 的系统上安装。如果能够实现这一点,那么它基本上也可以在其他系统上工作。

我使用了 civicrm_3_0_alpha2 来实现这个目的,它在磁盘上大约占用 45 M.B。新的压缩包大约是 7.13 M.B,这在大多数系统上远低于默认的 8 M.B php 设置。实际上,主包是一个“子包的包”。我把 civiCRM 文件夹压缩成不同的子包,然后解压它们,完成安装。

为了安装这个组件,我首先需要解压它们,然后进行安装。所以我改进并构建了一个新的控制器,我想称之为“伪控制器”。伪控制器负责解压过程,最后进行安装。

整个安装过程被分为八个步骤,必须按顺序执行。用户也需要手动完成所有步骤。尽管这非常繁琐,但我假设没有PHP_ZIP的用户也愿意这样做。然而,这可能完全没有必要;我甚至可以让系统自动重定向到每个步骤,然后完成安装。但是,这也有它的缺点,至少在我的系统上是这样;当我在解压过程中尝试安装civiCRM(我的新软件包)时,我的CPU使用率骤升至85%以上,而当我尝试自动重定向时,CPU始终保持在100%,最后我的apache放弃了。我不确定这是否只有我这样。但我将在不久的将来测试它。现在,我将继续遵循逐步操作程序。

这里还值得提到的是,安装可以从任何一点恢复。是的,可以恢复 :) 在每个安装步骤中,我都会写入一个xml文件并保存它。如果安装未完成,伪控制器会自动让我们恢复安装过程。

好的,我想在这里向Joomla!社区表示衷心的感谢,感谢他们给我的机会。这是一次美妙的经历,我希望能保持良好的工作状态,并为Joomla!做出贡献。

 

谢谢

-Nakul Ganesh S

哦,对了,下载链接在这里

http://joomlacode.org/gf/project/gsoc09downloads/frs/?action=FrsReleaseBrowse&frs_package_id=4825