From 10cde37582b6751463d8bd3e12054c2a481b46ce Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 7 Jan 2015 09:27:44 +0800 Subject: [PATCH 01/45] cache using version --- .metadata/.log | 108 ++++++++ .../{connections.9 => connections.15} | 2 +- ...faultConnection.9 => defaultConnection.15} | 12 +- .../{sites.9 => sites.15} | 2 +- .../{webservers.8 => webservers.12} | 10 +- .../{.root/2.tree => .projects/demo/6.tree} | Bin 4837 -> 4750 bytes .../.root/.indexes/properties.index | Bin 104 -> 104 bytes .../org.eclipse.core.resources/.root/4.tree | Bin 0 -> 94 bytes .../.safetable/com.aptana.core.io.15 | 3 + .../.safetable/com.aptana.core.io.9 | 3 - .../.safetable/com.aptana.syncing.core.15 | 4 + .../.safetable/com.aptana.syncing.core.9 | 4 - .../.safetable/com.aptana.webserver.core.12 | 3 + .../.safetable/com.aptana.webserver.core.8 | 3 - .../.safetable/org.eclipse.core.resources | Bin 866 -> 908 bytes .../.settings/com.aptana.portal.ui.prefs | 2 +- .../.settings/com.aptana.theme.prefs | 2 +- .../.settings/org.eclipse.ui.ide.prefs | 2 +- .../.workspace/2015/1/2/refactorings.history | 3 + .../.workspace/2015/1/2/refactorings.index | 2 + .../dialog_settings.xml | 7 + .../org.eclipse.ui.ide/dialog_settings.xml | 22 +- .../dialog_settings.xml | 4 +- .../org.eclipse.ui.workbench/workbench.xml | 30 +- 0) | 1 - Gemfile | 261 +++++++++--------- app/models/bid.rb | 10 +- app/models/changeset.rb | 11 +- app/models/contest_notification.rb | 7 + app/models/document.rb | 8 +- app/models/forum.rb | 12 +- app/models/issue.rb | 6 + app/models/journals_for_message.rb | 8 +- app/models/memo.rb | 10 +- app/models/message.rb | 9 +- app/models/news.rb | 7 + app/models/project.rb | 11 +- app/views/welcome/index.html.erb | 23 +- config/environments/development.rb | 4 +- .../acts_as_event/lib/acts_as_event.rb | 1 + ...lesheets%2Fapplication.css%3F1420357855%3D | Bin 0 -> 2125 bytes ...calhost%3A3000%2Fimages%2Flist-icon.png%3F | Bin 0 -> 2009 bytes ...3A3000%2Fimages%2Flogo.png%3F1420357778%3D | Bin 0 -> 1987 bytes ...0%2Fstylesheets%2Fnyan.css%3F1420357855%3D | Bin 0 -> 2005 bytes ...%3A3000%2Fstylesheets%2Fapplication.css%3F | Bin 0 -> 2000 bytes public/cache/568/F80/views%2Fforums | 145 ++++++++++ ...mages%2Favatars%2FUser%2F0%3F1420357778%3D | Bin 0 -> 2001 bytes ...2Fimages%2Ftransparent.png%3F1420357778%3D | Bin 0 -> 2014 bytes ...2Fjavascripts%2Fwelcome.js%3F1420357855%3D | Bin 0 -> 2044 bytes public/cache/636/EF0/views%2Fprojects | 185 +++++++++++++ ...Fstylesheets%2Fwelcome.css%3F1420357855%3D | Bin 0 -> 2050 bytes public/cache/6CA/670/views%2Fissues%2F2210 | 22 ++ public/cache/6CB/680/views%2Fissues%2F2211 | 22 ++ public/cache/6D1/6D0/views%2Fissues%2F2208 | 22 ++ public/cache/6D2/6E0/views%2Fissues%2F2209 | 22 ++ ...es%2Favatars%2FProject%2F0%3F1420357778%3D | Bin 0 -> 2003 bytes public/cache/701/020/views%2Factivities | 127 +++++++++ public/cache/705/AF0/views%2Fprojects%2F2 | 21 ++ public/cache/73B/E90/views%2Fprojects%2F17 | 19 ++ public/cache/73D/EC0/views%2Fprojects%2F28 | 19 ++ public/cache/73E/ED0/views%2Fprojects%2F29 | 21 ++ public/cache/766/4C0/views%2Fprojects%2F300 | 19 ++ public/cache/769/520/views%2Fprojects%2F330 | 19 ++ public/cache/76B/500/views%2Fprojects%2F134 | 19 ++ public/cache/76C/530/views%2Fprojects%2F315 | 19 ++ public/cache/76E/5B0/views%2Fprojects%2F290 | 19 ++ public/cache/777/640/views%2Fprojects%2F299 | 19 ++ ...vascripts%2Fapplication.js%3F1420357855%3D | Bin 0 -> 2026 bytes public/cache/7AC/380/views%2Fjournals%2F5295 | 22 ++ public/cache/7AD/390/views%2Fjournals%2F5296 | 22 ++ public/cache/7AE/3A0/views%2Fjournals%2F5297 | 22 ++ public/cache/7AF/3B0/views%2Fjournals%2F5298 | 22 ++ .../800/views%2Fmemos%2F427-20150106032234 | 25 ++ .../A60/views%2Fmemos%2F427-20150106082740 | 25 ++ .../DB0/views%2Fmemos%2F582-20141129071403 | 25 ++ .../D00/views%2Fmemos%2F574-20141125104842 | 25 ++ .../E50/views%2Fmemos%2F565-20141128054331 | 25 ++ .../EF0/views%2Fmemos%2F576-20141126222236 | 25 ++ .../170/views%2Fmemos%2F579-20141127101435 | 23 ++ .../D30/views%2Fmemos%2F582-20150106082842 | 25 ++ .../320/views%2Fmemos%2F579-20150106082907 | 25 ++ .../cae6965b71862532cc646d5995119a5821980260 | Bin 0 -> 6735 bytes .../0906d39339d5f71e61207417e8c95f43c783442e | Bin 0 -> 3017 bytes ...s%2Fjquery.colorbox-min.js%3F1420357855%3D | Bin 0 -> 2059 bytes .../f06dd67d6627069f7f7215df57898d9b29c4b869 | Bin 0 -> 10539 bytes .../e8d35b3dc5255332a9a7f5c7d92c79635729fb41 | 25 ++ ...%2Fjquery.leanModal.min.js%3F1420357778%3D | Bin 0 -> 2062 bytes .../4cea7ff935690a5e00f53017e2452eee8a0e6254 | 232 ++++++++++++++++ .../60567173164aa1f75c0f9517835ebc2fd5eb0ec5 | Bin 0 -> 12051 bytes .../bbefbac7540e09e1955cb47321965813266c7a8e | 69 +++++ .../57a7c6d86d2ad09012bac99d46b38f9f33a970a8 | 6 + .../88eae75bf7b81a196ba38d86bf54e7162ab274c1 | Bin 0 -> 338091 bytes .../e9938e23e7a85ff3d431e045384ccd84dea93ce8 | Bin 0 -> 20153 bytes .../afc8c0ba867511cd69e8b5d43542aad5a2e716c6 | Bin 0 -> 37249 bytes .../213cd47b5ee47b691425e1fcb6dffb207c707d8c | Bin 0 -> 27657 bytes .../6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 | Bin 0 -> 41860 bytes ...uery%2Fjquery-ui-1.9.2.css%3F1420357855%3D | Bin 0 -> 2075 bytes ....8.3-ui-1.9.2-ujs-2.0.3.js%3F1420357855%3D | Bin 0 -> 2108 bytes .../0e09a16c714ce54739affa1a4e945aa699b4baae | Bin 0 -> 2979 bytes .../dd147f7301bf4217fcb61f9e99d343f4f6ffbb1a | Bin 0 -> 11948 bytes .../f743173130fefc074fc3faadc21911a5f8ed7eff | Bin 0 -> 84782 bytes .../0917fc42cb8dfbd8bc5add2088e60feb41c28e0f | Bin 0 -> 4321 bytes ...eems_rateable%2FjRating.js%3F1420357855%3D | Bin 0 -> 2104 bytes ...ems_rateable%2Frateable.js%3F1420357855%3D | Bin 0 -> 2108 bytes 104 files changed, 1788 insertions(+), 211 deletions(-) rename .metadata/.plugins/com.aptana.core.io/{connections.9 => connections.15} (72%) rename .metadata/.plugins/com.aptana.syncing.core/{defaultConnection.9 => defaultConnection.15} (62%) rename .metadata/.plugins/com.aptana.syncing.core/{sites.9 => sites.15} (81%) rename .metadata/.plugins/com.aptana.webserver.core/{webservers.8 => webservers.12} (92%) rename .metadata/.plugins/org.eclipse.core.resources/{.root/2.tree => .projects/demo/6.tree} (95%) create mode 100644 .metadata/.plugins/org.eclipse.core.resources/.root/4.tree create mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.15 delete mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.9 create mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.15 delete mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.9 create mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.12 delete mode 100644 .metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.8 create mode 100644 .metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/1/2/refactorings.history create mode 100644 .metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/1/2/refactorings.index create mode 100644 .metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml delete mode 100644 0) create mode 100644 public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D create mode 100644 public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F create mode 100644 public/cache/2D3/CC1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flogo.png%3F1420357778%3D create mode 100644 public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D create mode 100644 public/cache/559/261/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fapplication.css%3F create mode 100644 public/cache/568/F80/views%2Fforums create mode 100644 public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D create mode 100644 public/cache/5D4/CE1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Ftransparent.png%3F1420357778%3D create mode 100644 public/cache/5D6/771/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fwelcome.js%3F1420357855%3D create mode 100644 public/cache/636/EF0/views%2Fprojects create mode 100644 public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D create mode 100644 public/cache/6CA/670/views%2Fissues%2F2210 create mode 100644 public/cache/6CB/680/views%2Fissues%2F2211 create mode 100644 public/cache/6D1/6D0/views%2Fissues%2F2208 create mode 100644 public/cache/6D2/6E0/views%2Fissues%2F2209 create mode 100644 public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D create mode 100644 public/cache/701/020/views%2Factivities create mode 100644 public/cache/705/AF0/views%2Fprojects%2F2 create mode 100644 public/cache/73B/E90/views%2Fprojects%2F17 create mode 100644 public/cache/73D/EC0/views%2Fprojects%2F28 create mode 100644 public/cache/73E/ED0/views%2Fprojects%2F29 create mode 100644 public/cache/766/4C0/views%2Fprojects%2F300 create mode 100644 public/cache/769/520/views%2Fprojects%2F330 create mode 100644 public/cache/76B/500/views%2Fprojects%2F134 create mode 100644 public/cache/76C/530/views%2Fprojects%2F315 create mode 100644 public/cache/76E/5B0/views%2Fprojects%2F290 create mode 100644 public/cache/777/640/views%2Fprojects%2F299 create mode 100644 public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D create mode 100644 public/cache/7AC/380/views%2Fjournals%2F5295 create mode 100644 public/cache/7AD/390/views%2Fjournals%2F5296 create mode 100644 public/cache/7AE/3A0/views%2Fjournals%2F5297 create mode 100644 public/cache/7AF/3B0/views%2Fjournals%2F5298 create mode 100644 public/cache/911/800/views%2Fmemos%2F427-20150106032234 create mode 100644 public/cache/918/A60/views%2Fmemos%2F427-20150106082740 create mode 100644 public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 create mode 100644 public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 create mode 100644 public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 create mode 100644 public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 create mode 100644 public/cache/91C/170/views%2Fmemos%2F579-20141127101435 create mode 100644 public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 create mode 100644 public/cache/925/320/views%2Fmemos%2F579-20150106082907 create mode 100644 public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 create mode 100644 public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e create mode 100644 public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D create mode 100644 public/cache/A95/AE0/f06dd67d6627069f7f7215df57898d9b29c4b869 create mode 100644 public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 create mode 100644 public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D create mode 100644 public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 create mode 100644 public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 create mode 100644 public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e create mode 100644 public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 create mode 100644 public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 create mode 100644 public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 create mode 100644 public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 create mode 100644 public/cache/B54/AB0/213cd47b5ee47b691425e1fcb6dffb207c707d8c create mode 100644 public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 create mode 100644 public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D create mode 100644 public/cache/B7C/511/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery-1.8.3-ui-1.9.2-ujs-2.0.3.js%3F1420357855%3D create mode 100644 public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae create mode 100644 public/cache/B8A/F50/dd147f7301bf4217fcb61f9e99d343f4f6ffbb1a create mode 100644 public/cache/BB1/DF0/f743173130fefc074fc3faadc21911a5f8ed7eff create mode 100644 public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f create mode 100644 public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D create mode 100644 public/cache/C83/011/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2Frateable.js%3F1420357855%3D diff --git a/.metadata/.log b/.metadata/.log index 0cb16378c..fbbe00cbe 100644 --- a/.metadata/.log +++ b/.metadata/.log @@ -209,3 +209,111 @@ java.lang.UnsupportedOperationException: Not supported yet. at com.aptana.index.core.IndexRequestJob.indexFileStores(IndexRequestJob.java:205) at com.aptana.index.core.IndexContainerJob.run(IndexContainerJob.java:114) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) +!SESSION 2015-01-05 10:21:34.093 ----------------------------------------------- +eclipse.buildId=unknown +java.version=1.6.0_24 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=zh_CN +Command-line arguments: -os win32 -ws win32 -arch x86 + +!ENTRY org.eclipse.core.resources 4 567 2015-01-05 10:21:56.435 +!MESSAGE Workspace restored, but some problems occurred. +!SUBENTRY 1 org.eclipse.core.resources 4 567 2015-01-05 10:21:56.435 +!MESSAGE Could not read metadata for 'demo'. +!STACK 1 +org.eclipse.core.internal.resources.ResourceException: The project description file (.project) for 'demo' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:851) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:874) + at org.eclipse.core.internal.resources.SaveManager.restoreMetaInfo(SaveManager.java:854) + at org.eclipse.core.internal.resources.SaveManager.restore(SaveManager.java:703) + at org.eclipse.core.internal.resources.SaveManager.startup(SaveManager.java:1528) + at org.eclipse.core.internal.resources.Workspace.startup(Workspace.java:2503) + at org.eclipse.core.internal.resources.Workspace.open(Workspace.java:2251) + at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:439) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) + at java.security.AccessController.doPrivileged(Native Method) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) + at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) + at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) + at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299) + at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440) + at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268) + at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) + at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:463) + at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) + at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400) + at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:35) + at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:473) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429) + at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417) + at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) + at java.lang.ClassLoader.loadClass(Unknown Source) + at com.aptana.rcp.IDEApplication.start(IDEApplication.java:125) + at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) + at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344) + at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) + at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) + at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) + at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) + at java.lang.reflect.Method.invoke(Unknown Source) + at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622) + at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577) + at org.eclipse.equinox.launcher.Main.run(Main.java:1410) +!SUBENTRY 2 org.eclipse.core.resources 4 567 2015-01-05 10:21:56.435 +!MESSAGE The project description file (.project) for 'demo' is missing. This file contains important information about the project. The project will not function properly until this file is restored. + +!ENTRY com.aptana.terminal 1 0 2015-01-05 10:22:03.546 +!MESSAGE Starting terminal process failed. +!STACK 1 +org.eclipse.core.runtime.CoreException: Shell executable could not be found. + at com.aptana.core.ShellExecutable.getPath(ShellExecutable.java:113) + at com.aptana.terminal.internal.configurations.WindowsMingwConfiguration.getCommandLine(WindowsMingwConfiguration.java:40) + at com.aptana.terminal.internal.ProcessLauncher.launch(ProcessLauncher.java:38) + at com.aptana.terminal.connector.LocalTerminalConnector.startProcess(LocalTerminalConnector.java:220) + at com.aptana.terminal.connector.LocalTerminalConnector.access$0(LocalTerminalConnector.java:208) + at com.aptana.terminal.connector.LocalTerminalConnector$1.run(LocalTerminalConnector.java:102) +!SUBENTRY 1 com.aptana.core 4 0 2015-01-05 10:22:03.546 +!MESSAGE Shell executable could not be found. + +!ENTRY org.eclipse.core.jobs 2 2 2015-01-05 10:27:30.988 +!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.tm.internal.terminal.emulator.VT100TerminalControl$1 + +!ENTRY org.eclipse.core.jobs 2 2 2015-01-05 10:27:30.989 +!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: com.aptana.usage.internal.DefaultAnalyticsEventHandler$1 +!SESSION 2015-01-05 10:27:31.720 ----------------------------------------------- +eclipse.buildId=3.4.2.201308081805 +java.version=1.6.0_24 +java.vendor=Sun Microsystems Inc. +BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=zh_CN +Command-line arguments: -os win32 -ws win32 -arch x86 + +!ENTRY com.aptana.terminal 1 0 2015-01-05 10:27:34.915 +!MESSAGE Starting terminal process failed. +!STACK 1 +org.eclipse.core.runtime.CoreException: Shell executable could not be found. + at com.aptana.core.ShellExecutable.getPath(ShellExecutable.java:113) + at com.aptana.terminal.internal.configurations.WindowsMingwConfiguration.getCommandLine(WindowsMingwConfiguration.java:40) + at com.aptana.terminal.internal.ProcessLauncher.launch(ProcessLauncher.java:38) + at com.aptana.terminal.connector.LocalTerminalConnector.startProcess(LocalTerminalConnector.java:220) + at com.aptana.terminal.connector.LocalTerminalConnector.access$0(LocalTerminalConnector.java:208) + at com.aptana.terminal.connector.LocalTerminalConnector$1.run(LocalTerminalConnector.java:102) +!SUBENTRY 1 com.aptana.core 4 0 2015-01-05 10:27:34.915 +!MESSAGE Shell executable could not be found. + +!ENTRY com.aptana.terminal 1 0 2015-01-05 10:27:37.984 +!MESSAGE Starting terminal process failed. +!STACK 1 +org.eclipse.core.runtime.CoreException: Shell executable could not be found. + at com.aptana.core.ShellExecutable.getPath(ShellExecutable.java:113) + at com.aptana.terminal.internal.configurations.WindowsMingwConfiguration.getCommandLine(WindowsMingwConfiguration.java:40) + at com.aptana.terminal.internal.ProcessLauncher.launch(ProcessLauncher.java:38) + at com.aptana.terminal.connector.LocalTerminalConnector.startProcess(LocalTerminalConnector.java:220) + at com.aptana.terminal.connector.LocalTerminalConnector.access$0(LocalTerminalConnector.java:208) + at com.aptana.terminal.connector.LocalTerminalConnector$1.run(LocalTerminalConnector.java:102) +!SUBENTRY 1 com.aptana.core 4 0 2015-01-05 10:27:37.984 +!MESSAGE Shell executable could not be found. + +!ENTRY org.eclipse.core.jobs 2 2 2015-01-05 10:27:55.438 +!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.tm.internal.terminal.emulator.VT100TerminalControl$1 diff --git a/.metadata/.plugins/com.aptana.core.io/connections.9 b/.metadata/.plugins/com.aptana.core.io/connections.15 similarity index 72% rename from .metadata/.plugins/com.aptana.core.io/connections.9 rename to .metadata/.plugins/com.aptana.core.io/connections.15 index 4371c4759..46f15223a 100644 --- a/.metadata/.plugins/com.aptana.core.io/connections.9 +++ b/.metadata/.plugins/com.aptana.core.io/connections.15 @@ -1,2 +1,2 @@ - + \ No newline at end of file diff --git a/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.9 b/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.15 similarity index 62% rename from .metadata/.plugins/com.aptana.syncing.core/defaultConnection.9 rename to .metadata/.plugins/com.aptana.syncing.core/defaultConnection.15 index 375897785..7f1a49fed 100644 --- a/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.9 +++ b/.metadata/.plugins/com.aptana.syncing.core/defaultConnection.15 @@ -1,7 +1,7 @@ - - - -Default -file:/C:/Users/nudt - + + + +Default +file:/C:/Users/Administrator + \ No newline at end of file diff --git a/.metadata/.plugins/com.aptana.syncing.core/sites.9 b/.metadata/.plugins/com.aptana.syncing.core/sites.15 similarity index 81% rename from .metadata/.plugins/com.aptana.syncing.core/sites.9 rename to .metadata/.plugins/com.aptana.syncing.core/sites.15 index d9b475695..dc24d7a57 100644 --- a/.metadata/.plugins/com.aptana.syncing.core/sites.9 +++ b/.metadata/.plugins/com.aptana.syncing.core/sites.15 @@ -1,2 +1,2 @@ - + \ No newline at end of file diff --git a/.metadata/.plugins/com.aptana.webserver.core/webservers.8 b/.metadata/.plugins/com.aptana.webserver.core/webservers.12 similarity index 92% rename from .metadata/.plugins/com.aptana.webserver.core/webservers.8 rename to .metadata/.plugins/com.aptana.webserver.core/webservers.12 index 5c07542b1..2979c56a7 100644 --- a/.metadata/.plugins/com.aptana.webserver.core/webservers.8 +++ b/.metadata/.plugins/com.aptana.webserver.core/webservers.12 @@ -1,6 +1,6 @@ - - - -demo - + + + +demo + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/2.tree b/.metadata/.plugins/org.eclipse.core.resources/.projects/demo/6.tree similarity index 95% rename from .metadata/.plugins/org.eclipse.core.resources/.root/2.tree rename to .metadata/.plugins/org.eclipse.core.resources/.projects/demo/6.tree index 5b2529389243f247a5e2c6f799eb40d3d01d5bfa..215d06c77a1d8bb9bd121ea677fc75348036022d 100644 GIT binary patch delta 23 acmaE=+Na9N!py|P00fL1BN~NRKr8?>&;xS- delta 110 zcmeBEeX1J4!py|P00G%h8XLvPz><=ho6n$>oS&nwOcD dnVRBMnwgW5S_IP0$h48OQHX~T$O2+8005dS5~%x$ delta 22 dcmd1Em|(+bG|^U`$Jo-u)X2=(+{nbp6aYh?1w8-& diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/4.tree b/.metadata/.plugins/org.eclipse.core.resources/.root/4.tree new file mode 100644 index 0000000000000000000000000000000000000000..942a97c51c5361c1dcf3226e7dccf9f1ed93bd2b GIT binary patch literal 94 zcmZQ!W@2Ih1EzBj8av6z$iN7c0a7d}sk!+e4vP?w@3JBJ>k+6H77+a(3cz9jF literal 0 HcmV?d00001 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.15 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.15 new file mode 100644 index 000000000..971c3ef7e --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.15 @@ -0,0 +1,3 @@ +#safe table +#Mon Jan 05 10:27:54 CST 2015 +connections=connections.15 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.9 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.9 deleted file mode 100644 index 0b4ef3b47..000000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.core.io.9 +++ /dev/null @@ -1,3 +0,0 @@ -#safe table -#Tue Mar 11 17:27:27 CST 2014 -connections=connections.9 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.15 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.15 new file mode 100644 index 000000000..01bf076fe --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.15 @@ -0,0 +1,4 @@ +#safe table +#Mon Jan 05 10:27:54 CST 2015 +defaultConnection=defaultConnection.15 +sites=sites.15 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.9 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.9 deleted file mode 100644 index 371e94161..000000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.syncing.core.9 +++ /dev/null @@ -1,4 +0,0 @@ -#safe table -#Tue Mar 11 17:27:27 CST 2014 -defaultConnection=defaultConnection.9 -sites=sites.9 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.12 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.12 new file mode 100644 index 000000000..26cede301 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.12 @@ -0,0 +1,3 @@ +#safe table +#Mon Jan 05 10:27:28 CST 2015 +webservers=webservers.12 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.8 b/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.8 deleted file mode 100644 index 1af4b85d6..000000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.safetable/com.aptana.webserver.core.8 +++ /dev/null @@ -1,3 +0,0 @@ -#safe table -#Tue Mar 11 17:27:27 CST 2014 -webservers=webservers.8 diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources index b3b591e284d378d05220aa1d474a6235416d77f8..de5f19a7c6b8129e072d20a4e6511eb094f80a19 100644 GIT binary patch delta 200 zcmaFF*26wQLB=;fPr)lOPr<-c!O+0U$lS`*M8P>YM8U|w&~&1W`easSp^0;ZCYv&) zFq%vjV3e4|$j@YG1Z1fS8k+EO>8GUT=IiT~6s4xxnoYEkn8fVQWN0#Z4x + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/1/2/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/1/2/refactorings.index new file mode 100644 index 000000000..d5428a792 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/1/2/refactorings.index @@ -0,0 +1,2 @@ +1420424676858 Delete resource 'trustie2' +1420424775104 Delete resource 'trustie2' diff --git a/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml new file mode 100644 index 000000000..27eb4040f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml @@ -0,0 +1,7 @@ + +
+
+ + +
+
diff --git a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml index 4868ecd96..09856e2e7 100644 --- a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml +++ b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml @@ -1,14 +1,26 @@
- - - - + + + + - + +
+ + +
+
+ + +
+
+ + +
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml index f7e4d66f0..c8c1e4f77 100644 --- a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml +++ b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml @@ -1,7 +1,9 @@
+
+
- + diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml index 88eaacee1..3467fd0f7 100644 --- a/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml +++ b/.metadata/.plugins/org.eclipse.ui.workbench/workbench.xml @@ -1,5 +1,5 @@ - + @@ -8,14 +8,14 @@ - + - - - + + + - + @@ -37,7 +37,7 @@ demo -E:\code\demo +C:\Users\Administrator @@ -46,7 +46,7 @@ Terminal -C:\Users\nudt +C:\Users\Administrator @@ -66,19 +66,13 @@ - - - - - - - + - + @@ -150,7 +144,7 @@ - + @@ -166,7 +160,7 @@ - + diff --git a/0) b/0) deleted file mode 100644 index 70d77d63e..000000000 --- a/0) +++ /dev/null @@ -1 +0,0 @@ -终止批处理操作吗(Y/N)? 终止批处理操作吗(Y/N)? 终止批处理操作吗(Y/N)? 终止批处理操作吗(Y/N)? \ No newline at end of file diff --git a/Gemfile b/Gemfile index f462133c3..318b8dcf0 100644 --- a/Gemfile +++ b/Gemfile @@ -1,136 +1,125 @@ -source 'http://ruby.taobao.org' -#source 'http://ruby.sdutlinux.org/' - -unless RUBY_PLATFORM =~ /w32/ - # unix-like only - gem 'iconv' - gem 'rubyzip' - gem 'zip-zip' -end - -gem 'seems_rateable', path: 'lib/seems_rateable' -gem "rails", "3.2.13" -gem "jquery-rails", "~> 2.0.2" -gem "i18n", "~> 0.6.0" -gem "coderay", "~> 1.0.6" -gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby] -gem "builder", "3.0.0" -gem 'acts-as-taggable-on', '2.4.1' -gem 'spreadsheet' -gem 'ruby-ole' - -group :development do - gem 'better_errors', path: 'lib/better_errors' - gem 'rack-mini-profiler', path: 'lib/rack-mini-profiler' -end - -group :test do - gem "shoulda", "~> 3.5.0" - gem "mocha", "~> 1.1.0" - gem 'capybara', '~> 2.4.1' - gem 'nokogiri', '~> 1.6.3' - gem 'factory_girl', '~> 4.4.0' - gem 'selenium-webdriver', '~> 2.42.0' - - - platforms :mri, :mingw do - group :rmagick do - # RMagick 2 supports ruby 1.9 - # RMagick 1 would be fine for ruby 1.8 but Bundler does not support - # different requirements for the same gem on different platforms - gem "rmagick", ">= 2.0.0" - end - end -end - -group :development, :test do - gem "guard-rails", '~> 0.5.3' - gem 'spork-testunit', '~> 0.0.8' - gem 'guard-spork', '~> 1.5.1' - gem 'guard-test', '~> 1.0.0' - gem 'ruby-prof', '~> 0.15.1' unless RUBY_PLATFORM =~ /w32/ - gem 'pry' - gem 'pry-nav' - -end - - -# Gems used only for assets and not required -# in production environments by default. -group :assets do - gem 'sass-rails', '~> 3.2.3' - gem 'coffee-rails', '~> 3.2.1' - - # See https://github.com/sstephenson/execjs#readme for more supported runtimes - gem 'therubyracer', :platforms => :ruby - - gem 'uglifier', '>= 1.0.3' -end - -# Optional gem for LDAP authentication -group :ldap do - gem "net-ldap", "~> 0.3.1" -end - - -# Optional gem for OpenID authentication -group :openid do - gem "ruby-openid", "~> 2.1.4", :require => "openid" - gem "rack-openid" -end - -# Optional gem for exporting the gantt to a PNG file, not supported with jruby -platforms :jruby do - # jruby-openssl is bundled with JRuby 1.7.0 - gem "jruby-openssl" if Object.const_defined?(:JRUBY_VERSION) && JRUBY_VERSION < '1.7.0' - gem "activerecord-jdbc-adapter", "1.2.5" -end - -# Include database gems for the adapters found in the database -# configuration file -require 'erb' -require 'yaml' -database_file = File.join(File.dirname(__FILE__), "config/database.yml") -if File.exist?(database_file) - database_config = YAML::load(ERB.new(IO.read(database_file)).result) - adapters = database_config.values.map {|c| c['adapter']}.compact.uniq - if adapters.any? - adapters.each do |adapter| - case adapter - when 'mysql2' - gem "mysql2", "= 0.3.11", :platforms => [:mri, :mingw] - gem "activerecord-jdbcmysql-adapter", :platforms => :jruby - when 'mysql' - gem "mysql", "~> 2.8.1", :platforms => [:mri, :mingw] - gem "activerecord-jdbcmysql-adapter", :platforms => :jruby - when /postgresql/ - gem "pg", ">= 0.11.0", :platforms => [:mri, :mingw] - gem "activerecord-jdbcpostgresql-adapter", :platforms => :jruby - when /sqlite3/ - gem "sqlite3", :platforms => [:mri, :mingw] - gem "activerecord-jdbcsqlite3-adapter", :platforms => :jruby - when /sqlserver/ - gem "tiny_tds", "~> 0.5.1", :platforms => [:mri, :mingw] - gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw] - else - warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems") - end - end - else - warn("No adapter found in config/database.yml, please configure it first") - end -else - warn("Please configure your config/database.yml first") -end - -local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local") -if File.exists?(local_gemfile) - puts "Loading Gemfile.local ..." if $DEBUG # `ruby -d` or `bundle -v` - instance_eval File.read(local_gemfile) -end - -# Load plugins' Gemfiles -Dir.glob File.expand_path("../plugins/*/Gemfile", __FILE__) do |file| - puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v` - instance_eval File.read(file) -end +source 'https://rubygems.org' + +unless RUBY_PLATFORM =~ /w32/ + # unix-like only + gem 'iconv' + gem 'rubyzip' + gem 'zip-zip' +end + +gem 'seems_rateable', path: 'lib/seems_rateable' +gem "rails", "3.2.13" +gem "jquery-rails", "~> 2.0.2" +gem "i18n", "~> 0.6.0" +gem "coderay", "~> 1.0.6" +gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby] +gem "builder", "3.0.0" +gem 'acts-as-taggable-on', '2.4.1' + +group :development do + gem 'better_errors', path: 'lib/better_errors' + gem 'rack-mini-profiler', path: 'lib/rack-mini-profiler' + if ENV['PRY'] + gem 'pry' + gem 'pry-nav' + end +end + +# group :test do +# # shoulda鐨勭増鏈仛浜嗘敼鍔 +# #gem "shoulda", "~> 3.3.2" +# gem "shoulda", "> 3.3.2" +# gem "mocha", "~> 0.13.3" +# gem 'capybara', '~> 2.0.0' +# gem 'nokogiri', '< 1.6.0' +# end + + +# Gems used only for assets and not required +# in production environments by default. +group :assets do + gem 'sass-rails', '~> 3.2.3' + gem 'coffee-rails', '~> 3.2.1' + + # See https://github.com/sstephenson/execjs#readme for more supported runtimes + gem 'therubyracer', :platforms => :ruby + + gem 'uglifier', '>= 1.0.3' +end + +# Optional gem for LDAP authentication +group :ldap do + gem "net-ldap", "~> 0.3.1" +end + + +# platforms :mri, :mingw do +# group :rmagick do +# # RMagick 2 supports ruby 1.9 +# # RMagick 1 would be fine for ruby 1.8 but Bundler does not support +# # different requirements for the same gem on different platforms +# gem "rmagick", ">= 2.0.0" +# end +# end + +# Optional gem for OpenID authentication +group :openid do + gem "ruby-openid", "~> 2.1.4", :require => "openid" + gem "rack-openid" +end + +# Optional gem for exporting the gantt to a PNG file, not supported with jruby +platforms :jruby do + # jruby-openssl is bundled with JRuby 1.7.0 + gem "jruby-openssl" if Object.const_defined?(:JRUBY_VERSION) && JRUBY_VERSION < '1.7.0' + gem "activerecord-jdbc-adapter", "1.2.5" +end + +# Include database gems for the adapters found in the database +# configuration file +require 'erb' +require 'yaml' +database_file = File.join(File.dirname(__FILE__), "config/database.yml") +if File.exist?(database_file) + database_config = YAML::load(ERB.new(IO.read(database_file)).result) + adapters = database_config.values.map {|c| c['adapter']}.compact.uniq + if adapters.any? + adapters.each do |adapter| + case adapter + when 'mysql2' + gem "mysql2", "= 0.3.11", :platforms => [:mri, :mingw] + gem "activerecord-jdbcmysql-adapter", :platforms => :jruby + when 'mysql' + gem "mysql", "~> 2.8.1", :platforms => [:mri, :mingw] + gem "activerecord-jdbcmysql-adapter", :platforms => :jruby + when /postgresql/ + gem "pg", ">= 0.11.0", :platforms => [:mri, :mingw] + gem "activerecord-jdbcpostgresql-adapter", :platforms => :jruby + when /sqlite3/ + gem "sqlite3", :platforms => [:mri, :mingw] + gem "activerecord-jdbcsqlite3-adapter", :platforms => :jruby + when /sqlserver/ + gem "tiny_tds", "~> 0.5.1", :platforms => [:mri, :mingw] + gem "activerecord-sqlserver-adapter", :platforms => [:mri, :mingw] + else + warn("Unknown database adapter `#{adapter}` found in config/database.yml, use Gemfile.local to load your own database gems") + end + end + else + warn("No adapter found in config/database.yml, please configure it first") + end +else + warn("Please configure your config/database.yml first") +end + +local_gemfile = File.join(File.dirname(__FILE__), "Gemfile.local") +if File.exists?(local_gemfile) + puts "Loading Gemfile.local ..." if $DEBUG # `ruby -d` or `bundle -v` + instance_eval File.read(local_gemfile) +end + +# Load plugins' Gemfiles +Dir.glob File.expand_path("../plugins/*/Gemfile", __FILE__) do |file| + puts "Loading #{file} ..." if $DEBUG # `ruby -d` or `bundle -v` + instance_eval File.read(file) +end diff --git a/app/models/bid.rb b/app/models/bid.rb index 88014477b..3f21c451f 100644 --- a/app/models/bid.rb +++ b/app/models/bid.rb @@ -32,7 +32,11 @@ class Bid < ActiveRecord::Base has_many :join_in_contests, :dependent => :destroy has_many :praise_tread, as: :praise_tread_object, dependent: :destroy # has_many :fork_homework, :class_name => 'Bid', :conditions => "#{Bid.table_name}.parent_id = #{id}" - + + + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache acts_as_attachable @@ -149,4 +153,8 @@ class Bid < ActiveRecord::Base end end end + + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/changeset.rb b/app/models/changeset.rb index e05a7d2da..5f3f2e03d 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -64,8 +64,9 @@ class Changeset < ActiveRecord::Base includes(:repository => :project).where(Project.allowed_to_condition(args.shift || User.current, :view_changesets, *args)) } - after_create :scan_for_issues,:refresh_changests#:be_user_score # user_score - after_update :be_user_score + after_create :scan_for_issues,:refresh_changests,:expire_cache#:be_user_score # user_score + after_update :be_user_score,:expire_cache + before_destroy :expire_cache after_destroy :down_user_score before_create :before_create_cs @@ -328,5 +329,9 @@ class Changeset < ActiveRecord::Base self.repository.fetch_changesets if Setting.autofetch_changesets? end end - + #added by lizanle + #璁剧疆娲诲姩杩囨湡 + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/contest_notification.rb b/app/models/contest_notification.rb index 1613f1378..cc23cffe0 100644 --- a/app/models/contest_notification.rb +++ b/app/models/contest_notification.rb @@ -1,4 +1,11 @@ class ContestNotification < ActiveRecord::Base attr_accessible :content, :title validates :title, length: {maximum: 30} + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache + + def expire_cache + ActionController::Base.new.expire_fragment('forums') + end end diff --git a/app/models/document.rb b/app/models/document.rb index 7c2fa5a6d..29a761827 100644 --- a/app/models/document.rb +++ b/app/models/document.rb @@ -23,7 +23,9 @@ class Document < ActiveRecord::Base include UserScoreHelper after_save :be_user_score # user_score after_destroy :down_user_score - + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache acts_as_attachable :delete_permission => :delete_documents acts_as_searchable :columns => ['title', "#{table_name}.description"], :include => :project @@ -76,4 +78,8 @@ class Document < ActiveRecord::Base update_document(self.user,1) update_document(self.user,2,self.project) end + + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/forum.rb b/app/models/forum.rb index 61ba528a0..2157e638d 100644 --- a/app/models/forum.rb +++ b/app/models/forum.rb @@ -2,7 +2,11 @@ class Forum < ActiveRecord::Base include Redmine::SafeAttributes has_many :topics, :class_name => 'Memo', :conditions => "#{Memo.table_name}.parent_id IS NULL", :order => "#{Memo.table_name}.created_at DESC", :dependent => :destroy has_many :memos, :dependent => :destroy, conditions: "parent_id IS NULL" - belongs_to :creator, :class_name => "User", :foreign_key => 'creator_id' + belongs_to :creator, :class_name => "User", :foreign_key => 'creator_id' + + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache safe_attributes 'name', 'description', 'topic_count', @@ -40,5 +44,9 @@ class Forum < ActiveRecord::Base " memo_count = (SELECT COUNT(*) FROM #{Memo.table_name} WHERE forum_id=#{forum_id} AND parent_id IS NOT NULL)," + " last_memo_id = (SELECT MAX(id) FROM #{Memo.table_name} WHERE forum_id=#{forum_id})", ["id = ?", forum_id]) - end + end + + def expire_cache + ActionController::Base.new.expire_fragment('forums') + end end diff --git a/app/models/issue.rb b/app/models/issue.rb index 4dc685b3b..17ef7b577 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -80,6 +80,9 @@ class Issue < ActiveRecord::Base after_create :act_as_activity,:be_user_score_new_issue after_update :be_user_score after_destroy :down_user_score + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache # after_create :be_user_score # end @@ -1552,5 +1555,8 @@ class Issue < ActiveRecord::Base end + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/journals_for_message.rb b/app/models/journals_for_message.rb index 4819cd253..720b0d914 100644 --- a/app/models/journals_for_message.rb +++ b/app/models/journals_for_message.rb @@ -54,7 +54,9 @@ class JournalsForMessage < ActiveRecord::Base has_many :acts, :class_name => 'Activity', :as => :act, :dependent => :destroy validates :notes, presence: true - after_create :act_as_activity #huang + after_create :act_as_activity ,:expire_cache#huang + after_update :expire_cache + before_destroy :expire_cache after_create :reset_counters! after_destroy :reset_counters! after_save :be_user_score @@ -162,4 +164,8 @@ class JournalsForMessage < ActiveRecord::Base end end end + + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/memo.rb b/app/models/memo.rb index cfc509923..491f4e4a1 100644 --- a/app/models/memo.rb +++ b/app/models/memo.rb @@ -2,8 +2,11 @@ class Memo < ActiveRecord::Base include Redmine::SafeAttributes include UserScoreHelper belongs_to :forum - belongs_to :author, :class_name => "User", :foreign_key => 'author_id' + belongs_to :author, :class_name => "User", :foreign_key => 'author_id' + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache validates_presence_of :author_id, :forum_id, :subject,:content # 鑻ユ槸涓婚甯栵紝鍒欏唴瀹瑰彲浠ユ槸绌 #validates :content, presence: true, if: Proc.new{|o| !o.parent_id.nil? } @@ -164,5 +167,8 @@ class Memo < ActiveRecord::Base update_memo_number(User.current,1) update_replay_for_memo(User.current,1) end - + def expire_cache + ActionController::Base.new.expire_fragment('forums') + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/message.rb b/app/models/message.rb index 8af3265cc..21f34add2 100644 --- a/app/models/message.rb +++ b/app/models/message.rb @@ -59,8 +59,9 @@ class Message < ActiveRecord::Base validates_length_of :subject, :maximum => 255 validate :cannot_reply_to_locked_topic, :on => :create - after_create :add_author_as_watcher, :reset_counters! - after_update :update_messages_board + after_create :add_author_as_watcher, :reset_counters!,:expire_cache + after_update :update_messages_board,:expire_cache + before_destroy :expire_cache after_destroy :reset_counters!,:down_user_score # fq @@ -195,4 +196,8 @@ class Message < ActiveRecord::Base end end end + + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/news.rb b/app/models/news.rb index 4d153e81f..6567c4028 100644 --- a/app/models/news.rb +++ b/app/models/news.rb @@ -47,6 +47,9 @@ class News < ActiveRecord::Base # fq after_create :act_as_activity # end + after_create :expire_cache + after_update :expire_cache + before_destroy :expire_cache scope :visible, lambda {|*args| includes(:project).where(Project.allowed_to_condition(args.shift || User.current, :view_news, *args)) @@ -91,4 +94,8 @@ class News < ActiveRecord::Base def act_as_activity self.acts << Activity.new(:user_id => self.author_id) end + + def expire_cache + ActionController::Base.new.expire_fragment('activities') + end end diff --git a/app/models/project.rb b/app/models/project.rb index 14763347f..aa24eb96d 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -127,8 +127,9 @@ class Project < ActiveRecord::Base #after_save :update_position_under_parent, :if => Proc.new {|project| project.name_changed?} after_save :update_inherited_members, :if => Proc.new {|project| project.inherit_members_changed?} # 鍒涘缓project涔嬪悗榛樿鍒涘缓涓涓猙oard锛屼箣鍚庣殑board鍘绘帀浜哹oard鐨勬蹇 - after_create :create_board_sync - before_destroy :delete_all_members + after_create :create_board_sync,:expire_cache + after_update :expire_cache + before_destroy :delete_all_members,:expire_cache def remove_references_before_destroy return if self.id.nil? Watcher.delete_all ['watchable_id = ?', id] @@ -1148,7 +1149,9 @@ class Project < ActiveRecord::Base logger.error "[Project Model] ===> Auto create board when Project saved, because #{@board.full_messages}" end end - - + + def expire_cache + ActionController::Base.new.expire_fragment('projects') + end end diff --git a/app/views/welcome/index.html.erb b/app/views/welcome/index.html.erb index 4dd58641b..11a7f44fa 100644 --- a/app/views/welcome/index.html.erb +++ b/app/views/welcome/index.html.erb @@ -70,7 +70,9 @@
    + <% cache("projects") do %> <% @projects.map do |project| %> + <% cache project do %>
  • <%= image_tag(get_project_avatar(project), :class => "avatar-4") %> @@ -98,8 +100,9 @@ :id => "tooltip-#{project.id}" %>
  • - + <% end %> <% end; reset_cycle %> + <% end %>
@@ -112,8 +115,10 @@
+ <% cache("activities") do %> <%activities = find_all_activities%> <% activities.each do |event| %> + <% cache event do %>
  • <%= image_tag url_to_avatar(event.event_author), :class => "avatar-3" %> @@ -127,7 +132,7 @@

    <%= l(:field_updated_on) %> - <%= time_tag_welcome event.event_datetime %>鍓 + <%= format_time event.event_datetime %>       @@ -136,7 +141,9 @@

  • + <% end %> <% end %> + <% end %>
    @@ -157,9 +164,10 @@
    + <% cache("forums") do %> <% topics = find_new_forum_topics(6) %> <% topics.includes(:forum, :last_reply, :author).each do |topic|%> - + <% cache topic do %>
  • <%= link_to '['+topic.forum.name + ']',forum_path(topic.forum),:class => 'memo_Bar_title' %> @@ -167,7 +175,9 @@
    - <%= "#{l(:label_updated_time, value: time_tag_welcome(topic_last_time topic))}".html_safe %> + <%#= "#{l(:field_updated_on, value: format_time(topic_last_time topic))}" %> + <%= l(:field_updated_on) %> + <%= format_time topic_last_time topic %> <%= l(:label_question_sponsor)%>锛 @@ -185,8 +195,9 @@
  • - - <% end %> + <%end %> + <% end %> + <% end %>
    diff --git a/config/environments/development.rb b/config/environments/development.rb index 9d3cbf244..869e9a9a6 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -10,8 +10,8 @@ RedmineApp::Application.configure do # Show full error reports and disable caching config.consider_all_requests_local = true - config.action_controller.perform_caching = false - + config.action_controller.perform_caching = true + config.cache_store = :file_store, "#{Rails.root }/public/cache/" # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = false diff --git a/lib/plugins/acts_as_event/lib/acts_as_event.rb b/lib/plugins/acts_as_event/lib/acts_as_event.rb index e323c2b3e..42673cde7 100644 --- a/lib/plugins/acts_as_event/lib/acts_as_event.rb +++ b/lib/plugins/acts_as_event/lib/acts_as_event.rb @@ -43,6 +43,7 @@ module Redmine base.extend ClassMethods end + %w(datetime title description author type).each do |attr| src = <<-END_SRC def event_#{attr} diff --git a/public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D b/public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..5dc67c6c1f954ad7950b43f0c554f5085c2133b3 GIT binary patch literal 2125 zcmb_dTaTMo5RO*SCTW^Y(oM6is#XXoQWC9gF2>kiMGb~yjMsn{V`DoHh|9sS#y|{S zU-Db~)IZW=u#@!i6jhcmXXcxkZ-$vU_aDYhjB~Q!4h~jH5-+o6leZinHk%;ImfJ_o zXYZYOkt|`FLbr`haFYb+WCjtj*DaxyLD#f0?}DsS1VhsdRV@=$imelk=HvHwR=9%r z$)6AIKg3V|K+g}SA0B-AO~PM_oDK|bVoHh*v^K|s)8;8?OZfM^C{@TZd3tpZozD84 z-a(kQTAb^Z%!dn@R+i9BU=(dj3oFgwvXW-o5T-taSz57@Bn%uY3*xBkq-kOK{ALKW zi8;_UNf8Ut(>-OHVe1T22%c#`R&`)OjwxFZz6mB1ncH ziRw*%GL-Oh4WK9k-IRgeQH31!Py~8zTxf=xRKyzlS(Y>_l`wX!(2vusNfQL|4e9;< zuPg?x)?8vtztw67FrpQHaB(O0!RM+twlXH_U)9L)Qgs;j)(E2K|4 zy59ft!H%GT+SUzDI}mtlfYvf_<_JfZN$j<@vbX5HQKl=Xf^>-_OBD5{aCo+NXnwBp z`DcoGfh7DzuIE)n0lY4$%H9fpI)^YRSs`jnTh!DskoZQ~5m0h@yDTz`RGNTG%IK2fs<+dA61&5S%Kuq-E zb}Aqi>()NX&6rYl&SL7hVq-Zqs(Cad-zam^mpk2--EQ@4-635u-3)~}GhHZxDz>*; z80rco-60G^cC0xR_)Y)cX z85;ssX9w3)RFTcjHM$?ChC;M%Q%;N0jyfan9C5To6}fZf^Pm+KJk?o7O^gjW9V>PV z$vJLc#Ys&t+^tQI)?=#6$U>}5s7C4<!6jikxn({2yvk8}>Awzo5rK=9ZLY8XO9r_A0&14yS zK^R2ul2^2l9lIE9mcd~h-~Wn)$6dJJ;KgKr`|^INYLX}^T+eI|d%Z6n`Tt{I{*sT8 z)HY=_Ky3*K=0H-=eUx87ht+v;#3-r)OqtX9Lr%H=(_;z$p@%M_k{r8%7eKc##s{nD z5+kZu*NU+HRe=#~lOdW6gNgEC!9M5XD1%W}(zgjL%$^+ARdGB&B6={IWqu+2u1d00 zt$6=&TslI8UW|qFis%^=7sDh4PbeX^>gj>Tt6@q>3BjF91Pl$p8QV literal 0 HcmV?d00001 diff --git a/public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F b/public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F new file mode 100644 index 0000000000000000000000000000000000000000..69b6cab42e65ae7cc15e45c80c9517b8bce0379c GIT binary patch literal 2009 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 BE_(m~ literal 0 HcmV?d00001 diff --git a/public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D b/public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..f5ad1a5994060d5cf7c59a1152af7cf8bdf1f6e8 GIT binary patch literal 2005 zcma)7`;Xd25Ux(q<z z@Dqr>Kb(Ge_~{P`e<^Z0Ft~{+DLT;F91l*}Q_z<1A9zu!kY)1p`a85b?{j(wVcKf3 z{J5e|49_$mt2!__LD2RV z{G6ofWdeOj2|qeJ>Ojw(FZz6mB1ncHiRx{CGL-NO4WL~Hx+w#_qY63dOayu!TzH0> zRP4oiS(dPsN*Fs<=*4Nq(gZ<#^8kPTi|2sXq`qz{oD7O=-xWX420$AD?JLLm=lp+1 z^i?fCg@ixa?^`%u9K!pWs;j)(E38jCy59dH`Vllx+q%JN2Lf*m&|3OVfN*q~#9nJF zdyD=z%X9^4M3+diL{V>wgy;K&=4Tx*K2yvkknk6|pH~$H@VcZb`zZWr0AW(HLR5@M z&K$w>cbSRS(fl?qp%JI$*L#x7+3GB7uM{c}M zF-6B}W%3#`RHIgXgKzj@)_pY$e4v$PR_%C0b(*z2y z3Wwswf1dCBiQJqiQ+9Kfnme-Z$$(<{P+4Oc&=fE_* zS-bk;CL0b0(#>S7CAKjX)pbj>`LqL)S5#{`+GnGc(4m#YrkEllLZFCna(BB{cHu&% zBuZJxj4FiT^bYKlyKXoY98%T+G0}(Hseo9lTl-yZ$CR>j7Sow4HkVVQn(v0}8zmq; zxzlag?N-m$9nuxk%}@xK=|T}yvAxy8P**7F9`Vpeq8r%+dGB_-m97)V95>E*6gp9m zui-kV33O{~Q%N|XHN;y>xP)t|^UcCCHUv^<2iH@i$Y$pn-H%g4AzF7Sr$uQ;os;*D zINBmb?wug;TT#JNooCd<*pSn)Vz-c;9S_ooY55`WiFMWEs!=(2w3FuV^7VRxz3^gF`#M{~Z~R({4Y7i_ZS9 z0sKj>ZkiMU5fyL|MePrSFArfwpn~g{ z{`2<)ZJWy_cNY_NWw%R>uUVU)l zWwL^43f(r6;5G@6WCjs&u&tn#LD#f0?bdd7fGbf1NfRVdy&FtN5`L`-DE3e{WkK(#e2%&h1wD5zEF(=S z&Z_xYmNYAsFm|lakJGFP2!i-`_E$qrlLoq}u(D7@I*}g=+E~!OF!6+h=Ho* z8A$k(!w~Y=K7od6TQ^wkNZ_3zv{r$$KsZn)u{YY<-l6}E zGN_>XfD%cTDC%ty@bVDQ{8Gc~FBJ3iCHzHh=Tt=zI9*begBSke0>Y$Zg{TQpDRTtN zal)XuhgTWgW)*b3H}5L%Za=-xZ>xwiLP?pdC@2N;lN|4ZFtjRknZVu{LFC4p6jOAp zRwi#TLp5sEw-}3h1{%=r1zCj#Oc~U$H@%K7_iwN;SU^mK&LVz`asDb^!U|}h?x08p zrAuQ&%d=L&(M!Ug=S(%BEoef~Pvw8UbSGY~QkYii^@@*zZsOHK!hiiHPg77hl|QyC z{>ywHBsZ7~y%5dT4VJo&|2KS}Rm2fWJTKq%-Y;>=&EC(8Q$LlEQ`MeSAkJQ$nJefn zg9w_4NQ&m=eT(%OURVTtXS|!p#zk}rsyIfLLiTDdVjZ3_Tf^dBuZJz zw91F!>|WR__uX*DJEW`e;cW;|lCX&p|vn^4N$S1MtMYem_=zf|R3embxSuILC>YRLV#PJSQ zu=UROcBrHMZnzqS!5@XW2s)r#0SicQzPrCRCS}`B}}93&P1_zFd*{is7BoZx0q=rtJn*|AbOv?27GqvVzgO?$8r4dJ5ruD-C_L}ll>ny?@Lva zL`h-$W_#4{|1a0y@@bITri|vGEeX6iloa$P + +
    + + 鏇存柊浜 + 2015-01-06 16:29 + + + 妤间富锛 + net + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (1) + +
    + +
  • + +
    + + 鏇存柊浜 + 2015-01-06 16:28 + + + 妤间富锛 + xDong + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (2) + +
    +
  • +
  • + +
    + + 鏇存柊浜 + 2015-01-06 16:27 + + + 妤间富锛 + jacknudt + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (9) + +
    +
  • +
  • + +
    + + 鏇存柊浜 + 2014-11-28 13:43 + + + 妤间富锛 + jacknudt + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (3) + +
    +
  • +
  • + +
    + + 鏇存柊浜 + 2014-11-27 06:22 + + + 妤间富锛 + gaoli + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (2) + +
    +
  • +
  • + +
    + + 鏇存柊浜 + 2014-11-25 18:48 + + + 妤间富锛 + freedom + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (1) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D b/public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D new file mode 100644 index 0000000000000000000000000000000000000000..c07b3d1fcdd7ba7bf97e75ee0e863d28381ffb6d GIT binary patch literal 2001 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 literal 0 HcmV?d00001 diff --git a/public/cache/636/EF0/views%2Fprojects b/public/cache/636/EF0/views%2Fprojects new file mode 100644 index 000000000..231045423 --- /dev/null +++ b/public/cache/636/EF0/views%2Fprojects @@ -0,0 +1,185 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420531897.9176939: @value"3I"3

  • +
    + 0?1420357778 +
    + + +
    + + SocialForge鏄疶rustieForge鐨勫崌绾х増锛屾敮鎸佺ぞ浜ゅ寲鍗忓悓寮鍙戜笌鍚堜綔銆 +SocialForge aims to provide a socialized an... + +
    +
    + 椤圭洰璇勫垎:28736 +
    +
  • +
  • +
    + 0?1420357778 +
    + +
    + Bench4Q + (7浜) +
    +
    + + Bench4Q is a Cloud-Based software + +
    +
    + 椤圭洰璇勫垎:8158 +
    +
  • +
  • +
    + 0?1420357778 +
    + +
    + haflow + (5浜) +
    +
    + + Hadoop has become the defacto standard of big data analysis, due to its scalability, fa... + +
    +
    + 椤圭洰璇勫垎:1535 +
    +
  • +
  • +
    + 0?1420357778 +
    + + +
    + + Btrplace is the flexible VM placement algorithm inside Entropy. It allows to compute th... + +
    +
    + 椤圭洰璇勫垎:1036 +
    +
  • +
  • +
    + 0?1420357778 +
    + + +
    + + This project is to build an platform for OSS Evaluating, Analying and Networking. This ... + +
    +
    + 椤圭洰璇勫垎:884 +
    +
  • +
  • +
    + 0?1420357778 +
    + + +
    + + To improve the performance of Service4All, we will employ the widely-used cache tools s... + +
    +
    + 椤圭洰璇勫垎:420 +
    +
  • +
  • +
    + 0?1420357778 +
    + +
    + WDMVC + (10浜) +
    +
    + + 鍩轰簬宸ヤ綔娴佺殑鍒嗗竷寮廙VC杞欢浣撶郴缁撴瀯锛屾敮鎾戣蒋浠跺紑鍙戠殑鈥滀笁绾库濆伐绋嬶紙鐢熶骇绾裤佹祦姘寸嚎鍜屼骇鍝佺嚎锛夈 +璇﹁椤圭洰Wiki銆 + +
    +
    + 椤圭洰璇勫垎:359 +
    +
  • +
  • +
    + 0?1420357778 +
    + +
    + VMThunder + (1浜) +
    +
    + + 鏁版嵁涓績涓ぇ瑙勬ā蹇熼儴缃茶櫄鎷熸満锛岃揪鍒扮绾у惎鍔ㄤ笂鍗冨彴铏氭嫙鏈虹殑鐩爣 + +
    +
    + 椤圭洰璇勫垎:340 +
    +
  • +
  • +
    + 0?1420357778 +
    + + +
    + + forked 4rom webmagic + +
    +
    + 椤圭洰璇勫垎:284 +
    +
  • +
  • +
    + 0?1420357778 +
    + +
    + WSCRP + (5浜) +
    +
    + + In order to meet the requirements of users, sorts of Web services coordination and reco... + +
    +
    + 椤圭洰璇勫垎:284 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D b/public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..53fc3675aeb31284a9c016b0823359bc7b5d613f GIT binary patch literal 2050 zcma)7Yj4_E5UrvrO}E>$-Sn}mRkfC-mC`7HAK1o3QEO~tOt4Li!9YJ)eq6x87#ExH z=+D?s`)~K+3vKtMT_J_snKLuz9%kk~JegN9!Oy~b&{-zQe34bFqU%pUwJOKiV)MBA z{DVKAB@2+IAgIF=SSKMoIblrfd<)=aAaLAl^qMSF1Vhthnk-Uff@bLIlMnZ9v;_Fk z?~fjy;77l~zaNi3KKlHNioaF_OSXl9qw1Dy)&)^Mt{%&E75`pT)Dl@FkFOrU(`j3< z8W2-A(D`jC%{CE8Cjew=X$2xk4ix<~MeY~3UD+Hs9m`a81(}}hXweK;VHjk1ZpxZr z$&MgN=FWnjk`z}Y;D=Q4gR^0DtlassEfy$(WC)Td-?j%`6+bg&Sfyh*nrt-;DMy_s zvXuuTPuEmYt?NmaCDl?Xn)_}vnWtHmCJ5r+?(qI^R6C-nwk<~&G#Mp)fWDr0WV0um z-#AXcl=w5EZJ7B*RQ&O-G;+S&hqq0`GDM?=tWO)3)&45|0n{<-mMxfj0vEPiTZH}; z;^-oYotsN<1OMlXbP38t7f7-|QSVT~(_KR6i z?Xce*x%RDMjE8k|HWkC#q^XXRyFiJu;q8DEUYg(DEXvj$;80w zZiW)%u&V89-1aGb>(7RxK;aidyPVg8_O(7GCt9Of^Xj#hXZd8Hr0cFUWrj0dGL-tp zj3P^?)O*Oo>M23&5#)W)m@F-eIOMqT`@P7Ir}-JIrmRHQHXfBk1KNbV%|u9qnlWC_ zTzgGGZMI-FgnF#Ef!+Kxv~{9(mkMT_HjFWO?<>6x)Z^ZtPQzM^cpBr38rW-c*w?)p zv_XJTaQAff1N-4EG#*ysZd;?-|Bpre+Avi`)rFQ*@3vZB!_NQrZu~hP z2es~Ka1iRMEIA!jhp$NfZ0y%0S|1Rj8@lXhf+gkxVdxFBo45c#q=!vR7ewxX>jy l?I^GDvRhp}k +
    + 0?1420357778 +
    +
    + + lzl + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#1 (鏂板): 澶氬彂鐐 +

    + + 鏇存柊浜 + 2015-01-06 16:11 + +       + + 鍥炲(0) + +

    +
    + +:ET \ No newline at end of file diff --git a/public/cache/6CB/680/views%2Fissues%2F2211 b/public/cache/6CB/680/views%2Fissues%2F2211 new file mode 100644 index 000000000..28133a2c0 --- /dev/null +++ b/public/cache/6CB/680/views%2Fissues%2F2211 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420531979.264571: @value"I"
  • +
    + 0?1420357778 +
    +
    + + lzl + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#2 (鏂板): 鍝堝搱鍝 +

    + + 鏇存柊浜 + 2015-01-06 16:12 + +       + + 鍥炲(0) + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/6D1/6D0/views%2Fissues%2F2208 b/public/cache/6D1/6D0/views%2Fissues%2F2208 new file mode 100644 index 000000000..031a3fd44 --- /dev/null +++ b/public/cache/6D1/6D0/views%2Fissues%2F2208 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.359701: @value"I"
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#1 (鏂板): 澶氬彂鐐 +

    + + 鏇存柊浜 + 2015-01-05 14:20 + +       + + 鍥炲(0) + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/6D2/6E0/views%2Fissues%2F2209 b/public/cache/6D2/6E0/views%2Fissues%2F2209 new file mode 100644 index 000000000..59eb90bdf --- /dev/null +++ b/public/cache/6D2/6E0/views%2Fissues%2F2209 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.3486998: @value"I"
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#2 (鏂板): 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-05 14:28 + +       + + 鍥炲(3) + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D b/public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D new file mode 100644 index 0000000000000000000000000000000000000000..b83e413aa031a3b6736d0ee3aa1f2bc08d74ae37 GIT binary patch literal 2003 zcma)7`;VGf6mBNXbh_P6AJcZXX|^FGn{=8{xm=OaNq38Yh$G-2irOCtkE=2wP{Hxh ze}1o^ZTFSkm;-`T0XNJ^bWbc@`yMCJZxH$71wT3thzRVg<;+3|u5%d(fb;i)bvnju=8 zAm}>_c?xK@NZ}ul$%C`0b&bsVqQe(x3NRF)$~T>1PbSZF5m)INmLeKWO~_Cul4xYX zxu>Vgd9B~3X&To`r66+cU>YT94N?^KubcS&Z(O^)E_Vz|pzS@eiP`)-X&?-xGLmiuHx>&M*!Z z0r5^>Ivf06Ey5Dk2^Ih-(DZqp@N}2Z`l{vGSBjYoGWjC&^O~xPydi7qE{c3ILntoT z0X~yh(hR}zyx7UV$Ls6>lvc=zFW#5lUw!^S6)z8&dU#tFCy8o~{j5Y=KM3p+Q>2J@ zrXPCIDj`&Zs1(5!VQOZjd`@t293T@p*M3@JAX|hL;@x%AP}&zn;Li{tA$Jy?6Z~`$ z%~1(f@j0OZi#N;=U3+XV{C$*6KFhf3Vnfu${A9iP=g%*bufN-tC91q8?9VIt^JMGC z7len#0q(2|BJtemU+`^Cm3nxWnObMtX@OTSw$p)nq#qaF(snYE}_oedEw^ zFoZhht;bx<)wRibZkuZgYqLeG5!Pe9^~~1ik*QMk+l14@q^V87oh$V>SdTk*HuLLY z&QqJD^w3;`(Li!E!(|Q^)LY6|7-n9&BBR z`GIQe%=G{@s#^!P@|rl8AO$lG+g)18_!n@mK^xlR%QB=Xn{gf2K@iz23xI=w<3Ttc zBM8~?6=7NNA{zUFAAX2`g+h8buy~Ag_r3S=7i>I?x83N?+xWkx?ki1~C0XU#R-@N$ ze~UZ+|AX#L)(~>TQgACYWKpoXvWhQ->=xM1yq^vjRZ~Sv;S7GyFY|wSB$LnEc9Is9 z$n(cO^73G^y9_S~s!X)(kl0Off?{jsY7JfzlCqzS&-f@zQJ5BtO^oueCn;K|r8uzt zFgKhXFl`i0(rIq|0e~tj=kG5Eg#$$J@g0@!%w(ZLF%=fD5LC*x4aO|vQsXKE*h|PD y$EC*}eo)9|@O&0<$LG07V~Km8s(eTKvIfgF8hj)Dcu?r3cDhXRkP|u|?tcLOoHaH8 literal 0 HcmV?d00001 diff --git a/public/cache/701/020/views%2Factivities b/public/cache/701/020/views%2Factivities new file mode 100644 index 000000000..3e6a324ff --- /dev/null +++ b/public/cache/701/020/views%2Factivities @@ -0,0 +1,127 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532949.9541981: @value"!I"!
  • +
    + 0?1420357778 +
    +
    + + lzl + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#2 (鏂板): 鍝堝搱鍝 +

    + + 鏇存柊浜 + 2015-01-06 16:12 + +       + + 鍥炲(0) + +

    +
    +
  • +
  • +
    + 0?1420357778 +
    +
    + + lzl + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#1 (鏂板): 澶氬彂鐐 +

    + + 鏇存柊浜 + 2015-01-06 16:11 + +       + + 鍥炲(0) + +

    +
    +
  • +
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-06 11:42 + +       + + + +

    +
    +
  • +
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-06 11:17 + +       + + + +

    +
    +
  • +
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-05 15:25 + +       + + + +

    +
    +
  • +
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#2 (鏂板): 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-05 14:28 + +       + + 鍥炲(3) + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/705/AF0/views%2Fprojects%2F2 b/public/cache/705/AF0/views%2Fprojects%2F2 new file mode 100644 index 000000000..90f86c1c2 --- /dev/null +++ b/public/cache/705/AF0/views%2Fprojects%2F2 @@ -0,0 +1,21 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.9076748: @value"~I"r
  • +
    + 0?1420357778 +
    + + +
    + + SocialForge鏄疶rustieForge鐨勫崌绾х増锛屾敮鎸佺ぞ浜ゅ寲鍗忓悓寮鍙戜笌鍚堜綔銆 +SocialForge aims to provide a socialized an... + +
    +
    + 椤圭洰璇勫垎:28736 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/73B/E90/views%2Fprojects%2F17 b/public/cache/73B/E90/views%2Fprojects%2F17 new file mode 100644 index 000000000..50230b720 --- /dev/null +++ b/public/cache/73B/E90/views%2Fprojects%2F17 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.956678: @value""I"
  • +
    + 0?1420357778 +
    + +
    + Bench4Q + (7浜) +
    +
    + + Bench4Q is a Cloud-Based software + +
    +
    + 椤圭洰璇勫垎:8158 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/73D/EC0/views%2Fprojects%2F28 b/public/cache/73D/EC0/views%2Fprojects%2F28 new file mode 100644 index 000000000..43fd553d6 --- /dev/null +++ b/public/cache/73D/EC0/views%2Fprojects%2F28 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.988679: @value"DI"8
  • +
    + 0?1420357778 +
    + + +
    + + Btrplace is the flexible VM placement algorithm inside Entropy. It allows to compute th... + +
    +
    + 椤圭洰璇勫垎:1036 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/73E/ED0/views%2Fprojects%2F29 b/public/cache/73E/ED0/views%2Fprojects%2F29 new file mode 100644 index 000000000..c1b2bf3fb --- /dev/null +++ b/public/cache/73E/ED0/views%2Fprojects%2F29 @@ -0,0 +1,21 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.036682: @value" I"
  • +
    + 0?1420357778 +
    + +
    + WDMVC + (10浜) +
    +
    + + 鍩轰簬宸ヤ綔娴佺殑鍒嗗竷寮廙VC杞欢浣撶郴缁撴瀯锛屾敮鎾戣蒋浠跺紑鍙戠殑鈥滀笁绾库濆伐绋嬶紙鐢熶骇绾裤佹祦姘寸嚎鍜屼骇鍝佺嚎锛夈 +璇﹁椤圭洰Wiki銆 + +
    +
    + 椤圭洰璇勫垎:359 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/766/4C0/views%2Fprojects%2F300 b/public/cache/766/4C0/views%2Fprojects%2F300 new file mode 100644 index 000000000..2b128443f --- /dev/null +++ b/public/cache/766/4C0/views%2Fprojects%2F300 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.1366882: @value"I"
  • +
    + 0?1420357778 +
    + + +
    + + forked 4rom webmagic + +
    +
    + 椤圭洰璇勫垎:284 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/769/520/views%2Fprojects%2F330 b/public/cache/769/520/views%2Fprojects%2F330 new file mode 100644 index 000000000..6f0b5a3bf --- /dev/null +++ b/public/cache/769/520/views%2Fprojects%2F330 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.159689: @value"YI"M
  • +
    + 0?1420357778 +
    + +
    + WSCRP + (5浜) +
    +
    + + In order to meet the requirements of users, sorts of Web services coordination and reco... + +
    +
    + 椤圭洰璇勫垎:284 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/76B/500/views%2Fprojects%2F134 b/public/cache/76B/500/views%2Fprojects%2F134 new file mode 100644 index 000000000..9499b1df1 --- /dev/null +++ b/public/cache/76B/500/views%2Fprojects%2F134 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.057683: @value"I"
  • +
    + 0?1420357778 +
    + +
    + VMThunder + (1浜) +
    +
    + + 鏁版嵁涓績涓ぇ瑙勬ā蹇熼儴缃茶櫄鎷熸満锛岃揪鍒扮绾у惎鍔ㄤ笂鍗冨彴铏氭嫙鏈虹殑鐩爣 + +
    +
    + 椤圭洰璇勫垎:340 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/76C/530/views%2Fprojects%2F315 b/public/cache/76C/530/views%2Fprojects%2F315 new file mode 100644 index 000000000..05c521a66 --- /dev/null +++ b/public/cache/76C/530/views%2Fprojects%2F315 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.970678: @value"QI"E
  • +
    + 0?1420357778 +
    + +
    + haflow + (5浜) +
    +
    + + Hadoop has become the defacto standard of big data analysis, due to its scalability, fa... + +
    +
    + 椤圭洰璇勫垎:1535 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/76E/5B0/views%2Fprojects%2F290 b/public/cache/76E/5B0/views%2Fprojects%2F290 new file mode 100644 index 000000000..1c565e3c4 --- /dev/null +++ b/public/cache/76E/5B0/views%2Fprojects%2F290 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.020681: @value"I"
  • +
    + 0?1420357778 +
    + + +
    + + To improve the performance of Service4All, we will employ the widely-used cache tools s... + +
    +
    + 椤圭洰璇勫垎:420 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/777/640/views%2Fprojects%2F299 b/public/cache/777/640/views%2Fprojects%2F299 new file mode 100644 index 000000000..2fcdf1bcf --- /dev/null +++ b/public/cache/777/640/views%2Fprojects%2F299 @@ -0,0 +1,19 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.00468: @value"%I"
  • +
    + 0?1420357778 +
    + + +
    + + This project is to build an platform for OSS Evaluating, Analying and Networking. This ... + +
    +
    + 椤圭洰璇勫垎:884 +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D b/public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..ca5d797b7d468438dc9b632e9332ef8df31492b6 GIT binary patch literal 2026 zcmb7F>yO$-5RXpL<{Tu zLHenGc^4a!>qD(7Bw%NLGxM9-nc4d%VU^&V#9N`xGK#`QQmyiqGeOlV43fp>VfE>i z6V9Urieu!~@d@2V9zK~~K<#u3WF^Qotz`6qE;1Ag0Lv8f6jLgdtB7{DeSCQjpHADH-oTi; znw^Ql)LL1wv+$xME?80IdybWOVUVB38RFSZ7it5uqid2PW}+uMVt_4`SvC_q)u62E z(BuR`+eye%nknTe{GlcCplqleJykw$^Erm1S&F8LH|;@JBF{94qjYprhI&I4Qq+kE z_0%}ibTui9bu~$ns9Grap=0@zFixs~qNsmK4E)d9{^EA2)Qp{p|t{ppIJC4Nlt=cyGYk!gFRA z2l6!WR$JN|{J)Y11zahRqv;&OyvrP(?i`w5t9ka7Vp<4^e4grgRZ$?XORBQ7BA?6< zigK2Z+Y%QwMQ}V1+u4nryf3^z7^nzfz4CITf+<7a2*qhPF&>a zOTti%i{d+i!+nDcWM6wpfd!>JxFFtMH*~pmPWavo5h8MC;X8t#EW$Y|fC_F5hA!d! zSfXQ%tcAC?lE`N%H4WCG2D4Vm|MPu2;c^k9xKJ(^CfMmZT+Af$r#p$6P~lZ!-?QY8 zdGGXcW_ESbnR_=!x8D z*6ez%W$O;@it%k%n6bmTBB)}0qxrtBFwzS1(0igA*c82T80w{7Ygo>4yDAPY1jF6fpttTbO;#2{ZNOAw*PxeuhMm|( zZ!6;(*604#0hk|MiR`)Nqk3g)gJu>J`w~Qdree9n$SMC^&b_c*Fk+aZ~=aqm8vXNWm!U$_Z#vV9|j2ulAOMY zP-gb}&O>u2kxY4Zz_(B^P9~Y~JBFgb{tbK4&mACwH%4)?gOE8?sem$K04iB!b~FNR z5zvS#vY=da9JgF_kyQZ>!n6EPz&jxGOX^F!4XBGd36!g#TrC#ACGfbP>m*jP+&_pX In99!h4?jvm*Z=?k literal 0 HcmV?d00001 diff --git a/public/cache/7AC/380/views%2Fjournals%2F5295 b/public/cache/7AC/380/views%2Fjournals%2F5295 new file mode 100644 index 000000000..6c1f6f32d --- /dev/null +++ b/public/cache/7AC/380/views%2Fjournals%2F5295 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.596714: @value"I"
  • +
    + 0?1420357778 +
    +
    + + sw + +  鏇存柊浜issue-edit缂洪櫡 #1639 (宸茶В鍐): 璇剧▼--鍔犲叆璇剧▼锛氣滃姞鍏ヨ绋嬧濇寜閽樉绀洪棶棰 +

    + + 鏇存柊浜 + 2014-12-02 17:36 + +       + + + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/7AD/390/views%2Fjournals%2F5296 b/public/cache/7AD/390/views%2Fjournals%2F5296 new file mode 100644 index 000000000..fe3157fbe --- /dev/null +++ b/public/cache/7AD/390/views%2Fjournals%2F5296 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.330699: @value"iI"]
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-05 15:25 + +       + + + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/7AE/3A0/views%2Fjournals%2F5297 b/public/cache/7AE/3A0/views%2Fjournals%2F5297 new file mode 100644 index 000000000..20cf23406 --- /dev/null +++ b/public/cache/7AE/3A0/views%2Fjournals%2F5297 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.240694: @value"iI"]
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-06 11:17 + +       + + + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/7AF/3B0/views%2Fjournals%2F5298 b/public/cache/7AF/3B0/views%2Fjournals%2F5298 new file mode 100644 index 000000000..562aa84ca --- /dev/null +++ b/public/cache/7AF/3B0/views%2Fjournals%2F5298 @@ -0,0 +1,22 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.232693: @value"iI"]
  • +
    + 0?1420357778 +
    +
    + + lizanle + +  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 +

    + + 鏇存柊浜 + 2015-01-06 11:42 + +       + + + +

    +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/911/800/views%2Fmemos%2F427-20150106032234 b/public/cache/911/800/views%2Fmemos%2F427-20150106032234 new file mode 100644 index 000000000..a16d8d491 --- /dev/null +++ b/public/cache/911/800/views%2Fmemos%2F427-20150106032234 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.628716: @value"I"
  • + +
    + + 鏇存柊浜 + 2015-01-06 11:22 + + + 妤间富锛 + jacknudt + + + 鏈鍚庡洖澶嶏細 + lizanle + + + 鍥炲 + (8) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 b/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 new file mode 100644 index 000000000..f389b06fb --- /dev/null +++ b/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532863.155922: @value"I"
  • + +
    + + 鏇存柊浜 + 2015-01-06 16:27 + + + 妤间富锛 + jacknudt + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (9) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 b/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 new file mode 100644 index 000000000..26cb4e5e4 --- /dev/null +++ b/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.640717: @value"I"
  • + +
    + + 鏇存柊浜 + 2014-11-29 15:14 + + + 妤间富锛 + xDong + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (1) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 b/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 new file mode 100644 index 000000000..e101b51fd --- /dev/null +++ b/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.720721: @value"I"
  • + +
    + + 鏇存柊浜 + 2014-11-25 18:48 + + + 妤间富锛 + freedom + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (1) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 b/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 new file mode 100644 index 000000000..2bcd02c79 --- /dev/null +++ b/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.649717: @value"I"
  • + +
    + + 鏇存柊浜 + 2014-11-28 13:43 + + + 妤间富锛 + jacknudt + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (3) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 b/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 new file mode 100644 index 000000000..9615a9e21 --- /dev/null +++ b/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.710721: @value"I"
  • + +
    + + 鏇存柊浜 + 2014-11-27 06:22 + + + 妤间富锛 + gaoli + + + 鏈鍚庡洖澶嶏細 + jacknudt + + + 鍥炲 + (2) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 b/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 new file mode 100644 index 000000000..931c245b2 --- /dev/null +++ b/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 @@ -0,0 +1,23 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.70172: @value"I" 
  • + +
    + + 鏇存柊浜 + 2014-11-27 18:14 + + + 妤间富锛 + net + + + + + 鍥炲 + (0) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 b/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 new file mode 100644 index 000000000..6532134a1 --- /dev/null +++ b/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532924.8643541: @value"I"
  • + +
    + + 鏇存柊浜 + 2015-01-06 16:28 + + + 妤间富锛 + xDong + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (2) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/925/320/views%2Fmemos%2F579-20150106082907 b/public/cache/925/320/views%2Fmemos%2F579-20150106082907 new file mode 100644 index 000000000..c21c69db0 --- /dev/null +++ b/public/cache/925/320/views%2Fmemos%2F579-20150106082907 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532950.004201: @value"I"
  • + +
    + + 鏇存柊浜 + 2015-01-06 16:29 + + + 妤间富锛 + net + + + 鏈鍚庡洖澶嶏細 + lzl + + + 鍥炲 + (1) + +
    +
  • +:ET \ No newline at end of file diff --git a/public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 b/public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 new file mode 100644 index 0000000000000000000000000000000000000000..41e21d0e5f6262729bd1b98cd0aafedb568057b6 GIT binary patch literal 6735 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 literal 0 HcmV?d00001 diff --git a/public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e b/public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e new file mode 100644 index 0000000000000000000000000000000000000000..e9b89fb59a817ffa929b5b728f2ab9f1c9cea3d1 GIT binary patch literal 3017 zcmai0`#%%@_kS5`BbVIfk}%N)x%bwJT#_l*$t{VQyUiAJnOu`n!rXJstx%(qvSg@S zn@bc4T8h^Q5MZnmUqKKNy1x@<2dbdAXoYdk_!@-rH6dCVV`SJOBVbQ`A}XE?)Rs&^^0d z$0F>FMIVh8C ziE8ekM?*wWV_dR=GmN)h+${hsa*{(MNl(vgaXcXa2q5+!KP1#P{wKE1O3@z3rhqYo z5R;dKf(Gr!FSd(-c5(33=D9l$NCyB%4mU)AM|@!Zm#H2%7_3MefrG)~0~Jt^$N{pC zm>h!WzXqy@0%T+GZf~`)cA}i6UX}1QoQ50NI>YxEsgHf--U1iL5m*NkjwP+ z04K4H<7rT%UxgDGvIE|u>&}|Pu)<3`AHvoX$U0m42Mda<+D}U#;Nj(6P;e`vt4${8 z{m~pJj3q>_?QVC5!xq8S9R2Ldrjpq0s~G>_Ds&Q)!DXoK&t}T+w8cejCmrpb(0X=R zS@h15!)=-s!n}?A3Y~IRt|MbYXf{e?NhWg}mKMSXs5dQ}EMD$?!N4^|{^Wop@H_Mc z1O3PqmAjI>DL~LmOM}b?AgysdSzn0*bY+!J0#N^5{Bn6Z+^iJ}z}do>V^0nC?t3Fb zZQ{>+BVFGFhhX-c)!%oh>9nBXo~h^qJVoM}1`-#Wkb_(=o^nbS?#~$)ta+oZ!^a#G zx*Rh{gzs?`FL*0ne-p-K&<+*G$RXqRyCn@Gx}oswBrXI7rIi|8Dmxo5VvT5N4=9CH z82Y9-qvV%W0z^(GUe@2B47bZ_+}XNQZ=#+aQ*F)p2@<6Ls$53$PHSOcFG)+lIXbi0 zuUE3>pludw^X?bS<-50xU2i)`Dz=GXryaEIlC`nY4*vy< zN;MT=SkOa|glOS;=#?9SZ*kWt6cYzC2cvR@dHEWlI;cG?_J;b~!-%wU%Nm6+q4nla zH{>&l!#S$rPq~9~1qxRV^9#GAp$_qPq)u7z$SF`XOnFWHP{SydQkzn}K0%*6GsQUy zzT?{zv^tt9o0U>a5ujM6Zg#wzsue-D#7~&PiVvYn(}m7!dz_i(dT?LEFuU-Pbyr2f zC+MSi>>BZtnBuSYM(Wvvc2vJ+#}dJ99ugU zE}HUQCcml2u4e00$^(DqC}`4R8M$F>5Guh>OAJZJmdYO(_MN$hcdg|zMKiW61c z=n!5U?P&FgL^sBIfJoE9b8w@kn+MtnNgebzNNDa8S<=y^q*A@+@ri{VMcN*j7qcL3CT-q|#aI`DkFUPa4x8@_Mv$I`!ggQv= zm`^&{pXXPAY4}nX)$e5P=S=aaC<7!Fn>)esbFZfSiJ9S$k9&ef-&z0(Mey7Va__fG(n7G#qr7}{h;OZJjH?mHGKPUv(p%zam^K}r|YrNJ+h#Wnp@#y#u>lz!eR6B%Ya}n zsxJ798!u%Ek%SMy7H&^94>s%Go(zOAaXFfKQ#ltiN!Y6Ck>XeI znb~eeLC9%GZAVJDPTW1Atm-qu<1CFEiW7^ipViXNpH7|0 zx64@5`FbkCXv6!a<+-3%O_(KGiJT&l`bvJq-0tkaH)_w9t6x-3rst*Sm7w{2GHaAR ztJNNX%&*0xnrQLeZo|0b=Tp1R{#hLY%)S#=Z_{Gdr%auZ%#GOKEC_3uW zC(TjMogeG+yw}CT>6E8dw5QJpX`zlwV~9rM*JAPsHt>++>dxpo_fVh3z6gdlqdIfj zYQh0+yX;FISx!R7_C0uDq;%b0E2AR4gW+HG>(VQ%C?><*mgSq(?_?Ks44&aaB~r_) zem^}&o0+h;aOn?UCF6&NzMZdqzc7cIE1mPFvK7A8)cKM+yj*mmWGyT|%9&xeUHQ1S;fvzXK;zetYb*S*(xRun zvC`-3Unqsz`_YXfR{i^aUjLdb=_XazI1~AmW)foAQjmP@!L_|>#;iGC5&<{zq_MFY zhDV=BJcvRPr*oqTL%9n%AuouRj`6=Wn0|A3^kMk5NvrQg-S0-;b&Y06)viM4P-LY( zWMdFjr37E7TSRAlzgv)TW(mUr?BTM0aU@>U!E_nR{75zQq~c zPuU}6w%Jy;pR=_y-OH$_;0&Df)2!Bo-LdkGne4n+PyB^oyA3PUUZ~Wq(lv=BZjYm$ zI1%PN*o+1H(^aHj=5wcdSs$Y|e4F|MKmY!G-1$D4&T5^Ps`Xd=dVr=-xB5GHZ2=y_ z^V4j^IV?H!$yUSA_K&?A0zaZ^cAj}O;m3ZvHo5k^a};3l!)_Jqr2qMNYrM~-)1+Vi zoP1((zKo0%pCo(ke49*tH(7V-;Z|k$a0H9SsvB*i%VZzf(%-RK>D|D#m3^>e>oLQ3wp7_SRyGy- z?rZLTo3dCG+8lr|1puOB0a*XDi?aX(sR8iA6#(Qt0N{jFmzHz8-Z;~<1{Xtz=0B)& z008BbeG$cUeA6a?_+WY`*IM>Mrm|zT`%#L*KO)ke`j7Cqcl;yV)&EBzyPm(3n7`(Z p)Ccth6m>OH0tul1I{y+7sor(Ye literal 0 HcmV?d00001 diff --git a/public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D b/public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..168798e848cf86f7f723752762b188b7e42c77af GIT binary patch literal 2059 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 literal 0 HcmV?d00001 diff --git a/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 b/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 new file mode 100644 index 000000000..6b24ea5e4 --- /dev/null +++ b/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 @@ -0,0 +1,25 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.173789: @value"["$(document).ready(function(){ + $(".rateable").jRating({ + //default options displayed below -> + + rateMax: 5, //Maximal rate + length : 5, //Number of stars + //decimalLength : 0, //Number of decimals in the rate + //type : 'big', //Big or small + //step : true, //If set to true, filling of the stars is done star by star (step by step). + //isDisabled: false, //Set true to display static rating + //showRateInfo:false, //Rate info panel, set true to display + //rateInfosX : 45, //In pixel - Absolute left position of the information box during mousemove. + //rateInfosY : 5, //In pixel - Absolute top position of the information box during mousemove. + path : '/rateable/ratings', + onSuccess : function(element, rate){ + //something like -> + //alert('鏈鎵撳垎鎴愬姛锛'); + //$('Thanks for rating!').insertAfter(element) + }, + onError : function(element, rate) { + $('You have already rated!').insertAfter(element) + } + }); + +}); diff --git a/public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D b/public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D new file mode 100644 index 0000000000000000000000000000000000000000..8cb8c8bd223d40104b182d3c054a45992406ea5b GIT binary patch literal 2062 zcmbVNZI7B*6mBNXbSB+S+nsK^n`SqJq)De4l@}3p(rgi~h$G-2irNo^m#d-(4B$B0 zAG4qKf9@5uoqhSRyCDJYInO!gIp^MU?&FiNj&V-v-ND`}io!Up*LlmC!FnA8X}meD zzxd>Y%P59P0^KHB!TZQVE7J>zoi2t}3SHAmC$GseMKCnYP~{>~W!NfRfBNap@>dW) z`u)k{6a45m^!|MO`N@}GB>c6=>A>JdrljaVYjQj|t{;P@gn!42Qi&{*$5)Tg>a5G@ zEre;R`TC+Xx9+UOiM=RIO7q(lj5kFeT7ew8mS0?YL2;hs(3dxTppDF)u1SiRi=OW& z(hSS8)m-pG1G1_ElM@7OC&AB1iY*f8Atn5vY^gmxQ@-l*1&SaUf+Wf}-BDk{&ozLe z^mJ1OdP@~D)QJf6%sAKdH7SoJ&C)cgmr8!#f0B8>sXJ5np8PQd>EGY>;-OSeZsl<6`MyWUuM)a&;%OD&s6cBH{J9;y+HeUUZ4MaN?tmyTlULnf(Rd;S{lt63^;&zMU0#<#Ic_y8TELtB0EL zs(LNuh@&@0W(-}_Gtfjt5-$usHnv*()DPlMYhow)pbL(`J@G+cT^)D?7Y#6@6bwQQ%vp=A&`YX zn%}IIt-q8hiBgs_qYA!1o`bD2Z~J4xA!Qv9BfY;F3y8(Kv5Rsuq?E0*98X-a7LSc` z77fYol?6GITkVG3Y;=ms`H-np&WO4o^l zk85W*@SR|ht>Jo65$MLorXqhtYlycNaS_*0r}sdx$sJ10_!kOp#dhfl zMU^dwrY4p!5m_12Bmq>PN?5E+I z14dC5V9K1%?^$R1FHa@>`;L{Q1$1|K6A!w%G2UARml#pT+E#$=#yv)`^>VFFS20oE z&&-#67^E;r3;HI4x!GF_jS$bVQq)EdGRl?b2Yd$x({z>#Pf3ERR;$%C?+Z%`I1Kx;m*%Xxgf=goT>>R6s)^_l4^#G#-e`1O8P+ YzFsbW<{9 literal 0 HcmV?d00001 diff --git a/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 b/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 new file mode 100644 index 000000000..16ec306e0 --- /dev/null +++ b/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 @@ -0,0 +1,232 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.166788: @value"["/************************************************************************ +************************************************************************* +@Name : jRating - jQuery Plugin +@Revison : 3.0 +@Date : 28/01/2013 +@Author: ALPIXEL - (www.myjqueryplugins.com - www.alpixel.fr) +@License : Open Source - MIT License : http://www.opensource.org/licenses/mit-license.php + +************************************************************************** +*************************************************************************/ +(function($) { + $.fn.jRating = function(op) { + var defaults = { + /** String vars **/ + bigStarsPath : '/images/seems_rateable/stars.png', // path of the icon stars.png + smallStarsPath : '/images/seems_rateable/small.png', // path of the icon small.png + path : '/rateable/ratings', + type : 'big', // can be set to 'small' or 'big' + + /** Boolean vars **/ + step: true, // if true, mouseover binded star by star, + isDisabled:false, + showRateInfo: false, + canRateAgain : false, + + /** Integer vars **/ + length:5, // number of star to display + decimalLength : 0, // number of decimals.. Max 3, but you can complete the function 'getNote' + rateMax : 20, // maximal rate - integer from 0 to 9999 (or more) + rateInfosX : -45, // relative position in X axis of the info box when mouseover + rateInfosY : 5, // relative position in Y axis of the info box when mouseover + nbRates : 1, + + /** Functions **/ + onSuccess : null, + onError : null + }; + + if(this.length>0) + return this.each(function() { + /*vars*/ + var opts = $.extend(defaults, op), + newWidth = 0, + starWidth = 0, + starHeight = 0, + bgPath = '', + hasRated = false, + globalWidth = 0, + nbOfRates = opts.nbRates; + + if($(this).hasClass('jDisabled') || opts.isDisabled) + var jDisabled = true; + else + var jDisabled = false; + + getStarWidth(); + $(this).height(starHeight); + + + + var average = parseFloat($(this).attr('data-average')), // get the average of all rates + idBox = parseInt($(this).attr('data-id')), // get the id of the box + kls = $(this).attr('data-kls'), + dimension = $(this).attr('data-dimension'), + widthRatingContainer = starWidth*opts.length, // Width of the Container + widthColor = average/opts.rateMax*widthRatingContainer, // Width of the color Container + quotient = + $('
    ', + { + 'class' : 'jRatingColor', + css:{ + width:widthColor + } + }).appendTo($(this)), + + average = + $('
    ', + { + 'class' : 'jRatingAverage', + css:{ + width:0, + top:- starHeight + } + }).appendTo($(this)), + + jstar = + $('
    ', + { + 'class' : 'jStar', + css:{ + width:widthRatingContainer, + height:starHeight, + top:- (starHeight*2), + background: 'url('+bgPath+') repeat-x' + } + }).appendTo($(this)); + + $(this).css({width: widthRatingContainer,overflow:'hidden',zIndex:1,position:'relative'}); + + if(!jDisabled) + $(this).unbind().bind({ + mouseenter : function(e){ + var realOffsetLeft = findRealLeft(this); + var relativeX = e.pageX - realOffsetLeft; + if (opts.showRateInfo) + var tooltip = + $('

    ',{ + 'class' : 'jRatingInfos', + html : getNote(relativeX)+' / '+opts.rateMax+'', + css : { + top: (e.pageY + opts.rateInfosY), + left: (e.pageX + opts.rateInfosX) + } + }).appendTo('body').show(); + }, + mouseover : function(e){ + $(this).css('cursor','pointer'); + }, + mouseout : function(){ + $(this).css('cursor','default'); + if(hasRated) average.width(globalWidth); + else average.width(0); + }, + mousemove : function(e){ + var realOffsetLeft = findRealLeft(this); + var relativeX = e.pageX - realOffsetLeft; + if(opts.step) newWidth = Math.floor(relativeX/starWidth)*starWidth + starWidth; + else newWidth = relativeX; + average.width(newWidth); + if (opts.showRateInfo) + $("p.jRatingInfos") + .css({ + left: (e.pageX + opts.rateInfosX) + }) + .html(getNote(newWidth) +' / '+opts.rateMax+''); + }, + mouseleave : function(){ + $("p.jRatingInfos").remove(); + }, + click : function(e){ + var flag = confirm("纭畾璇勫垎锛"); + if(!flag) + { + e.cancel(); + } + + + var element = this; + + /*set vars*/ + hasRated = true; + globalWidth = newWidth; + nbOfRates--; + + if(!opts.canRateAgain || parseInt(nbOfRates) <= 0) $(this).unbind().css('cursor','default').addClass('jDisabled'); + + if (opts.showRateInfo) $("p.jRatingInfos").fadeOut('fast',function(){$(this).remove();}); + e.preventDefault(); + var rate = getNote(newWidth); + average.width(newWidth); + + + $.post(defaults.path, + { + idBox : idBox, + rate : rate, + kls : kls, + dimension : dimension + /** action : 'rating' **/ + }, + function(data) { + if(!data.error) + { + /** Here you can display an alert box, + or use the jNotify Plugin :) http://www.myqjqueryplugins.com/jNotify + exemple : */ + if(opts.onSuccess) opts.onSuccess( element, rate ); + } + else + { + + /** Here you can display an alert box, + or use the jNotify Plugin :) http://www.myqjqueryplugins.com/jNotify + exemple : */ + if(opts.onError) opts.onError( element, rate ); + } + }, + 'json' + ); + } + }); + + function getNote(relativeX) { + var noteBrut = parseFloat((relativeX*100/widthRatingContainer)*opts.rateMax/100); + switch(opts.decimalLength) { + case 1 : + var note = Math.round(noteBrut*10)/10; + break; + case 2 : + var note = Math.round(noteBrut*100)/100; + break; + case 3 : + var note = Math.round(noteBrut*1000)/1000; + break; + default : + var note = Math.round(noteBrut*1)/1; + } + return note; + }; + + function getStarWidth(){ + switch(opts.type) { + case 'small' : + starWidth = 12; // width of the picture small.png + starHeight = 10; // height of the picture small.png + bgPath = opts.smallStarsPath; + break; + default : + starWidth = 23; // width of the picture stars.png + starHeight = 20; // height of the picture stars.png + bgPath = opts.bigStarsPath; + } + }; + + function findRealLeft(obj) { + if( !obj ) return 0; + return obj.offsetLeft + findRealLeft( obj.offsetParent ); + }; + }); + + } +})(jQuery); diff --git a/public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 b/public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 new file mode 100644 index 0000000000000000000000000000000000000000..3b564199a5be58b7aa880c8fa6951bb2dabdafaf GIT binary patch literal 12051 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 literal 0 HcmV?d00001 diff --git a/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e b/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e new file mode 100644 index 000000000..866f94664 --- /dev/null +++ b/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e @@ -0,0 +1,69 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.222791: @value"6[".(function () { + window.onload = function(){ + function fixedBar(id, options){ + var ele = document.getElementById(id); + if(!ele) return; + if(/msie (\d+\.\d+)/i.test(navigator.userAgent)){ + var pageHeight=window.innerHeight; + var d=document; + if(typeof pageHeight!="number"){ + if(document.compatMode=="CSS1Compat"){ + pageHeight=document.documentElement.clientHeight; + }else{ + pageHeight=document.body.clientHeight; + } + } + var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop; + if(options.addclass) ele.className = options.addclass; + ele.style.position= 'absolute'; + + if(options.show){ + ele.style.top = 0 + "px"; + ele.style.display= 'block'; + } + + window.attachEvent('onscroll' , function (){ + + var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop; + + ele.style.top = 0 + "px"; + if(options.autoHidden){ + if(ieScrollTop==0){ + ele.style.display="none"; + }else{ + ele.style.display="block"; + } + } + }); + }else{ + var ele = document.getElementById(id); + if(typeof pageHeight!="number"){ + if(document.compatMode=="CSS1Compat"){ + pageHeight=document.documentElement.clientHeight; + }else{ + pageHeight=document.body.clientHeight; + } + } + if(options.show) ele.style.display= 'block'; + ele.style.top = 0 +'px'; + window.addEventListener('scroll',function (){ + if(options.autoHidden){ + if(baidu.page.getScrollTop()==0){ + ele.style.display="none"; + }else{ + ele.style.display="block"; + } + } + },false); + } + } + + fixedBar('backTopBtn' , {autoHidden: true, top : 186}); + fixedBar('identifier-pannel' , {autoHidden: false , top : 956 , show : true}); + //淇敼寰俊鎵爜鏍峰紡甯冨眬鍚庢坊鍔犲井淇℃壂鐮佽窡闅忔粴鍔ㄥ鐞 + $(window).scroll(function(){ + var vtop=$(document).scrollTop(); + $("#identifier-pannel").css('top',vtop+"px"); + }) + } +})(); \ No newline at end of file diff --git a/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 b/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 new file mode 100644 index 000000000..1e70f7d5d --- /dev/null +++ b/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 @@ -0,0 +1,6 @@ +o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.051782: @value" +["// leanModal v1.1 by Ray Stone - http://finelysliced.com.au +// Dual licensed under the MIT and GPL + +(function($){$.fn.extend({leanModal:function(options){var defaults={top:100,overlay:0.5,closeButton:null};var overlay=$("

    ");$("body").append(overlay);options=$.extend(defaults,options);return this.each(function(){var o=options;$(this).click(function(e){var modal_id=$(this).attr("href");$("#lean_overlay").click(function(){close_modal(modal_id)});$(o.closeButton).click(function(){close_modal(modal_id)});var modal_height=$(modal_id).outerHeight();var modal_width=$(modal_id).outerWidth(); +$("#lean_overlay").css({"display":"block",opacity:0});$("#lean_overlay").fadeTo(200,o.overlay);$(modal_id).css({"display":"block","position":"fixed","opacity":0,"z-index":100,"left":50+"%","margin-left":-(modal_width/2)+"px","top":o.top+"px"});$(modal_id).fadeTo(200,1);e.preventDefault()})});function close_modal(modal_id){$("#lean_overlay").fadeOut(200);$(modal_id).css({"display":"none"})}}})})(jQuery); diff --git a/public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 b/public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 new file mode 100644 index 0000000000000000000000000000000000000000..fdbb7004038f559959e84d0f38032c11968fc944 GIT binary patch literal 338091 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

    !7?l zO-jLNvD01rFk%$7LlRNe_R?TMA=mf?;t*}`^n>S1c#wD8YGUu=1MiCqax~dX`^6iN z?&#tj9z)gf8Op)W_R4-y%8g)mS0`-FZvtg$K)R+!|*IGSBcvm=QWFZpT)5jw%8U?Y*_#%I&qdHaKM|43!>pEpZL zZVzQ`(-=4}{nG2b4 z48Bj}Dj(PTzM<#5M^8&?ntQ%TgZqj3`y3@4qrpPOa|WRE(HSdBCg{~-oPR0VSPJUo zG0NWH_PPwxa`JR+Fd-ir*ImJS%mL?`RKPZ*{y%aDRkzBZxQgw2xP|-S&%;Yxl_<7b zl{pGb$B4VM;q}b#3AerxDJJXA2yR+c<(9utPVSn{%fKW>X~ooTnoqdt0X5g-h2{BW zB*ox#h@>R9+ho{!3opmJh&xW1*sO0e(tD-o?($>>OMIPfvjK2{XOEob2mm_o?M`JL z!ksR-(j}VnK>H&%cf=|`I-d6Mh>rEONK-!^snJAq4+{!MAH;<4SaPyD@X4=tS=+TaFLJaXEWjsCp)?>f^;z? zOm;3D1nB0Ji%Y0Z(rn8413LkVo+k3TpaAX>UJQz9PJC$gfvE;7I%7V|9=@w3neCud z#_ao~m&DV@U&qVdQ+R1SR0%l8gc4@Vb?9dYtp4IUTIZfBx-h}Ef(i~&?+T{1claUR zHu!Zc@bc(wxQ*bX^I=OaI(X{HKdJI3IT=!e>9x8>jBt!5vZmE_y1>&4JQJ*naS)`) zCJOW)xT-?Fm+9Mg`J1;zx#h!r%e#x^#>?a1VxjlDS3_VY`Jq0P)!1Jq=6e8fbKTml zL1ZfNMG4!4Nb7r$_*C_~kwc9f^14`Z1xFQ}pjs!b^@kt&kW)_x<6m}+ z$qCK}A0FP*UpGh_+vXKNWvy;pMd^}&v_!R41eeOSG`Ck}di?BqgBT{Hbl|xC!l2t7 z6ghsH0(=iYg`AN!8GNJkb5zlGQ6Urj;c?f)Ta`I6&a%Fvibe$R+879W+tJDX3xuX6}vm z^r!YVJ?~Y%qD@N|fhJ6O6iQ~SFF5J4lQ;xL-_&J{DLub?EQmuKDwhc?GPQuqv-sxi-hWB3J^foR=~=rE;c0^*ef*_P=!B3!04l}%BQSyc!jE9 z<{AgdQJKuj0Wff_=-lFA$`N+W(*Z^k7=-wg|I8;3?pXFN;AW~Ug;kk`?#Pzzg0%>i zaKCwv1V*yZLI#xp3i{YEEQfbcgqB|n$aPDhe?B>Lpb9mcz-tMOddabowt_eD-epr`KjevT0)WHUIVtJPDTfr}sA}U~vARPOZ#~3l{;DIXamg2yr0Fqx zc143LbuCej(kI!avGUXrfC!DsiLK7f69FOICN7IiDm_V@aKGv38h@PlOV?{gCU_Ks z>LwbZ7-r{q?(WvY_~gJQy#orwmd169JYC*&t4=4EqKNg6}<(B`HYn+^dS z8X=i}$iE&-A1kN2Ui(E%3$qL}`8if%*u6Pi92YW0rVb7do-Rb6#52HU?9#4nS=1g2 z<@1ECiJJDv(`t0#0Bl)AR&EhJ&6AZ=rA#>-(v^d?L}!`yA5N!rQLiTn@fL7-x~rKPlk7NE`z0KPE%(Qm$AjQEYXByrO_?WUP8zV8%P(?_=eQ zc20+0!|g`Lg2#nf-B@iS0aGR|rRtubXEWT0+b6j*7dB+$Z}(P6uO zj<|va6)#~}oy-dkbsv5(}Lws6LRi zt%GVrTl)C5D);pC+g2d$&z3-~{kE!`{aW>=Gp)43((40UKSY zIE*a|%+U$VZn>3&mVViVQ0ks1j-s2sZeDQ{iY1qjkh4 zru-3FHj)J2gaFc@CW;{5otN}pBijOni6h&Hh!KaX{;Wv_43Zqm{WUjGO@Tf2&b36f z>=ZBpuuTL6X(=}edgJ8bi~!DQDFg?947@TVM@Q8UJda3(IH)@`M@B{fqd(9Oxhb+6 zX+cqPAV7X)HNTx^ett?mHj7d9zrL z7G*J>=Ihb2nDFmvQq0$HCdHZz<5#2QS~u$0KT~d0T`T>4FLxV(TrKkT z>3j}rwRQvA`uuD$=la%*(cnnyaCwLnPW9O$oNgGF)j|KFZ;Y%?;Ep%v?l0Z(DdxzPCUyq5hf{Pffnb3GXUFR2X zP!pXm*2TqHxHXy#JvNrn8YD8hAXJYSur5JigCCxtr#m@(a(GrqEka}A%VBn*$5MBp z5YBa`hxLQs^$8+7KFqGY-!9qJipz5C7p$w74rSjoKYIGmFf3P}c?FeyhxArU*)8Tm zNZ+^w%n5i~9zG#Z(4v~2)20NoXvJHbwNDXjulN$QXeY~u6dC-`8?Jl&j^^J3b%dCB zcyieOX>>JO=i`e}$A`|B*J_&Lk9VnjGI;j+)7MW=2J4gklYIgUPliO#-F$TWgc2XH z_Ae3Ud=lNkQ5M5_cA~o=#BTc$xZ1f)-|2FNE!E zieXo+gr9s~bO#^t#$WjMgd*B0^pbT^n)!IM=;Lw`iZ4`lvkvgHrTwZPpAERZiRvlo zRDkHC2WfjT`!USo<#}C{|B@A3LtK_hh29sWCMbK)P!%LGVFbyVUwJS-wq2#uIetlE zw9C>)(evM&B6j7#=Au`nj-!6W@!4-bvG!dnY&Fj9kyHzKSY2LXjW{?jFQ%{ZMKPM9 z!-uZWN*s4j+x?wFhJ0G~V;ESwTs{B+pG(k4Fj&Px`i*}}+$mrkx4F`}+01nsRw!iZ zGsgh9XFL7}aTMsiOoe!CtV*1Izo%7}0VsyF5Ga=ka zm-3<_(@}=qF=E$Dttlk!BR&Xi!DzTHPIJY71k5WXg^xV?b3|zp0@akcItTgBZ6czO zZf1EK_toQ2Ghu?n0yl!RV&hOpF$@(^^WOYUj6lj#E@&gNFLKo)C7q4%p1^%$TaA06 zJ}VoF9(*ysRJ`AI7-%f1%S*qwme$nW)pU8IS+ibN8Dz6l>MFU7-HX z94nQ&w?|CNa^fQ-8i$} zbP6p&)sVhALc422NHLqw9$7#Eu>Z3L&^ReUhm%SItcYjSPY1+_-9=c|3?wf{g`&-9 z+X@{uR>+FgLQC_o24#Yyg=&!_N-`a|uJeL98_nuXsF;6myV5;IIU}^n#Ts_m6)uh1 zf49ZW$qdJ~pTdy+Pn~1KANGInd^J6IeD0Lhw6;vwEh_bV#q-g^jU>r(Zk>$+8hi zii7#1V6?;AgCOfbJT~}083F!3?%uSyt?SDBecx669Vm3#Aw-arWG9_~f?2X8$9m#H zk449J%W4%wf+AuNU}Mk_Qs4dl{%fs091N7?&h1-uQ;vvp&OZC>VeK^!n|Zm4`mKY4 z3Y|Oi;rknk+k#M+nZHBgQl)ckRsBopYcYm?V89~E54 zlK#4ww@fc0jrE?_rBmFj4#FzKU}{u*RO#--9jSF8PzQy9kQo|X^8Aon?L8+Ze5v~i z3{>+=?1X=O-BMfkjvUanz{Jux*ovyTYh1`=@=QuJGHR&*(Oc#74f|wR`fwjo20^Lf z$q~roW1m1dpw!?>XTt>I`$7(%d~z%eSF9hdSw%7SBn}J7+A2)7x_*XV6h0n2k;k|? zDQoQfwH+m|`d%#afyI@bR-ECGaAit_8BBBuAfUYUx=(6d#f}h#@`_s8Bs=(W+J9+@ zL!AD1M#_JTy*h5AXPQ)anPMJ=BMkf&6bze^$tfH^j58t(A{6r1RpIve6kH%Yu%L4b zf|h_z;ba{3`ge~lY2wu9(|p%P+iHj7i zc7hTc!7d{&g9}uWJA#3*^Z{OYnR9!|7O0yk0>nWk&J~+h&Qqm(@@zM zsbMs|H%F}HM(Zw~?l)e<0qi#kTRFT?v~)=O7Q$IhxQ@vm?1a-Okw|Yek>Bl1W~Mj* zGr`rOr!Y4iEA$!wQs@Yh7C)b%%$|X?#yA;FIZQ^=>fV%!QWJhiPwnmLY5*%3+GvZ}hF-nG5dseg^~0{o zj_f3*ijubp)fVId=&%xywEM|0VIQeUmH9U5D24k8&MJxE)Zi$Z@Y6S616k0_3OWIL zij^dcxIev@!-A(8tL#gB?4Kr5;m|sqzSKAvua;{CwH`ojL_eh^WIQ@@m)#YDN`jb z*x8x2hy3{D6PoKzM_1-N2bKmIs0#s*;t<}~5zVVEl0VC|ho7S~dpNcj*SWM|oL>|8 z0{f|qhSEEBlwwxdqTfo`5Q4f-sZfrAMsq{h+BtT#sHTQpMiZbgmG{A*q@t8$^UM>6 zI$D{g5V(}PAr%e-+*{)X=837|d=?7Hwb|q1EPThGKJFctbXc|t1zt_H-M&1N=bhO+ zsZD@4Ci@l~1>kvhcw8L@xW4MD!arSoT`z_OL1aj;77T@@(DriDy9i{JQl{?iPTCbm zbV2+ktbwyHbffF4pUk7!{SCBS&)V;*qq!o~ks3HpTC=K21DwVZ6wubBy@e8A0Rhz_ zXqW4G@^HhTNOxZ4Wq;vb%?oo#F>Cel&F+RpL|WoM{9G!V4w7q)CYIMihrGES!IO%J zoUgZ0Dfh(R@D*E=y@r@_JMlmutb_$U3E?m<4R*7HpO4gzU<^ZTDqg- zpterx@ckJmXYR?PlklliBn$tmDokZvAWX`lZ{Z&eh?l;n5zlU(0hoffj|uW2)z8zd zU-qBL8oq~}eBaTE*qQxp4?Vf2fdc0H%Ky4|Q!XMh^Iy~Yd^Q}kx7K_~`3oaki-o(* z@s2=xyh~Dq{cWORhNDq@<#22IiUgrP)~kB7AafU$E?*G31XtaiLjWXybz*4TxT71l zT5#>sxyNcz%8~-)(|Z`Lp`}>8dAb*!u$?%}q$^_HDNC{!{jsj`OA?(gCK={@(P)Vb z>c7>=-mHJxpANY##xr{F$&H&x+p=FocLg`^RbH}EQ@#VJW2HwUCRhCFyUf2bsALZy z&TGM*c%n|YJC?q$6jl~#e2IVdExiUO?6 z%*^I0QjbG6x$SRkH}0tHu+AxVZ%sM|U+F=_UCT8mPplfI?ggZ(gCxh2jRrlMSn~(- z&f|IKt9j=OV7WiKIP3pHKvw(NP4e&#JAdcq1YPNH{|H5VI z9AA!YQZg(1@etpoA2u{Oym9fS{j|UPkAHt=nUdA^AIoi@?(R^3Cwh$ze*`wa`0l~a z2#TZ0@vp6Sou9Zv`SPJ0Y!EbG%qAm*2q1olgVAurY=QAGuRUrdx{@ltqHvRsOXSGKjP@SM_lM>&xhyj9A$@!pZ^U5(P zo-!Yh6kHDw=>=FcU$(h@uDHzE+2nO0RQanvySmDCm@HhClyA8Wo%n=GH^t^uJNv$v zOk~?@B?xXP5_LoxHz^P7k767Y)Ba(j&N`Pmbg8*u z3|?}`W1*~KVHZaqJ1X5v&$pM|ufsj7SsvAk9y!b=bO%_nxRzhmOBB z@uw@NztMNmJBX?RFs^W<8hqv8##I`Geoi^hV+$O4J*2**{rblvQ3(Z+{9`gXmyS*! zQreaox#LbLhDoxT!bkAzOWiwcrC$Wx7^v87j*nf`)3tb$U=o*PV-id>WaU4>s(~=) zZ$~LJreUR|dlO@GJ{Vb^OLQ%$v%M{*4+BsewFyzOCdMqd?)_gPg(=k|Cf**{24OoC zXG1%`>>C$jK8Z=Gf}X0y=D`4ODPnAfpeJ34f-2++YA1!WMo)@pahZ3D_PEHN_SQc_ zu7JF z41;gyr!d4!&!L8O(8m#*FHpLgj7aU58>FI$3BsK)HtI^)3`Lb}f)-V#DN;?qQ+5+B z?clg(mupoiAFsBnz_ktPy1j~R{eT@)Am4@^BJ4wqHS2-3nXR*9HjZ0ppQq>j5%McF z^Tu0$^Co}u;AhgL4sB}*vadD=ms6eyv9O?cc^#v$Iiz0Gt*)Xg0Q}drKMHtDm^bUY z;DC(D7BSzNw`WRR6!TQ{c=>6i>JAh`WL_^34i&Fe&D29$Q<55q`2aTWlbaT5b@D`K z=;2YXH<#e)~!?69tL;xP>vV^c;SlC}E zULQ6F7Oml324iB~Bq+j^B!Ggw5&ifvM(aY-4}#d^rBmE+)F@zwwK5 zzq*^=vqJBS=p*`~UVHTpwPAB#y$OSvzC)roX;vB8J6=qQzMI>kGOl`A3w^R24(KBr zZJXDMg;TDy#>x);WTO)2KU&zt^`orJkkz>HWh{-Y;n>1_PAT+9chd#xuk%3+uX&9k zMXl&`&3)djhih#)Gxpasdo7WcCwMc85Dm^-IJQ#+bnjyLW-t<)vLj@YUI5W=_zd`o z_ne;f7xM}I0I=}dGCw_Sof)-)wXw~HyGi^ys8D3G;Am>FEK^hS^*8Y|2q#M4(^HU` z!3Q5j;CU2F=cG26Hhf9M=5T8H%un<3(ae?1tw1_DQ0!LaHz}VQ%1V1&|tc2d4{@}eBC&ewB$j`LDOYLaA$RX ze0f<|w;0pkWAfV|x#oV$v#x?x)Lj-F81NaF9B&k@hkLhf->i_K7vk9a-EE3sC`F>! zl$NM}b8Rw{6MY)E*53pyYK#h})-thUJI$-LGrxKJ)-6RY@BvN_FgA^$DVLLvS!2XS zQ7lZ)@}A5;SFixyu+!l=*%Xs{_6s)_2BsP>D+(~&F5lWtp^r|5Ifv=%L2}=vG4#HO zg`TxBL|0!V9>h{L?hI`|8@{F41VX~zq3pZgm@H&+L35*BNU{ejXP|6$253_LhG;Sz zizD1k5=uT>#**c-Sbj9Bk0=X*##^aZ?bxRr=~`U`kR&PTGLAE{AZJ;4=VOnuYmkC! zI>j!D>kFBHA;)neeVLj*b5j0-h?LxqAv0*|U-N zB@LAASu-Qnry$r%-&Gx-3jzlvl=9PYO}Axek}qbsSjM@79bsKQf_kxVe1*43j4uL9 zvbf;UrPMgY98sOPE9O9ET;qS_I5@rgnZ?hNkaFjDb5wfz!jQi(UgX@7LTQKwKCvD% zxXr{DNQYLTKRTF`3WzEm|0%=1NefdF%>4VETSQyT_(hccGt>|h{hS{DGUoPz-xdur z8BL~&&>7f27DJ;e{n$kr&{s4JK|5CtC0FOr!m}%9t_g+ltZ#&pj9(52$mvgy&#vZ! z5&y@1!8*fd;_CHa@GE){n2z|Wn@g>g!X417G^Ka6W*$IL);jGqF_@s>{<(>x%sLu+ zkSjV&uy1{9O$VljTJH{Mk5G)t6=nuuEa9__CoVDL!|sT;MrLtxtoazuA6#j_fp=lH z6V8HNn}-5HMpu3G7YYscH^Ns&>|}jkVij|1H{J3J+m$?ml&l^tRty4Q6eD}6e-K}X zGhd{!NWSJjuHijvNG>&ORE+x5u~a!E3rm=sK#>-u(#9Z0_<=P|MLWFoe50v}jD|{M z`zmx(i3oBcnAML!>QeGlzHv}T4E4$wY;zOg#UwloTN(1i_?Sif;rmCD0>C3m?g@P+ zna-LgoEPL~myRSq%Ngehnk&!)SgUyr8O2*t3b8)LJz=)Wit0e7NN?l)hqK2ccz+LU z=KC1^j4o99p9yA6KIjb@kQ5dk>`k zJlDNnh#lMSyyWLEheW^e_pV!retGfqzwR;?6{EXx_m_RY`+57W-EQA3w-jObf)}@+ z9)9wy{hV5IpFF#{-+8U>rMmxR=a)SdYU^6zIK`?lzx~61>oP&Q?{0g=FSPrehuUo@ zH)@=d&XciJ^Kb0mBa->HZtl09?eM4d%o5-nOVCj5jgbAn<*aaTCBCYUzV#TZ4K0-_ zn2g)N+4JXhxAE~2+mT$a!+XAN5+m0v2~=ow@gpbIH;f* zgk`ya0U2_{b=8n4q{lPLgJITdQ3~#eh4aJaK6ac38siWJB?{jOc zQRybwF}&X-0Z)-*Fl(iKvmG0ELHQbQ{e3nOz3K#VUsM584mOsVeQSRBwdB<%(wE;f zd8TF5t7${KV{Mr}^-SvrUGotI>kemMi+Spv1Q{QVQFoG1G(1AF_6fq>gH)O#=+u$j z0pF5Ok*esE@&23L*RNmiLI}=xSy!iDCkI<{gA}{>!_k+!f0Fy(M6mNfCUR8R;eE;v zKGyopAw}Jr`96;nEUgB1?Z-?%;|8>RIHp=BYuM~VccK$T1c$Z1 z1JdjsQ9mZ;6kpeO_We8i`oz9>xUWw3Rj9>}>6aGM8v{-^@q;5Q$3~QH9dQM>&Nr}= zVrG(-{-#Z+1+VhN%jVjIwroOL7QZxDfEO|;UJw-bwGQbvA4C$Mbj)`aqE6>F8P75$ z_{KiqyZ#tV@9Kj49rsB?nu`wAGPTb{5d2Vt3FC{IG`Ts&7e7NKvDgZx8#$WgPieo z{0!Th1hCh=d*kin&KuQDR>y^Sw$p;Z=H1c(DHchx5LwxcY141bFGqIZZx{ z!|fvpf%EeiNed@1b8H;-zSAsTQ=OEAepra-)D`5H&lfk7_M&%WYW^eU z*rr!=ye8~IE&#;ipkI1p{VY&PvU=)rF%x|Cw()B|l4hqfIy@02nT%cyEF|)*^Ym@! zsPpDoyQ>FEUX$*>;rQ}dHGUnC{StbY>y6GPaI34+A(^- z!aRM0gW>4#ZC72LLuID|l=&qKU|p7dIzqBusTBdyw-9-57GJajMw+T>@N%^kAqQwpW!nA~{i z2UDI74YuuI(0eV)seb^i&I{#UnJ2d;X9YMpcvUwKPi2+PMAi=Z;m|6^8EI?2QjIDG zQ!s;#kyr~;Eu>N%7r|;``yo3Bbf-D=XOslH^Xwf=?Mf|-G=7tbTy6xH6UsB4V(0w^ zoMS{Pp)VvG7IeOtj<+77k~qdZ;VlToGLZ%}iHfBr?fC`J)78}zImS=+tP!1cjZ_{%&XpdjaSSUa$F?@*0<^`v zd&hjW<}Po&6o2(p{~~qGpGAQvRfkIF`WapKN3Z*DRoWq~n(zAY9yFpyx*@<{KZQby zfOck_V`e1J#~tGgc3S)Ufb+3oGOe+K4@_@cZh_!cxVHg@!6v@dtH;v`T)+fvO$h!R zx_*&6G?wPe%P-y7z5x~K12CXr8HS3r(7009c@}?^Z7-$b@-=S-OoPz zw2k_Hn}*iHUZzqelNIJ#e^`mHFCZHHM&gN>cu_RIVU!OCIl6X?JpWwm3L;pOL7@|Cyu1hZ_oJRBJX*$pp+ zp1);@#`4bS-1lY~%w7O>zq|b$CCIn!0|(IiJKOhp*Dek>j-qAnpejY4;ESTO+PJbt zx-xX{{42Qr2HA_e;Arr)NDUmDB~-iJibdWPv?DCny$D7ce8^O_O>L;~=PFcC@fquT ze{`A|l-(yo2mroI%WsC_AlCu;Ndf zPoCj5zTwGEEViKnI$>Qo{D-X$<%o``T6M7X-@RLyqht?icS|?YS$G7+NT`gRGL~)D zUNc^z7}DdXBi<6ZJC0DzC&-{$aSzFc-RW$7K=i>SZ<092<@Xwi)QPDZ*P%9csX3THGH7m35!`^L+_Cf4_ z(K$-#j(>GtVf!Iur0p5*e?72S{K~lr3i&4gi0?=wHU11vq=xA(tcw7RzoE_lMunw2 z&qH_iKq|0a`&@Qfb-oN0%NlskkzUJRoT~Qiz3eS?(fnRE4>4 z95U#ABYPHAl#FY1U+JCJ^VZJeF=fYME~0c|c#x~`n@mc8EDmkA^wBN*GRd=37#aF3 z{80>5C2yv&9TmKo#v)HJ?&Cds%OH&K6B6h@2n1%{67XexcGZ->FhmQJ8(nNNsw0SB8Xi{b$7ep*p>p;A{bJ){V6vo)&h zr8~%TivH;w)08#oon|clz_2(q@7mon9tz3ezv z!`hdNqIjbiPvWRDz>rfwFHAbBVQX`0uJp9ImK}kv;wuzaiJ;urhza{UArrHLS_n{t zS0@xdv=$kHpTNv=WU}VOpNA@>s5v@YH8^d$uN-OKL9_jv-SWh>7}EZrW{9utmkuq@ zn%_oE0(2LBhXkxGe?&Eibi@injtZ;<6vIz*PV+RYgBm@QLrM>LLgsf@z$u`@Mag%9|YG!b>5A>hF042?FSYLo&ZqR;9yC?ag6 zxKo(%imy_jsmmGEpsWozM?vW;YWoXv{FS%D!YblJ_4WJ-jD-o`qZ#F>4!5!Q_q%5&XU zWF3<)Qk@A#ULzhBa$n)Jiq%Cs-{Jd{ZL~q0hfqa8nx^1ROsVrPEDsR2LOBeibg3d; zO~H z{dV`7SAszD71!CC^t{ma*{9=X-{Orl7QewI4oXQ$ps?;`)xx@aj5)o6Cr)FHp!&n7 zt)F&7i!(Ucl_IWX?t|;@_gW}-zd~q@7vL+!)d~J=@WXb0RZ>}CU#2u=RSZIn-~bh% zm1IQ$zbGEEkNJ*H3z-`vre~2thwY>S|tcioy3`%dXQJ-l^UBMDeG(YIoYCl+ry+twZ&lioxeiUB_d zqpX)!|FDt{rdE7y(%aejyKop^_zJBs|7dN@0c&B1e)|jg@Y*i)$Q!VB*N7nDNUlMg zK*4kgWB&KJ^ZmH6D(kCUdA2>Y=c=7ThCCFg#0~vO ze`q@w1M~H#lb?_){(@uD-$r0{*IL!d@_boq`GEA&VPQ0X15C+~wcNc-#@T;Lht_sJYRe%a%kwx~rtei7)Sb)8g#nd3{&<8bPNd#oJYEOOg_WPNP?C)Baw)*Xx^PO_l>~A(7Tp*R#pVuwd z8QE<+y7r6y?PYjRp?R<^vMm2zyQulOy^8s@hD8fqtw6JW77cx4dzUE{@p3#`>`l^d z3=Gv^9x)(rS2LJ&;<7XkM=|ncEmx_nhmGq@JJRwth!W~aAyeqRW(E#(PPFT!;j4jy`tC^v6?vqEFM{0 zfT7an6cnrWnj|zjXX$gPJ1`UvA-|1PmlQP_jR^K^0Djz71Vs-?twtUaL2cYAg-l*+ zEC8_H%5(!QZZ4UB9O5rMt;bY2;lvMHq?11)o=pcB`O}EXv0LU<11?|kt_d6#_&!IV ziHk-9#WnE@9)}5lFsg>qK^`-W8$&68q&!%0*RnK3dwnA$gYEy66AyGQ+;JQcpNiU= zlyZ5Bcu2md8j)l8AW==FpiADVe<1;%LM?K5B}`3(ae6A>{M8(-Irj)xf<8JiqBWn= z!g=Jv!}E*z+wANJUjP-ppnjJksVw_dVTR+N_5R8PK^NMqm=d3arGSYAkpRD_AesNW zbRxyasT|(I4IYjSZJQ^7#Oxtq4)zyOpCd#k^|)<;eAH#((tx14G(QN2+OIm~3o1j1 zEpNEtg@;?Rl>?_R6w-|ws`DXX2yC4aA@uZ_8$}&D^9a%a(4`_I`+=mNotC|A1W6$u zm;+H+Pf=p<^SML~N0{QS#_b8jAN>~p+BAruCy^C-VT&uN#rRED8~zyjK?R$omn08) zaMk$b{Oo|bs0XqnKeIy#-qPfB{t{xeXEt0OT5!JI5$O0%!V}L~7J{V2+8hs1C)`G( zuCy9A{EVE)4!;;UP{^ImLEd)w63@ev!2_b`x||C?%z%n+{%~Qp>|n>OBZ~&N+j0J} z+i_eTjY~AL_kouW_rIe8cm{k&5&j@LD$k-jFihS&XeRq7oKcrvvGAwnSxg5T*E~BD zK0P}n<#5njc82bOOA^F^WWr?eCV2&yG2sr1j<4gB$f7r-^oIR|sd zBt;d{RRcdMu5Qku%iMzy;~NE&iAn{|D-Uy+EtzfdH_A`x1MGd9ryS}E2`nGnhRA&|9T7DhsVWs}{-LVdnO? zFfCwT|G1EN13=?GIA-eP#(3CE#TfM~=CWvGaT7G|wn9e3jptX z$`}VWyZx!(5YjGR!@e%(xZK_MXgK+TKqoqI z=!4-Hk*DF0=sZtV_Fl@*%oGgBj7qLceqg;zky%WbFmhcoCyb0dpqO{_-Ds~7{VZ~I<2ZRV`lukH zSelud;y*`V36EX1TQPbnv< z@w3lFz7d%pMn&Qee_DR1x6vPnf5AcJVrQ{C^94R-LkT(V?@oxnL21DX_-geowSwMH z1IvivQ4KtA#uUV6#Faji5NFXgpG*d`Zzmkeie&nbXWq(GYT}r`m;xZtr^k?S`yXivoPR5Tpd8zCoed?4fW4408rlH&-v!r_)!u!)<9YD=#qsE7My0qO1tc6DTm0Y826*eg$JJcVVU~+UjL3hQNLsp^hww!;|Tds zy+`)JXYI>ZFMm)4TjHgNNTChihFCLyTh>+~np6e|I-Zu^v)Fu#vB?fW9HX@B9^4_-+(A?1xgG>WoA{Qmqg5M7$+l=H@kPDN6g#MiDs33r4p1tHB zlZT%IDxC0T;)oe18`(q|NJ=8bwrFx>Jk;d zO;gyO;s!lIGS73xH-zNThcl8b<@>-4w8`G?5pASFEz|mrPH#hgicCm3$Ake;H!@8$ zq#3Q1%cqo6jWB7;IZpVb{14=*Kme9>^|(`!g?0zdHZKu;K}bU+cFA|EWm_I9I0nbQ zpxNY`$+{FFUY-zlhB!@pf|mKlt-~NNeBDowu)g~rZ`d^BReb+vrRi|yWi}C`qBaj+2 zugb^SZ>@t8lIc)6|7F=!-PVzAVAJYM@FT}`m|*}%3?ftiuL>bT^?%oUl@fk>=3&vT z@Ew6>`n|pWIk6w*cf6i%;oOC&j`uwZjk5KbiG9V%ZEvH=C%IPp;9vjcU;kzQ=8Y)D zxb?%Mt=+9xxA*?McZVN$Zr#4K%YS$N_^G~2-la2(O$Vfxwu$!AM57uA8YP=Z2P(gc*3u_ z4YGk6pt4{3u5`mma$S1#VnKSr<@TtA1{Vl|pyTGkoZzW2dAW2GG_+W{g+|y4Yrg0& z_h71)m75oa7?wI=hO^~c=tt+ni>14R(^DAowKqxA0r+fq1W$jwyhYyEE+=OFS9VWO zdav&f!EOY%u>PUcLmQr;WLW>?jBJJ@Wi(v>_+l}du~F+E&TyjJ^yrLA-W%SMB5eI5 zJmkkSB58PPN9q3L;w=G4XY(xt8#{mLWPT}G$qY?f{qf1xWPUc7ZVBN}hd>+dCtF{m zw;Rs}CtKe(w zhWW9ekh~tcx(qUf$)ZlZ5-Ck+AU=ve3UPqskVh4zywy7A*TyUpxXvXurByO>I;Z9N zI$A}OARY)uDs0L7|FszI4o`LohyUIF0j3<8mKQ85VP3E_`kfQd22-wao8>_dJD0d2 zDg!{bWvIN>`E~GC@mJl;FYev{>yyX#?mz7QsdN9kZ@#(Lz5S;@bsjwY`r*;T?q`4O zJoxU%Z*kh_JpA@S_tQV{=jh@0U357QpWMIq_+j_Xe{{b3?wg0*Pyg8Y`r(&H-B16c z^X(7cJihnf`Mn1Zy0>rT%LfndKl1Iw9{ugngNNL?o$f^MxBirFeDlNC zM~@zV{WCrNG2MIe!xu;2-@AXry+3yz-}}qM=QhSqKl6(p9(OsqI}SvZZE#bmzq}xHk(zHe1_vZ`^_)2({RK z*K8&*c9W0ff5}%NR!VS{W*U_|Pv|)hfRa@x;FsN_a%*R6XNMfaGA8BTxuk4IRFA@}5wy z$Sux0u5}BKkun|8oR>3f)80YGZytZOCVzUN&eNBz*b}*rq%Y-8+lt-cZ zmDimbu6sqk=eGH|RHkIqF?mo}O8XpmRCvBj+hKX0q141bDXAL87RKeduV~1PxiB~G z)28NfaUDVuR0NH&G?|@CvVSH~o^*i9I(gsz*M|LU2ADbBPlw8R}-5QDAQW7_~sA_HrSbi3tM7vN)8{#jut}#|@ocpl(v2xKe|Jikyy6 zyP<^G&^nY1)_5ldXfL5P-u#y94XaOZ&^qIHf;f-zh?Hl3qhku2>b-L9kLvgAncsK^hlqWf zO{eeH4u-*eaKZes1s*UysaiS9VavSE)FiW@Jv96~>#(cr2xP*N7#jBT&xV?*{;Y`? z@!`-N$+F`~=~^h?l5T2BeGxG})-}p>{ax|CSUV0m-_(P#^B!<)NUYW0eF3nN@+pqN z1EDs%OM;>D8!)kraNMg#W%;hdmRrlJG8FA)F2FNt)|3RCiIr#IrsXf9`_EgJP}RO_ zW-OP?824WdU-psqEFQq>Ry4s6TLa}Vg6%WAfT;8#B`I+3h}(ax71%13A({%*|B?C% zw5gn!LW+7~m__15HOlG0Y5^#B5p;t6t2^l>_{Z1$bOSR`Y^&@AJD4QnyBfvx|HlZk}IU2?h@EhzKQy#x=H z=>`Eb48fUKOVSR=MbAzB=J0FTucvJi4_goRd(Y+tt7pj%JSLhJ>_Le(`T74F+#el>Qkk? z2BOM zixZj3kduU*W#l5#x~Sn{i2MTGJB1bTV@mRm(sq(#2k^)41ctgTo3Y*N*tOEH6W2KV z4k6;+n_(sP#o{Ld_PNp$-<|J}Y{OeOW|Qpg8Qc0v%iTf{MGomgl6(0aoEGXAK_MDh z*8$^ml@FQwE@iENC5J39=jq-IFyvD)7V6^U=id!9mIAm;zi=QOj-1cjj(9-au;tG; zsWdXse1&#nq%=5=7vV)cVgsW74jzkD8z^Hrw)yHiBKwZNkQChg02~y~@_VM&Igr(} zx&!thHPTLN7jmr3^$cxn_HXDQoeLplrk5m=4O&|fx{RqS?o?YlP+Ia-<9DZE(ctn+QGVj(kZS1|^{fopwbnL)L%AMh#;h3U*@@K2P`7uKp9 zCA;!-ySgVgT}0BvX^467C&^X5YDf5i90}GA*L~&V)d*;)U&TDH;zME+C*=UHEc~K# z={sR1!YqdOO?P%^sr`ZF`YuxXw9|;tz#;_4U`5`${f_q|Q!U0Kzxbj*8{8)i!HjHu ze&V#KCd5WAQUA5N<5s(gGB;Zo`=55Jk+ zogAn#XNesoM!k(g4}S<3v@)fN5B%=+_%YT8)rufln@1dZSamZ=Y#&pk!Xg2Jy z*+%O2J*f_%9*{SVgT3;IyVe(Z3=(RortgbVP2a4x&;bE(-m>U50Ra-Q%K>$^NaCr* zvyej6HJ21#N%gGRP1?ql5v=1&Blc$mkOkWO&6QOHL6h~ zTE>IxY(p7cqmy(vz_Dd7P-3u@xqysf^RvmxY>TuNtsN4qY+X!;6C9@|_^_h4?2oYZ zDX!*#$1U^>16jf0cSBX-)_c*Fs{Tl@_ZU#VfdawTi5tz3Ydk=rKh?-HHob1Nk$$gCQ66t0MaxySzKe4oP7 z4fcLqqVg~R`RMvhlXL|N2S zS0w|)`JYIlaUvag*%~Cf=Fb#$fvHK33?dQD5BN>xDR3$f46WKnG{9nk?hhU*o~t6I zreUbMClqPD`keH@ul1I{5hGtA7p$Yb8PEOVISX?iW7~Z2olh8<3@*qTN|M2?3ob@C zHI*|l&RUIfD=XvdmH`(nP0F>+jwrk`T(z3Z%O zAg9ct!OMgEc77CaoLX9_W?aOgm9-7cG~Up$nvK06?8^jR8}Oh3s|`hnJug78=~;q+ z#`9XaQT3DC=3UY$$2|J}A-T$%Dw+MH3qbpw)R*FUe5ZZ9={pDw2^R?GqelSW&IkD> zuAnx$bZo90hquhfsqyL3vprAU=7YAOu{~Fcs2cj#)fw0y^jZ{Jv3Uw-q7!D{N{2u`)%G0+Fbjo#tqanX0gHjqdu9LApO5_UeeOKey=P2wvbCwxJD&79L`{6 zyZF00H(OUUNSTT!DElE!azST6l;aZzHL3qlKE*DjsMJ%CfNA+8l#r+ag$3a>zr5aQ z|1!I2m38-FM|;X@y2COx$eMDbkhbDrbV!;hRuKL8V0%Os5gagaU6H#y4C%>0|0=$l)f)EM zbhSmUqd4AasX5bW@eZdPb7~jFQcsH~F*TrJ^-<#qECW4Mt|l1&6m-DH^ARlr0HN3v z@*{_~e5u5|X!wHXv1$dErm~0et#f724D)k(RVgPeFJPR2 z@|J+d#MFF~^wb@y_(C?-r_BP#^)T z26D`gCao4(_NkI>*1A%Qw&PH_js?e-bbdj8@KWyls$!Cc;^b~QJe2#3kaG1>GLMc4 z(D8TB>2!&)RqhoDi>3c)>iy@qUcP`P%(NPHz(3rI`D$BPlirLA!$^vzwI8J7vA?`5 z3x$8$CC2z2_u$cluNT8FP)OV-uDOp@*MjNuTc!(>CRs&S7Se3ULul~~Ot#=&4k=dR z9?Ob?@&^&mL(B8RYuSxqQPDgkGX^trU6s6z0B7g)@{YHm z&)%+8%m&G!GcW-0nXq=q#)?8F)jgt49EC}~w$@`9wpd;hY({*9liOGc`;M26sn+_z5a?uy7#G8CY(wfw)48l(i7j)! zq1r{-8Me2@S#6(A8^Hlf-Wqu7gd|-b;lx~mbM~Ju_jm$6erlRCESBt z6!0KPYS*lPC8a+_iT=!)!1LJYi`#fAAQ_wx;V*_Wz?zUP;AYKm5Pa))9|WebJJmaz z;k5cb1jjH7DhmVNdOM?odJYeKyv`c?6bxH|?pMDYHkhheT3eFdWV)VLcB_VnNFt!E%v9ZNGCq~;%Vnk{cu)$0?etgw)1YN9a( zAj(pfQxWXyl!+h zwFbIQZ`rChUP(^`d21hNan?QvYSefZXPEM5*YKkWG`G&=pduN^UwfK;?gz4l;S_jt zn`{Rnm%2e&*L@t2yO`XohWPI^8&X8?a2ySvz02QXgUgq;N(biurAO)poy9xhADF#} zc9NC@p|F=W9Ht;`IUIrgoGLI5xo2N~VONB}p`^I77`lBVt$mg+-F#tQyZcza_n%UV zboUwYRsT+5hEr8PeZ8}fCTaiQ$-1g6;dnu&I26q4=_hGv%$JP_%pc_qT^8RtAPGE) z5RRRf!NW@iJ2PW$nVWd;_W%=R`=}m9{pMc}pndf82i(OE&fHtveuJMau%+vPVh6wf zT-7d97tzwZ%%cYdrl{3E&Ej8d6%(}Q<_<#G8b!!U!D_~&AZXNGDDsponL-0ov~=!s zZqp+jSkpbv67nlzTFF zAWPeEIKLDEuC%kBbBCR64riAT9)|p3ZB>kH*fR%0-$P`Kdqn$qNn`Ptq4EzQDP z##*>*cz)R&#q-O)AM4(BC+$$u$qdeB4{@bPFclw3AVp4rTPbQ_c6~E68W`A=Pb;cNaA&K3N$q~)c1AcSgr#~gA-+ozf4Rav3HKswpwOaVk(!>{1)?;aMssmcMF&9LX zy%QE?a+;1Jb!OIObi@}C#YN6;h*zJZn^EVa^Qv=B?K+7LbVCWlYQGw5P6MT!AA-PM zEH!#!YoLwUru^6I-b+@Tl6O*>a)gFfp_#;k#6&l=&s4-C%rj)y*R{hgSq(?#ogtK5aQYp=MKeQMV`$lKzp@uK8xC zyoR0c7KY9GUEQJFj}a&9iG#cG()`+ zcsW0d>9Cgh@&287o4$D4sjprKQg(VL{-}a|^dE7hOe!?d@97vVf^v`OZTv#*J zPIQ)YohKBUR%ktE7%(vNQ61r={Q0DTSB{hnb+3D{DKt)bvIO{$jWpVz)!=u&GZ-(KFF^i(fivH--e#e7j;v52hKaQAb z{2lW>f8(g!h}XVN1eJ=Px1R0Tx(R;yb^93*{npmJ)5kC)n0KnueQRIt_QlXU)qC-B zcsfPrEWgb38;l)kzBqu3LJyIcoS%B-VBza8!_CfU_mtHp>m&PZy8yF1**V!I?-``T z7NUEZ_=1;?!@U=y{`O*!^HHMOC+tzU?d4bd{%U-guXX)vubqERuO3s%0$b8QNN7P( z?%7>Z3F)}Ex?|!u0`nB42y09dIT|k1P;k(ls9oR~LX3tdgfFz-9gOZ$gKoGzrY6^2 zWlTH6XD)q)%CnAyab>lC1% zNf6$<+HOyA)YgccVLs&vtE@ZH|24#KdEDDdRr^28(LWY$`~ug_d_5T|Cl%wwk10?@HW8p!vK8ofneQd zNhYWU)`H~(Mz^A`0+rSwJ6R}3^)%R~`spp0kBWKn_md9I2}t!gI-viWTp=a)cJJIw z852c@FFGgE&iC)$YF}QYb2ZvI-Z@)$wx()(aTg=>#oggHUi%L7Fm`&wT+w<+~owwPm)ir5Akj8(c^AI5Et5-*Yb) zjg5!rLS8*!*AKT}`CM(wFX~OtGnx7c^cJ6E>fU}O5P0Pvz@;tL4vg#B4jfsR?dPWU zpGh;6jLTQo(EChhJiY+=ZGghc7XlTmp<{BssA%1uFoxlP_2PV!GLn?Z)1t0#yaa=5 zKgERCzr5y48{0}-ktwqi4|6S)UJwAzRu;4h51n_aizvE=PG@^jn!2}mw2tHy=rVFw z&F7OtJS1OPMn-A-kRUHhDypvX=~FDvVlhxmWz|#4P{AFi_54tE+Lxwo?Y730UB*|& zJw{xGLO|O^;)hG77ia%kyJ#vcAqET8%~!a@C_HN>C)sIRRV7HHL3~zk%0Dm;u9@@% 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 z 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 literal 0 HcmV?d00001 diff --git a/public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 b/public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 new file mode 100644 index 0000000000000000000000000000000000000000..675388492f7e15b1a508ed815c0a3fba569b9d2c GIT binary patch literal 20153 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 Gt^WfBy%mZ8 literal 0 HcmV?d00001 diff --git a/public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 b/public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 new file mode 100644 index 0000000000000000000000000000000000000000..800a1f0bdd7e365cbda72e44d64a72c4d084c747 GIT binary patch literal 37249 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 literal 0 HcmV?d00001 diff --git a/public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 b/public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 new file mode 100644 index 0000000000000000000000000000000000000000..d6cb37900acc45b0ed519cbb8d9e3a4db9ee5b97 GIT binary patch literal 41860 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 literal 0 HcmV?d00001 diff --git a/public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D b/public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..b5d794c2977ea30c3b3a86a0dd4df785a9b41127 GIT binary patch literal 2075 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 literal 0 HcmV?d00001 diff --git a/public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae b/public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae new file mode 100644 index 0000000000000000000000000000000000000000..de9fe3690bf71b69748345ab65678bce70e86f40 GIT binary patch literal 2979 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 z

    #CFASI9u@X*DE%BFY9MbrQmTiSkFBS_p(TML@l;yU>&B5A(eeqgNxcF1(cp1l7 zw31wjucP|1nBdtNigP+F`oKT+V;MKEmZH!!? z#YE~Y)_Aii>A(W$zUt&U2Q$^t6aSI~iucE~v8JQxj4on>02tfS`w)Dg5ii5zDAo%T zhxEVfj)P=(cOlHAOqnbK5X((G4d1@=*Zz;UChMzn$}4_i5nlh5xruP~p2b@}1}cz` znQ?IRY>ImqoaztZ4lOmxPWBF&-<)@ho*uuPqjpZc8}Nbd`zIXOnSAfK8Lj)pYp29=4mfLZ*P9F z2Ztu9j2(REKp6&#?Jxp~rOfZ5YossOJ4tA>u9SRT2zf`UqK-v53KXP>glSZNN)p6O zPOp}EZDdme3N#`FD;(0(0;gT1X;w2JhMCg!_DbLU#t16tjG!ZmL2Q(9f1XCZ_da6h zv%R0KW=|^~Y3{9HvvuK@O!dvX^yXc>T<>@9#3t}V(E#Q-)j^^7CyW`w`bVSj*vGDE z5uSGGf?Jevt>g19azrN3eR8Nn#^a>mI)?ZP`?oiE4}Zt!{6l3UTzPZ^uC)KW2lcY5 z^uZM?aGZ|I`&QC<)4<91U-U6$bh0}azd_01WDAB0Zo0sNT3;oP6q!!g@U~Za(GoEu zJsb3kh$|Dp6vloQd~k%NgRXkGE`bM!T3W~}sc6xOuelB_Cv`Z*F{gx|-+s#|(deyz zmQbub%=z;YR{Ed+*1L~xQEGqwc(#}=-~D@gJ^Pi%FBrmbB5yGZ@r;nqkQk8q{e$~K ziIIr)X2Vumr!ip&e`CZR`A1BM<~`k3%5JX4X_+(_UOgcbIK*!0Sio5>cANOgQG0!G u)87YDi=O;V^BIyH0>eN+9yx**Koce>k8nXGmX@pATSCNf!<5^<{{I1)@xD?3 literal 0 HcmV?d00001 diff --git a/public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f b/public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f new file mode 100644 index 0000000000000000000000000000000000000000..50be99779f68332178079fd3e9ee162bd227e640 GIT binary patch literal 4321 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 P00000NkvXXu0mjfoy1#p literal 0 HcmV?d00001 diff --git a/public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D b/public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D new file mode 100644 index 0000000000000000000000000000000000000000..98b7931ca395d909f1575dd81afd138818cc02d2 GIT binary patch literal 2104 zcmbVNZI9YU5ROjO<)So~q?e?vqNzy)TAV3SHAmC$B)6Bxs5%Q=nJ|B*jp*#~b%S9 zO@wKv`TEz=+`6+8C-$N=DJ2jt6Ej8(EZc{rxn`waFfGoL9Q^#YFK8pPr)!cT=BB56 zk`!IJqUqf5OcP{P7fhDtwY>#D2V|v4pbwDnqqC{@^vwC9%N0lh&;%gLx7|@+!Y?!d zozl}ySu)V9Py2`1Y-1?-c>)o%{as>6% zhHkLhfxtUMsK=hOKsc%hus7Pu-lG52B2_{~qY3~NNb+qS@O&T8{8HG9FBG$yNcfA) z(caJr-_`(60c1%y$-@=>=+`1d)2<(h(taJrUr#m|@4reICs4T0_;!>}ADbn^>5 zdsljQ4BkhXnye@&x$Bc0?mXYON_3IH-WXoshU)}Vbc`v2Ys^p$ru-ITqsWH_wA)@< zqNz%eVz4*urY?6bG2dH2OoYxNe2a0jI9$RKRYiS7f(ohujrFXF6?=zW68=1+rU?x} z6Y|b0{&Rc0cfwViz+xJ&lGKC60HzZDDen_YjpA&OVWnsKVymU6_&%M&w(?$QgOnIIkT!r-RP&MLgH z@c8CnHy*YomT@bp({V#vE;z3~Ye~~+?uvdoz8zIqVVtzruD)!i{a#OMkA_-g8+}n- z*F~F4nrXzugMBPY@f}KuY?997AwR*Y{`K4oPL_EXNa9tj1%boSlX28)X4zafMzOInc9pa%6L^rSraOXB>D_tj!G1|^>;5)%0Tf_B&;i>x8CL@1DX^6KLu@PHW zr<ukZjR1A8I4Anz#m74M}=t8-tyUYS>u%JBLF2KsBU?wiCG5|VPR<&HNxI`I%YLx^QV_j7$6OyDRqrFi9 z=9}@}D!9amGS;#JY(Ew-qEe%Y8ck!Od{EZsTo|MQI>2T z*Peg$7V|iPX$t)Y+QD@kpq(8=)J~T`CxgE2WaHPMOj9hwlo?Pg1CFUMwI?6%oNx)r zqu(DrJRy&ML*GxwpB{brMIm3yyeV1y&{i~4G8()f9oLSfhC+TP$Vv$m!SUq-v^(wa zW)oo=I^Lg`Zk;W z3zo%#=Z2)}reyP?XzV29DWJI`g?>OG56Y(AHFM?5j!>W}z*2xJ-*kpOg*-DPVn?J(x*++?0mbJ1E{MvOp7=6 z1m0UxJqf%S!ZAfayfv2Y2Cb__ri8M_6aXmD^gC?ubZ5~1n%T3j6!WAgDhK#5VZ5{^z!o+RlGRlOwjdf1tX4L9oY%==RpMR6m^1N5na{!DJM#^Ky3E6 zqd{xzSU0jh88wXgObF`JmNJQNeL2iVH$#q>M(Op+H|N(`uiI6whXW&at)8r}>ar`O z%`C1Y{hcjF3q3}QU7E%AkRIW~;qA>z+lF(MR%mUmvbq?Cqg!dK-L}G!=mFJ~sG-^0 zj6}p?Rp0rz8PM9+n~%o6Tunw+IroL+Yi$OmYO_^$8}+tpdcc>{bx)kJqq!#Pa${qJ zp{dcz9pYj3Wj}H$aOXFtOVgwdHmMP%w5myW|BV<6r}%*T9PpRDJO zwWd&Rws18<`B-m#tMz$gX;l3-<&7w9>JxD1$^8w=$DKEu1@#E?)F&A|wANrW(A+wb z^ZYJ{!-{D68<**?26T&6#f34XtEq2+<$z|VuGQbFD2I)Cxb+ys4^(4!ZiKK=-MUN* z`$V=xIh^T8?$K(_zffQ}P#OEMS^?0zaH{1p=Tl_>s#O{|73YHE#x%{0Y4?(_?KoMC zgD{A$;$ImNRUxin)NH!@7y9vMBs{dlUGv6|{lE3?*Sev|ipIC?Mz7ueW`+B|t@2I& zSd@mXqG!@jB+>3F8X7tIjM;Zh+)WTh(>2Lfc~jVP&-GuPDCGBTC(R1#!Vks)^zmV` zyNu2Ws!X(;h}caAg5qi{RbyE~R`6GMFLjf2`q;5iw3O80`o%CiH$ z4Wmgm#lpvcW@)^9H7FbqVlaVewiA;Dc;Pdw%lIBkvuF;}PSxSYtjGCP+T*GfH1z1| t*e#>6_E Date: Wed, 7 Jan 2015 09:53:52 +0800 Subject: [PATCH 02/45] change cache files sites --- .gitignore | 1 + config/environments/development.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 0cd336786..d5a0e5f2f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ /files/* /log/* /tmp/* +/cache/* .gitignore /public/images/avatars/* /Gemfile diff --git a/config/environments/development.rb b/config/environments/development.rb index 869e9a9a6..765fda433 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -11,7 +11,7 @@ RedmineApp::Application.configure do # Show full error reports and disable caching config.consider_all_requests_local = true config.action_controller.perform_caching = true - config.cache_store = :file_store, "#{Rails.root }/public/cache/" + config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = false From 3047b523b0dd7d071a4c088bd8699987685f3979 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 9 Jan 2015 15:28:43 +0800 Subject: [PATCH 03/45] add expire_helper and change the code way of set cache expire! --- .gitignore | 4 +- app/helpers/expire_helper.rb | 16 ++ app/models/bid.rb | 11 +- app/models/changeset.rb | 13 +- app/models/contest_notification.rb | 11 +- app/models/document.rb | 7 +- app/models/forum.rb | 11 +- app/models/issue.rb | 12 +- app/models/journals_for_message.rb | 11 +- app/models/memo.rb | 5 +- app/models/message.rb | 12 +- app/models/news.rb | 11 +- app/models/project.rb | 11 +- ...lesheets%2Fapplication.css%3F1420357855%3D | Bin 2125 -> 0 bytes ...calhost%3A3000%2Fimages%2Flist-icon.png%3F | Bin 2009 -> 0 bytes ...3A3000%2Fimages%2Flogo.png%3F1420357778%3D | Bin 1987 -> 0 bytes ...0%2Fstylesheets%2Fnyan.css%3F1420357855%3D | Bin 2005 -> 0 bytes ...%3A3000%2Fstylesheets%2Fapplication.css%3F | Bin 2000 -> 0 bytes public/cache/568/F80/views%2Fforums | 145 ----------- ...mages%2Favatars%2FUser%2F0%3F1420357778%3D | Bin 2001 -> 0 bytes ...2Fimages%2Ftransparent.png%3F1420357778%3D | Bin 2014 -> 0 bytes ...2Fjavascripts%2Fwelcome.js%3F1420357855%3D | Bin 2044 -> 0 bytes public/cache/636/EF0/views%2Fprojects | 185 -------------- ...Fstylesheets%2Fwelcome.css%3F1420357855%3D | Bin 2050 -> 0 bytes public/cache/6CA/670/views%2Fissues%2F2210 | 22 -- public/cache/6CB/680/views%2Fissues%2F2211 | 22 -- public/cache/6D1/6D0/views%2Fissues%2F2208 | 22 -- public/cache/6D2/6E0/views%2Fissues%2F2209 | 22 -- ...es%2Favatars%2FProject%2F0%3F1420357778%3D | Bin 2003 -> 0 bytes public/cache/701/020/views%2Factivities | 127 ---------- public/cache/705/AF0/views%2Fprojects%2F2 | 21 -- public/cache/73B/E90/views%2Fprojects%2F17 | 19 -- public/cache/73D/EC0/views%2Fprojects%2F28 | 19 -- public/cache/73E/ED0/views%2Fprojects%2F29 | 21 -- public/cache/766/4C0/views%2Fprojects%2F300 | 19 -- public/cache/769/520/views%2Fprojects%2F330 | 19 -- public/cache/76B/500/views%2Fprojects%2F134 | 19 -- public/cache/76C/530/views%2Fprojects%2F315 | 19 -- public/cache/76E/5B0/views%2Fprojects%2F290 | 19 -- public/cache/777/640/views%2Fprojects%2F299 | 19 -- ...vascripts%2Fapplication.js%3F1420357855%3D | Bin 2026 -> 0 bytes public/cache/7AC/380/views%2Fjournals%2F5295 | 22 -- public/cache/7AD/390/views%2Fjournals%2F5296 | 22 -- public/cache/7AE/3A0/views%2Fjournals%2F5297 | 22 -- public/cache/7AF/3B0/views%2Fjournals%2F5298 | 22 -- .../800/views%2Fmemos%2F427-20150106032234 | 25 -- .../A60/views%2Fmemos%2F427-20150106082740 | 25 -- .../DB0/views%2Fmemos%2F582-20141129071403 | 25 -- .../D00/views%2Fmemos%2F574-20141125104842 | 25 -- .../E50/views%2Fmemos%2F565-20141128054331 | 25 -- .../EF0/views%2Fmemos%2F576-20141126222236 | 25 -- .../170/views%2Fmemos%2F579-20141127101435 | 23 -- .../D30/views%2Fmemos%2F582-20150106082842 | 25 -- .../320/views%2Fmemos%2F579-20150106082907 | 25 -- .../cae6965b71862532cc646d5995119a5821980260 | Bin 6735 -> 0 bytes .../0906d39339d5f71e61207417e8c95f43c783442e | Bin 3017 -> 0 bytes ...s%2Fjquery.colorbox-min.js%3F1420357855%3D | Bin 2059 -> 0 bytes .../f06dd67d6627069f7f7215df57898d9b29c4b869 | Bin 10539 -> 0 bytes .../e8d35b3dc5255332a9a7f5c7d92c79635729fb41 | 25 -- ...%2Fjquery.leanModal.min.js%3F1420357778%3D | Bin 2062 -> 0 bytes .../4cea7ff935690a5e00f53017e2452eee8a0e6254 | 232 ------------------ .../60567173164aa1f75c0f9517835ebc2fd5eb0ec5 | Bin 12051 -> 0 bytes .../bbefbac7540e09e1955cb47321965813266c7a8e | 69 ------ .../57a7c6d86d2ad09012bac99d46b38f9f33a970a8 | 6 - .../88eae75bf7b81a196ba38d86bf54e7162ab274c1 | Bin 338091 -> 0 bytes .../e9938e23e7a85ff3d431e045384ccd84dea93ce8 | Bin 20153 -> 0 bytes .../afc8c0ba867511cd69e8b5d43542aad5a2e716c6 | Bin 37249 -> 0 bytes .../213cd47b5ee47b691425e1fcb6dffb207c707d8c | Bin 27657 -> 0 bytes .../6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 | Bin 41860 -> 0 bytes ...uery%2Fjquery-ui-1.9.2.css%3F1420357855%3D | Bin 2075 -> 0 bytes ....8.3-ui-1.9.2-ujs-2.0.3.js%3F1420357855%3D | Bin 2108 -> 0 bytes .../0e09a16c714ce54739affa1a4e945aa699b4baae | Bin 2979 -> 0 bytes .../dd147f7301bf4217fcb61f9e99d343f4f6ffbb1a | Bin 11948 -> 0 bytes .../f743173130fefc074fc3faadc21911a5f8ed7eff | Bin 84782 -> 0 bytes .../0917fc42cb8dfbd8bc5add2088e60feb41c28e0f | Bin 4321 -> 0 bytes ...eems_rateable%2FjRating.js%3F1420357855%3D | Bin 2104 -> 0 bytes ...ems_rateable%2Frateable.js%3F1420357855%3D | Bin 2108 -> 0 bytes test/unit/helpers/expire_helper_test.rb | 4 + tmp/plugins/README | 1 - 79 files changed, 74 insertions(+), 1448 deletions(-) create mode 100644 app/helpers/expire_helper.rb delete mode 100644 public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D delete mode 100644 public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F delete mode 100644 public/cache/2D3/CC1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flogo.png%3F1420357778%3D delete mode 100644 public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D delete mode 100644 public/cache/559/261/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fapplication.css%3F delete mode 100644 public/cache/568/F80/views%2Fforums delete mode 100644 public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D delete mode 100644 public/cache/5D4/CE1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Ftransparent.png%3F1420357778%3D delete mode 100644 public/cache/5D6/771/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fwelcome.js%3F1420357855%3D delete mode 100644 public/cache/636/EF0/views%2Fprojects delete mode 100644 public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D delete mode 100644 public/cache/6CA/670/views%2Fissues%2F2210 delete mode 100644 public/cache/6CB/680/views%2Fissues%2F2211 delete mode 100644 public/cache/6D1/6D0/views%2Fissues%2F2208 delete mode 100644 public/cache/6D2/6E0/views%2Fissues%2F2209 delete mode 100644 public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D delete mode 100644 public/cache/701/020/views%2Factivities delete mode 100644 public/cache/705/AF0/views%2Fprojects%2F2 delete mode 100644 public/cache/73B/E90/views%2Fprojects%2F17 delete mode 100644 public/cache/73D/EC0/views%2Fprojects%2F28 delete mode 100644 public/cache/73E/ED0/views%2Fprojects%2F29 delete mode 100644 public/cache/766/4C0/views%2Fprojects%2F300 delete mode 100644 public/cache/769/520/views%2Fprojects%2F330 delete mode 100644 public/cache/76B/500/views%2Fprojects%2F134 delete mode 100644 public/cache/76C/530/views%2Fprojects%2F315 delete mode 100644 public/cache/76E/5B0/views%2Fprojects%2F290 delete mode 100644 public/cache/777/640/views%2Fprojects%2F299 delete mode 100644 public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D delete mode 100644 public/cache/7AC/380/views%2Fjournals%2F5295 delete mode 100644 public/cache/7AD/390/views%2Fjournals%2F5296 delete mode 100644 public/cache/7AE/3A0/views%2Fjournals%2F5297 delete mode 100644 public/cache/7AF/3B0/views%2Fjournals%2F5298 delete mode 100644 public/cache/911/800/views%2Fmemos%2F427-20150106032234 delete mode 100644 public/cache/918/A60/views%2Fmemos%2F427-20150106082740 delete mode 100644 public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 delete mode 100644 public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 delete mode 100644 public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 delete mode 100644 public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 delete mode 100644 public/cache/91C/170/views%2Fmemos%2F579-20141127101435 delete mode 100644 public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 delete mode 100644 public/cache/925/320/views%2Fmemos%2F579-20150106082907 delete mode 100644 public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 delete mode 100644 public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e delete mode 100644 public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D delete mode 100644 public/cache/A95/AE0/f06dd67d6627069f7f7215df57898d9b29c4b869 delete mode 100644 public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 delete mode 100644 public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D delete mode 100644 public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 delete mode 100644 public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 delete mode 100644 public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e delete mode 100644 public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 delete mode 100644 public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 delete mode 100644 public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 delete mode 100644 public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 delete mode 100644 public/cache/B54/AB0/213cd47b5ee47b691425e1fcb6dffb207c707d8c delete mode 100644 public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 delete mode 100644 public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D delete mode 100644 public/cache/B7C/511/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery-1.8.3-ui-1.9.2-ujs-2.0.3.js%3F1420357855%3D delete mode 100644 public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae delete mode 100644 public/cache/B8A/F50/dd147f7301bf4217fcb61f9e99d343f4f6ffbb1a delete mode 100644 public/cache/BB1/DF0/f743173130fefc074fc3faadc21911a5f8ed7eff delete mode 100644 public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f delete mode 100644 public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D delete mode 100644 public/cache/C83/011/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2Frateable.js%3F1420357855%3D create mode 100644 test/unit/helpers/expire_helper_test.rb delete mode 100644 tmp/plugins/README diff --git a/.gitignore b/.gitignore index d5a0e5f2f..0ac235089 100644 --- a/.gitignore +++ b/.gitignore @@ -6,8 +6,8 @@ /config/database.yml /files/* /log/* -/tmp/* -/cache/* +/public/tmp/* +/public/cache/* .gitignore /public/images/avatars/* /Gemfile diff --git a/app/helpers/expire_helper.rb b/app/helpers/expire_helper.rb new file mode 100644 index 000000000..0a9cab69c --- /dev/null +++ b/app/helpers/expire_helper.rb @@ -0,0 +1,16 @@ +module ExpireHelper + #index.html 涓 鈥減rojects鈥濆 绶╁瓨閬庢湡 + def expire_project_cache + ActionController::Base.new.expire_fragment('projects') + end + + #index.html 涓 鈥渁ctivities鈥濆 绶╁瓨閬庢湡 + def expire_activitie_cache + ActionController::Base.new.expire_fragment('activities') + end + + #welcome/index.html 涓 鈥渇orums鈥濆 绶╁瓨閬庢湡 + def expire_forum_cache + ActionController::Base.new.expire_fragment('forums') + end +end diff --git a/app/models/bid.rb b/app/models/bid.rb index 3f21c451f..f423266b8 100644 --- a/app/models/bid.rb +++ b/app/models/bid.rb @@ -17,6 +17,7 @@ class Bid < ActiveRecord::Base HomeworkProject = 2 attr_accessible :author_id, :budget, :deadline, :name, :description, :homework_type, :password include Redmine::SafeAttributes + include ExpireHelper belongs_to :author, :class_name => 'User', :foreign_key => :author_id belongs_to :course @@ -34,9 +35,9 @@ class Bid < ActiveRecord::Base # has_many :fork_homework, :class_name => 'Bid', :conditions => "#{Bid.table_name}.parent_id = #{id}" - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_activitie_cache + after_update :expire_activitie_cache + before_destroy :expire_activitie_cache acts_as_attachable @@ -154,7 +155,5 @@ class Bid < ActiveRecord::Base end end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/changeset.rb b/app/models/changeset.rb index 5f3f2e03d..101647824 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -16,6 +16,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. class Changeset < ActiveRecord::Base + include ExpireHelper belongs_to :repository belongs_to :user include UserScoreHelper @@ -64,9 +65,9 @@ class Changeset < ActiveRecord::Base includes(:repository => :project).where(Project.allowed_to_condition(args.shift || User.current, :view_changesets, *args)) } - after_create :scan_for_issues,:refresh_changests,:expire_cache#:be_user_score # user_score - after_update :be_user_score,:expire_cache - before_destroy :expire_cache + after_create :scan_for_issues,:refresh_changests,:expire_activitie_cache#:be_user_score # user_score + after_update :be_user_score,:expire_activitie_cache + before_destroy :expire_activitie_cache after_destroy :down_user_score before_create :before_create_cs @@ -329,9 +330,5 @@ class Changeset < ActiveRecord::Base self.repository.fetch_changesets if Setting.autofetch_changesets? end end - #added by lizanle - #璁剧疆娲诲姩杩囨湡 - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/contest_notification.rb b/app/models/contest_notification.rb index cc23cffe0..0ccd0d5a7 100644 --- a/app/models/contest_notification.rb +++ b/app/models/contest_notification.rb @@ -1,11 +1,10 @@ class ContestNotification < ActiveRecord::Base + include ExpireHelper attr_accessible :content, :title validates :title, length: {maximum: 30} - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_forum_cache + after_update :expire_forum_cache + before_destroy :expire_forum_cache + - def expire_cache - ActionController::Base.new.expire_fragment('forums') - end end diff --git a/app/models/document.rb b/app/models/document.rb index 29a761827..e607b9292 100644 --- a/app/models/document.rb +++ b/app/models/document.rb @@ -17,15 +17,16 @@ class Document < ActiveRecord::Base include Redmine::SafeAttributes + include ExpireHelper belongs_to :project belongs_to :user belongs_to :category, :class_name => "DocumentCategory", :foreign_key => "category_id" include UserScoreHelper after_save :be_user_score # user_score after_destroy :down_user_score - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_activitie_cache + after_update :expire_activitie_cache + before_destroy :expire_activitie_cache acts_as_attachable :delete_permission => :delete_documents acts_as_searchable :columns => ['title', "#{table_name}.description"], :include => :project diff --git a/app/models/forum.rb b/app/models/forum.rb index 2157e638d..dc1603288 100644 --- a/app/models/forum.rb +++ b/app/models/forum.rb @@ -1,12 +1,13 @@ class Forum < ActiveRecord::Base include Redmine::SafeAttributes + include ExpireHelper has_many :topics, :class_name => 'Memo', :conditions => "#{Memo.table_name}.parent_id IS NULL", :order => "#{Memo.table_name}.created_at DESC", :dependent => :destroy has_many :memos, :dependent => :destroy, conditions: "parent_id IS NULL" belongs_to :creator, :class_name => "User", :foreign_key => 'creator_id' - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_forum_cache + after_update :expire_forum_cache + before_destroy :expire_forum_cache safe_attributes 'name', 'description', 'topic_count', @@ -46,7 +47,5 @@ class Forum < ActiveRecord::Base ["id = ?", forum_id]) end - def expire_cache - ActionController::Base.new.expire_fragment('forums') - end + end diff --git a/app/models/issue.rb b/app/models/issue.rb index 17ef7b577..a7b1a5943 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -19,7 +19,7 @@ class Issue < ActiveRecord::Base include Redmine::SafeAttributes include Redmine::Utils::DateCalculation include UserScoreHelper - + include ExpireHelper belongs_to :project belongs_to :tracker belongs_to :status, :class_name => 'IssueStatus', :foreign_key => 'status_id' @@ -80,9 +80,9 @@ class Issue < ActiveRecord::Base after_create :act_as_activity,:be_user_score_new_issue after_update :be_user_score after_destroy :down_user_score - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_activitie_cache + after_update :expire_activitie_cache + before_destroy :expire_activitie_cache # after_create :be_user_score # end @@ -1555,8 +1555,6 @@ class Issue < ActiveRecord::Base end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/journals_for_message.rb b/app/models/journals_for_message.rb index 720b0d914..c71fbaf47 100644 --- a/app/models/journals_for_message.rb +++ b/app/models/journals_for_message.rb @@ -4,6 +4,7 @@ class JournalsForMessage < ActiveRecord::Base include Redmine::SafeAttributes include UserScoreHelper + include ExpireHelper safe_attributes "jour_type", # 鐣欒█鎵灞炵被鍨 "jour_id", # 鐣欒█鎵灞炵被鍨嬬殑id "notes", # 鐣欒█鍐呭 @@ -54,9 +55,9 @@ class JournalsForMessage < ActiveRecord::Base has_many :acts, :class_name => 'Activity', :as => :act, :dependent => :destroy validates :notes, presence: true - after_create :act_as_activity ,:expire_cache#huang - after_update :expire_cache - before_destroy :expire_cache + after_create :act_as_activity ,:expire_activitie_cache#huang + after_update :expire_activitie_cache + before_destroy :expire_activitie_cache after_create :reset_counters! after_destroy :reset_counters! after_save :be_user_score @@ -165,7 +166,5 @@ class JournalsForMessage < ActiveRecord::Base end end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/memo.rb b/app/models/memo.rb index 491f4e4a1..495f97ad3 100644 --- a/app/models/memo.rb +++ b/app/models/memo.rb @@ -1,6 +1,7 @@ class Memo < ActiveRecord::Base include Redmine::SafeAttributes include UserScoreHelper + include ExpireHelper belongs_to :forum belongs_to :author, :class_name => "User", :foreign_key => 'author_id' @@ -168,7 +169,7 @@ class Memo < ActiveRecord::Base update_replay_for_memo(User.current,1) end def expire_cache - ActionController::Base.new.expire_fragment('forums') - ActionController::Base.new.expire_fragment('activities') + expire_forum_cache + expire_activitie_cache end end diff --git a/app/models/message.rb b/app/models/message.rb index 21f34add2..9ce4d583a 100644 --- a/app/models/message.rb +++ b/app/models/message.rb @@ -18,7 +18,7 @@ class Message < ActiveRecord::Base include Redmine::SafeAttributes include UserScoreHelper - + include ExpireHelper belongs_to :board belongs_to :author, :class_name => 'User', :foreign_key => 'author_id' has_many :praise_tread, as: :praise_tread_object, dependent: :destroy @@ -59,9 +59,9 @@ class Message < ActiveRecord::Base validates_length_of :subject, :maximum => 255 validate :cannot_reply_to_locked_topic, :on => :create - after_create :add_author_as_watcher, :reset_counters!,:expire_cache - after_update :update_messages_board,:expire_cache - before_destroy :expire_cache + after_create :add_author_as_watcher, :reset_counters!,:expire_activitie_cache + after_update :update_messages_board,:expire_activitie_cache + before_destroy :expire_activitie_cache after_destroy :reset_counters!,:down_user_score # fq @@ -197,7 +197,5 @@ class Message < ActiveRecord::Base end end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/news.rb b/app/models/news.rb index 6567c4028..9c37719f3 100644 --- a/app/models/news.rb +++ b/app/models/news.rb @@ -17,6 +17,7 @@ class News < ActiveRecord::Base include Redmine::SafeAttributes + include ExpireHelper belongs_to :project #added by nwb belongs_to :course @@ -47,9 +48,9 @@ class News < ActiveRecord::Base # fq after_create :act_as_activity # end - after_create :expire_cache - after_update :expire_cache - before_destroy :expire_cache + after_create :expire_activitie_cache + after_update :expire_activitie_cache + before_destroy :expire_activitie_cache scope :visible, lambda {|*args| includes(:project).where(Project.allowed_to_condition(args.shift || User.current, :view_news, *args)) @@ -95,7 +96,5 @@ class News < ActiveRecord::Base self.acts << Activity.new(:user_id => self.author_id) end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end diff --git a/app/models/project.rb b/app/models/project.rb index aa24eb96d..c4d07a1ad 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -17,6 +17,7 @@ class Project < ActiveRecord::Base include Redmine::SafeAttributes + include ExpireHelper ProjectType_project = 0 ProjectType_course = 1 @@ -127,9 +128,9 @@ class Project < ActiveRecord::Base #after_save :update_position_under_parent, :if => Proc.new {|project| project.name_changed?} after_save :update_inherited_members, :if => Proc.new {|project| project.inherit_members_changed?} # 鍒涘缓project涔嬪悗榛樿鍒涘缓涓涓猙oard锛屼箣鍚庣殑board鍘绘帀浜哹oard鐨勬蹇 - after_create :create_board_sync,:expire_cache - after_update :expire_cache - before_destroy :delete_all_members,:expire_cache + after_create :create_board_sync,:expire_project_cache + after_update :expire_project_cache + before_destroy :delete_all_members,:expire_project_cache def remove_references_before_destroy return if self.id.nil? Watcher.delete_all ['watchable_id = ?', id] @@ -1150,8 +1151,6 @@ class Project < ActiveRecord::Base end end - def expire_cache - ActionController::Base.new.expire_fragment('projects') - end + end diff --git a/public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D b/public/cache/1DB/8A2/http%3A%2F%2Flocalhost%3A3000%2Fthemes%2Fredpenny-master%2Fstylesheets%2Fapplication.css%3F1420357855%3D deleted file mode 100644 index 5dc67c6c1f954ad7950b43f0c554f5085c2133b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2125 zcmb_dTaTMo5RO*SCTW^Y(oM6is#XXoQWC9gF2>kiMGb~yjMsn{V`DoHh|9sS#y|{S zU-Db~)IZW=u#@!i6jhcmXXcxkZ-$vU_aDYhjB~Q!4h~jH5-+o6leZinHk%;ImfJ_o zXYZYOkt|`FLbr`haFYb+WCjtj*DaxyLD#f0?}DsS1VhsdRV@=$imelk=HvHwR=9%r z$)6AIKg3V|K+g}SA0B-AO~PM_oDK|bVoHh*v^K|s)8;8?OZfM^C{@TZd3tpZozD84 z-a(kQTAb^Z%!dn@R+i9BU=(dj3oFgwvXW-o5T-taSz57@Bn%uY3*xBkq-kOK{ALKW zi8;_UNf8Ut(>-OHVe1T22%c#`R&`)OjwxFZz6mB1ncH ziRw*%GL-Oh4WK9k-IRgeQH31!Py~8zTxf=xRKyzlS(Y>_l`wX!(2vusNfQL|4e9;< zuPg?x)?8vtztw67FrpQHaB(O0!RM+twlXH_U)9L)Qgs;j)(E2K|4 zy59ft!H%GT+SUzDI}mtlfYvf_<_JfZN$j<@vbX5HQKl=Xf^>-_OBD5{aCo+NXnwBp z`DcoGfh7DzuIE)n0lY4$%H9fpI)^YRSs`jnTh!DskoZQ~5m0h@yDTz`RGNTG%IK2fs<+dA61&5S%Kuq-E zb}Aqi>()NX&6rYl&SL7hVq-Zqs(Cad-zam^mpk2--EQ@4-635u-3)~}GhHZxDz>*; z80rco-60G^cC0xR_)Y)cX z85;ssX9w3)RFTcjHM$?ChC;M%Q%;N0jyfan9C5To6}fZf^Pm+KJk?o7O^gjW9V>PV z$vJLc#Ys&t+^tQI)?=#6$U>}5s7C4<!6jikxn({2yvk8}>Awzo5rK=9ZLY8XO9r_A0&14yS zK^R2ul2^2l9lIE9mcd~h-~Wn)$6dJJ;KgKr`|^INYLX}^T+eI|d%Z6n`Tt{I{*sT8 z)HY=_Ky3*K=0H-=eUx87ht+v;#3-r)OqtX9Lr%H=(_;z$p@%M_k{r8%7eKc##s{nD z5+kZu*NU+HRe=#~lOdW6gNgEC!9M5XD1%W}(zgjL%$^+ARdGB&B6={IWqu+2u1d00 zt$6=&TslI8UW|qFis%^=7sDh4PbeX^>gj>Tt6@q>3BjF91Pl$p8QV diff --git a/public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F b/public/cache/20C/451/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Flist-icon.png%3F deleted file mode 100644 index 69b6cab42e65ae7cc15e45c80c9517b8bce0379c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2009 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 BE_(m~ diff --git a/public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D b/public/cache/51F/CA1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fnyan.css%3F1420357855%3D deleted file mode 100644 index f5ad1a5994060d5cf7c59a1152af7cf8bdf1f6e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2005 zcma)7`;Xd25Ux(q<z z@Dqr>Kb(Ge_~{P`e<^Z0Ft~{+DLT;F91l*}Q_z<1A9zu!kY)1p`a85b?{j(wVcKf3 z{J5e|49_$mt2!__LD2RV z{G6ofWdeOj2|qeJ>Ojw(FZz6mB1ncHiRx{CGL-NO4WL~Hx+w#_qY63dOayu!TzH0> zRP4oiS(dPsN*Fs<=*4Nq(gZ<#^8kPTi|2sXq`qz{oD7O=-xWX420$AD?JLLm=lp+1 z^i?fCg@ixa?^`%u9K!pWs;j)(E38jCy59dH`Vllx+q%JN2Lf*m&|3OVfN*q~#9nJF zdyD=z%X9^4M3+diL{V>wgy;K&=4Tx*K2yvkknk6|pH~$H@VcZb`zZWr0AW(HLR5@M z&K$w>cbSRS(fl?qp%JI$*L#x7+3GB7uM{c}M zF-6B}W%3#`RHIgXgKzj@)_pY$e4v$PR_%C0b(*z2y z3Wwswf1dCBiQJqiQ+9Kfnme-Z$$(<{P+4Oc&=fE_* zS-bk;CL0b0(#>S7CAKjX)pbj>`LqL)S5#{`+GnGc(4m#YrkEllLZFCna(BB{cHu&% zBuZJxj4FiT^bYKlyKXoY98%T+G0}(Hseo9lTl-yZ$CR>j7Sow4HkVVQn(v0}8zmq; zxzlag?N-m$9nuxk%}@xK=|T}yvAxy8P**7F9`Vpeq8r%+dGB_-m97)V95>E*6gp9m zui-kV33O{~Q%N|XHN;y>xP)t|^UcCCHUv^<2iH@i$Y$pn-H%g4AzF7Sr$uQ;os;*D zINBmb?wug;TT#JNooCd<*pSn)Vz-c;9S_ooY55`WiFMWEs!=(2w3FuV^7VRxz3^gF`#M{~Z~R({4Y7i_ZS9 z0sKj>ZkiMU5fyL|MePrSFArfwpn~g{ z{`2<)ZJWy_cNY_NWw%R>uUVU)l zWwL^43f(r6;5G@6WCjs&u&tn#LD#f0?bdd7fGbf1NfRVdy&FtN5`L`-DE3e{WkK(#e2%&h1wD5zEF(=S z&Z_xYmNYAsFm|lakJGFP2!i-`_E$qrlLoq}u(D7@I*}g=+E~!OF!6+h=Ho* z8A$k(!w~Y=K7od6TQ^wkNZ_3zv{r$$KsZn)u{YY<-l6}E zGN_>XfD%cTDC%ty@bVDQ{8Gc~FBJ3iCHzHh=Tt=zI9*begBSke0>Y$Zg{TQpDRTtN zal)XuhgTWgW)*b3H}5L%Za=-xZ>xwiLP?pdC@2N;lN|4ZFtjRknZVu{LFC4p6jOAp zRwi#TLp5sEw-}3h1{%=r1zCj#Oc~U$H@%K7_iwN;SU^mK&LVz`asDb^!U|}h?x08p zrAuQ&%d=L&(M!Ug=S(%BEoef~Pvw8UbSGY~QkYii^@@*zZsOHK!hiiHPg77hl|QyC z{>ywHBsZ7~y%5dT4VJo&|2KS}Rm2fWJTKq%-Y;>=&EC(8Q$LlEQ`MeSAkJQ$nJefn zg9w_4NQ&m=eT(%OURVTtXS|!p#zk}rsyIfLLiTDdVjZ3_Tf^dBuZJz zw91F!>|WR__uX*DJEW`e;cW;|lCX&p|vn^4N$S1MtMYem_=zf|R3embxSuILC>YRLV#PJSQ zu=UROcBrHMZnzqS!5@XW2s)r#0SicQzPrCRCS}`B}}93&P1_zFd*{is7BoZx0q=rtJn*|AbOv?27GqvVzgO?$8r4dJ5ruD-C_L}ll>ny?@Lva zL`h-$W_#4{|1a0y@@bITri|vGEeX6iloa$P -

    -
    - - 鏇存柊浜 - 2015-01-06 16:29 - - - 妤间富锛 - net - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (1) - -
    - -
  • - -
    - - 鏇存柊浜 - 2015-01-06 16:28 - - - 妤间富锛 - xDong - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (2) - -
    -
  • -
  • - -
    - - 鏇存柊浜 - 2015-01-06 16:27 - - - 妤间富锛 - jacknudt - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (9) - -
    -
  • -
  • - -
    - - 鏇存柊浜 - 2014-11-28 13:43 - - - 妤间富锛 - jacknudt - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (3) - -
    -
  • -
  • - -
    - - 鏇存柊浜 - 2014-11-27 06:22 - - - 妤间富锛 - gaoli - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (2) - -
    -
  • -
  • - -
    - - 鏇存柊浜 - 2014-11-25 18:48 - - - 妤间富锛 - freedom - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (1) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D b/public/cache/5AA/681/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FUser%2F0%3F1420357778%3D deleted file mode 100644 index c07b3d1fcdd7ba7bf97e75ee0e863d28381ffb6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2001 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 diff --git a/public/cache/636/EF0/views%2Fprojects b/public/cache/636/EF0/views%2Fprojects deleted file mode 100644 index 231045423..000000000 --- a/public/cache/636/EF0/views%2Fprojects +++ /dev/null @@ -1,185 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420531897.9176939: @value"3I"3

  • -
    - 0?1420357778 -
    - - -
    - - SocialForge鏄疶rustieForge鐨勫崌绾х増锛屾敮鎸佺ぞ浜ゅ寲鍗忓悓寮鍙戜笌鍚堜綔銆 -SocialForge aims to provide a socialized an... - -
    -
    - 椤圭洰璇勫垎:28736 -
    -
  • -
  • -
    - 0?1420357778 -
    - -
    - Bench4Q - (7浜) -
    -
    - - Bench4Q is a Cloud-Based software - -
    -
    - 椤圭洰璇勫垎:8158 -
    -
  • -
  • -
    - 0?1420357778 -
    - -
    - haflow - (5浜) -
    -
    - - Hadoop has become the defacto standard of big data analysis, due to its scalability, fa... - -
    -
    - 椤圭洰璇勫垎:1535 -
    -
  • -
  • -
    - 0?1420357778 -
    - - -
    - - Btrplace is the flexible VM placement algorithm inside Entropy. It allows to compute th... - -
    -
    - 椤圭洰璇勫垎:1036 -
    -
  • -
  • -
    - 0?1420357778 -
    - - -
    - - This project is to build an platform for OSS Evaluating, Analying and Networking. This ... - -
    -
    - 椤圭洰璇勫垎:884 -
    -
  • -
  • -
    - 0?1420357778 -
    - - -
    - - To improve the performance of Service4All, we will employ the widely-used cache tools s... - -
    -
    - 椤圭洰璇勫垎:420 -
    -
  • -
  • -
    - 0?1420357778 -
    - -
    - WDMVC - (10浜) -
    -
    - - 鍩轰簬宸ヤ綔娴佺殑鍒嗗竷寮廙VC杞欢浣撶郴缁撴瀯锛屾敮鎾戣蒋浠跺紑鍙戠殑鈥滀笁绾库濆伐绋嬶紙鐢熶骇绾裤佹祦姘寸嚎鍜屼骇鍝佺嚎锛夈 -璇﹁椤圭洰Wiki銆 - -
    -
    - 椤圭洰璇勫垎:359 -
    -
  • -
  • -
    - 0?1420357778 -
    - -
    - VMThunder - (1浜) -
    -
    - - 鏁版嵁涓績涓ぇ瑙勬ā蹇熼儴缃茶櫄鎷熸満锛岃揪鍒扮绾у惎鍔ㄤ笂鍗冨彴铏氭嫙鏈虹殑鐩爣 - -
    -
    - 椤圭洰璇勫垎:340 -
    -
  • -
  • -
    - 0?1420357778 -
    - - -
    - - forked 4rom webmagic - -
    -
    - 椤圭洰璇勫垎:284 -
    -
  • -
  • -
    - 0?1420357778 -
    - -
    - WSCRP - (5浜) -
    -
    - - In order to meet the requirements of users, sorts of Web services coordination and reco... - -
    -
    - 椤圭洰璇勫垎:284 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D b/public/cache/655/921/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fwelcome.css%3F1420357855%3D deleted file mode 100644 index 53fc3675aeb31284a9c016b0823359bc7b5d613f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2050 zcma)7Yj4_E5UrvrO}E>$-Sn}mRkfC-mC`7HAK1o3QEO~tOt4Li!9YJ)eq6x87#ExH z=+D?s`)~K+3vKtMT_J_snKLuz9%kk~JegN9!Oy~b&{-zQe34bFqU%pUwJOKiV)MBA z{DVKAB@2+IAgIF=SSKMoIblrfd<)=aAaLAl^qMSF1Vhthnk-Uff@bLIlMnZ9v;_Fk z?~fjy;77l~zaNi3KKlHNioaF_OSXl9qw1Dy)&)^Mt{%&E75`pT)Dl@FkFOrU(`j3< z8W2-A(D`jC%{CE8Cjew=X$2xk4ix<~MeY~3UD+Hs9m`a81(}}hXweK;VHjk1ZpxZr z$&MgN=FWnjk`z}Y;D=Q4gR^0DtlassEfy$(WC)Td-?j%`6+bg&Sfyh*nrt-;DMy_s zvXuuTPuEmYt?NmaCDl?Xn)_}vnWtHmCJ5r+?(qI^R6C-nwk<~&G#Mp)fWDr0WV0um z-#AXcl=w5EZJ7B*RQ&O-G;+S&hqq0`GDM?=tWO)3)&45|0n{<-mMxfj0vEPiTZH}; z;^-oYotsN<1OMlXbP38t7f7-|QSVT~(_KR6i z?Xce*x%RDMjE8k|HWkC#q^XXRyFiJu;q8DEUYg(DEXvj$;80w zZiW)%u&V89-1aGb>(7RxK;aidyPVg8_O(7GCt9Of^Xj#hXZd8Hr0cFUWrj0dGL-tp zj3P^?)O*Oo>M23&5#)W)m@F-eIOMqT`@P7Ir}-JIrmRHQHXfBk1KNbV%|u9qnlWC_ zTzgGGZMI-FgnF#Ef!+Kxv~{9(mkMT_HjFWO?<>6x)Z^ZtPQzM^cpBr38rW-c*w?)p zv_XJTaQAff1N-4EG#*ysZd;?-|Bpre+Avi`)rFQ*@3vZB!_NQrZu~hP z2es~Ka1iRMEIA!jhp$NfZ0y%0S|1Rj8@lXhf+gkxVdxFBo45c#q=!vR7ewxX>jy l?I^GDvRhp}k -
    - 0?1420357778 -
    -
    - - lzl - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#1 (鏂板): 澶氬彂鐐 -

    - - 鏇存柊浜 - 2015-01-06 16:11 - -       - - 鍥炲(0) - -

    -
    - -:ET \ No newline at end of file diff --git a/public/cache/6CB/680/views%2Fissues%2F2211 b/public/cache/6CB/680/views%2Fissues%2F2211 deleted file mode 100644 index 28133a2c0..000000000 --- a/public/cache/6CB/680/views%2Fissues%2F2211 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420531979.264571: @value"I"
  • -
    - 0?1420357778 -
    -
    - - lzl - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#2 (鏂板): 鍝堝搱鍝 -

    - - 鏇存柊浜 - 2015-01-06 16:12 - -       - - 鍥炲(0) - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/6D1/6D0/views%2Fissues%2F2208 b/public/cache/6D1/6D0/views%2Fissues%2F2208 deleted file mode 100644 index 031a3fd44..000000000 --- a/public/cache/6D1/6D0/views%2Fissues%2F2208 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.359701: @value"I"
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#1 (鏂板): 澶氬彂鐐 -

    - - 鏇存柊浜 - 2015-01-05 14:20 - -       - - 鍥炲(0) - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/6D2/6E0/views%2Fissues%2F2209 b/public/cache/6D2/6E0/views%2Fissues%2F2209 deleted file mode 100644 index 59eb90bdf..000000000 --- a/public/cache/6D2/6E0/views%2Fissues%2F2209 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.3486998: @value"I"
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#2 (鏂板): 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-05 14:28 - -       - - 鍥炲(3) - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D b/public/cache/6E2/DF1/http%3A%2F%2Flocalhost%3A3000%2Fimages%2Favatars%2FProject%2F0%3F1420357778%3D deleted file mode 100644 index b83e413aa031a3b6736d0ee3aa1f2bc08d74ae37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2003 zcma)7`;VGf6mBNXbh_P6AJcZXX|^FGn{=8{xm=OaNq38Yh$G-2irOCtkE=2wP{Hxh ze}1o^ZTFSkm;-`T0XNJ^bWbc@`yMCJZxH$71wT3thzRVg<;+3|u5%d(fb;i)bvnju=8 zAm}>_c?xK@NZ}ul$%C`0b&bsVqQe(x3NRF)$~T>1PbSZF5m)INmLeKWO~_Cul4xYX zxu>Vgd9B~3X&To`r66+cU>YT94N?^KubcS&Z(O^)E_Vz|pzS@eiP`)-X&?-xGLmiuHx>&M*!Z z0r5^>Ivf06Ey5Dk2^Ih-(DZqp@N}2Z`l{vGSBjYoGWjC&^O~xPydi7qE{c3ILntoT z0X~yh(hR}zyx7UV$Ls6>lvc=zFW#5lUw!^S6)z8&dU#tFCy8o~{j5Y=KM3p+Q>2J@ zrXPCIDj`&Zs1(5!VQOZjd`@t293T@p*M3@JAX|hL;@x%AP}&zn;Li{tA$Jy?6Z~`$ z%~1(f@j0OZi#N;=U3+XV{C$*6KFhf3Vnfu${A9iP=g%*bufN-tC91q8?9VIt^JMGC z7len#0q(2|BJtemU+`^Cm3nxWnObMtX@OTSw$p)nq#qaF(snYE}_oedEw^ zFoZhht;bx<)wRibZkuZgYqLeG5!Pe9^~~1ik*QMk+l14@q^V87oh$V>SdTk*HuLLY z&QqJD^w3;`(Li!E!(|Q^)LY6|7-n9&BBR z`GIQe%=G{@s#^!P@|rl8AO$lG+g)18_!n@mK^xlR%QB=Xn{gf2K@iz23xI=w<3Ttc zBM8~?6=7NNA{zUFAAX2`g+h8buy~Ag_r3S=7i>I?x83N?+xWkx?ki1~C0XU#R-@N$ ze~UZ+|AX#L)(~>TQgACYWKpoXvWhQ->=xM1yq^vjRZ~Sv;S7GyFY|wSB$LnEc9Is9 z$n(cO^73G^y9_S~s!X)(kl0Off?{jsY7JfzlCqzS&-f@zQJ5BtO^oueCn;K|r8uzt zFgKhXFl`i0(rIq|0e~tj=kG5Eg#$$J@g0@!%w(ZLF%=fD5LC*x4aO|vQsXKE*h|PD y$EC*}eo)9|@O&0<$LG07V~Km8s(eTKvIfgF8hj)Dcu?r3cDhXRkP|u|?tcLOoHaH8 diff --git a/public/cache/701/020/views%2Factivities b/public/cache/701/020/views%2Factivities deleted file mode 100644 index 3e6a324ff..000000000 --- a/public/cache/701/020/views%2Factivities +++ /dev/null @@ -1,127 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532949.9541981: @value"!I"!
  • -
    - 0?1420357778 -
    -
    - - lzl - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#2 (鏂板): 鍝堝搱鍝 -

    - - 鏇存柊浜 - 2015-01-06 16:12 - -       - - 鍥炲(0) - -

    -
    -
  • -
  • -
    - 0?1420357778 -
    -
    - - lzl - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯1#1 (鏂板): 澶氬彂鐐 -

    - - 鏇存柊浜 - 2015-01-06 16:11 - -       - - 鍥炲(0) - -

    -
    -
  • -
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-06 11:42 - -       - - - -

    -
    -
  • -
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-06 11:17 - -       - - - -

    -
    -
  • -
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-05 15:25 - -       - - - -

    -
    -
  • -
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鍙戣〃浜缂洪櫡缂洪櫡 缂撳瓨娴嬭瘯#2 (鏂板): 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-05 14:28 - -       - - 鍥炲(3) - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/705/AF0/views%2Fprojects%2F2 b/public/cache/705/AF0/views%2Fprojects%2F2 deleted file mode 100644 index 90f86c1c2..000000000 --- a/public/cache/705/AF0/views%2Fprojects%2F2 +++ /dev/null @@ -1,21 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.9076748: @value"~I"r
  • -
    - 0?1420357778 -
    - - -
    - - SocialForge鏄疶rustieForge鐨勫崌绾х増锛屾敮鎸佺ぞ浜ゅ寲鍗忓悓寮鍙戜笌鍚堜綔銆 -SocialForge aims to provide a socialized an... - -
    -
    - 椤圭洰璇勫垎:28736 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/73B/E90/views%2Fprojects%2F17 b/public/cache/73B/E90/views%2Fprojects%2F17 deleted file mode 100644 index 50230b720..000000000 --- a/public/cache/73B/E90/views%2Fprojects%2F17 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.956678: @value""I"
  • -
    - 0?1420357778 -
    - -
    - Bench4Q - (7浜) -
    -
    - - Bench4Q is a Cloud-Based software - -
    -
    - 椤圭洰璇勫垎:8158 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/73D/EC0/views%2Fprojects%2F28 b/public/cache/73D/EC0/views%2Fprojects%2F28 deleted file mode 100644 index 43fd553d6..000000000 --- a/public/cache/73D/EC0/views%2Fprojects%2F28 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.988679: @value"DI"8
  • -
    - 0?1420357778 -
    - - -
    - - Btrplace is the flexible VM placement algorithm inside Entropy. It allows to compute th... - -
    -
    - 椤圭洰璇勫垎:1036 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/73E/ED0/views%2Fprojects%2F29 b/public/cache/73E/ED0/views%2Fprojects%2F29 deleted file mode 100644 index c1b2bf3fb..000000000 --- a/public/cache/73E/ED0/views%2Fprojects%2F29 +++ /dev/null @@ -1,21 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.036682: @value" I"
  • -
    - 0?1420357778 -
    - -
    - WDMVC - (10浜) -
    -
    - - 鍩轰簬宸ヤ綔娴佺殑鍒嗗竷寮廙VC杞欢浣撶郴缁撴瀯锛屾敮鎾戣蒋浠跺紑鍙戠殑鈥滀笁绾库濆伐绋嬶紙鐢熶骇绾裤佹祦姘寸嚎鍜屼骇鍝佺嚎锛夈 -璇﹁椤圭洰Wiki銆 - -
    -
    - 椤圭洰璇勫垎:359 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/766/4C0/views%2Fprojects%2F300 b/public/cache/766/4C0/views%2Fprojects%2F300 deleted file mode 100644 index 2b128443f..000000000 --- a/public/cache/766/4C0/views%2Fprojects%2F300 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.1366882: @value"I"
  • -
    - 0?1420357778 -
    - - -
    - - forked 4rom webmagic - -
    -
    - 椤圭洰璇勫垎:284 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/769/520/views%2Fprojects%2F330 b/public/cache/769/520/views%2Fprojects%2F330 deleted file mode 100644 index 6f0b5a3bf..000000000 --- a/public/cache/769/520/views%2Fprojects%2F330 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.159689: @value"YI"M
  • -
    - 0?1420357778 -
    - -
    - WSCRP - (5浜) -
    -
    - - In order to meet the requirements of users, sorts of Web services coordination and reco... - -
    -
    - 椤圭洰璇勫垎:284 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/76B/500/views%2Fprojects%2F134 b/public/cache/76B/500/views%2Fprojects%2F134 deleted file mode 100644 index 9499b1df1..000000000 --- a/public/cache/76B/500/views%2Fprojects%2F134 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.057683: @value"I"
  • -
    - 0?1420357778 -
    - -
    - VMThunder - (1浜) -
    -
    - - 鏁版嵁涓績涓ぇ瑙勬ā蹇熼儴缃茶櫄鎷熸満锛岃揪鍒扮绾у惎鍔ㄤ笂鍗冨彴铏氭嫙鏈虹殑鐩爣 - -
    -
    - 椤圭洰璇勫垎:340 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/76C/530/views%2Fprojects%2F315 b/public/cache/76C/530/views%2Fprojects%2F315 deleted file mode 100644 index 05c521a66..000000000 --- a/public/cache/76C/530/views%2Fprojects%2F315 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530700.970678: @value"QI"E
  • -
    - 0?1420357778 -
    - -
    - haflow - (5浜) -
    -
    - - Hadoop has become the defacto standard of big data analysis, due to its scalability, fa... - -
    -
    - 椤圭洰璇勫垎:1535 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/76E/5B0/views%2Fprojects%2F290 b/public/cache/76E/5B0/views%2Fprojects%2F290 deleted file mode 100644 index 1c565e3c4..000000000 --- a/public/cache/76E/5B0/views%2Fprojects%2F290 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.020681: @value"I"
  • -
    - 0?1420357778 -
    - - -
    - - To improve the performance of Service4All, we will employ the widely-used cache tools s... - -
    -
    - 椤圭洰璇勫垎:420 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/777/640/views%2Fprojects%2F299 b/public/cache/777/640/views%2Fprojects%2F299 deleted file mode 100644 index 2fcdf1bcf..000000000 --- a/public/cache/777/640/views%2Fprojects%2F299 +++ /dev/null @@ -1,19 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.00468: @value"%I"
  • -
    - 0?1420357778 -
    - - -
    - - This project is to build an platform for OSS Evaluating, Analying and Networking. This ... - -
    -
    - 椤圭洰璇勫垎:884 -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D b/public/cache/77E/D81/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fapplication.js%3F1420357855%3D deleted file mode 100644 index ca5d797b7d468438dc9b632e9332ef8df31492b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2026 zcmb7F>yO$-5RXpL<{Tu zLHenGc^4a!>qD(7Bw%NLGxM9-nc4d%VU^&V#9N`xGK#`QQmyiqGeOlV43fp>VfE>i z6V9Urieu!~@d@2V9zK~~K<#u3WF^Qotz`6qE;1Ag0Lv8f6jLgdtB7{DeSCQjpHADH-oTi; znw^Ql)LL1wv+$xME?80IdybWOVUVB38RFSZ7it5uqid2PW}+uMVt_4`SvC_q)u62E z(BuR`+eye%nknTe{GlcCplqleJykw$^Erm1S&F8LH|;@JBF{94qjYprhI&I4Qq+kE z_0%}ibTui9bu~$ns9Grap=0@zFixs~qNsmK4E)d9{^EA2)Qp{p|t{ppIJC4Nlt=cyGYk!gFRA z2l6!WR$JN|{J)Y11zahRqv;&OyvrP(?i`w5t9ka7Vp<4^e4grgRZ$?XORBQ7BA?6< zigK2Z+Y%QwMQ}V1+u4nryf3^z7^nzfz4CITf+<7a2*qhPF&>a zOTti%i{d+i!+nDcWM6wpfd!>JxFFtMH*~pmPWavo5h8MC;X8t#EW$Y|fC_F5hA!d! zSfXQ%tcAC?lE`N%H4WCG2D4Vm|MPu2;c^k9xKJ(^CfMmZT+Af$r#p$6P~lZ!-?QY8 zdGGXcW_ESbnR_=!x8D z*6ez%W$O;@it%k%n6bmTBB)}0qxrtBFwzS1(0igA*c82T80w{7Ygo>4yDAPY1jF6fpttTbO;#2{ZNOAw*PxeuhMm|( zZ!6;(*604#0hk|MiR`)Nqk3g)gJu>J`w~Qdree9n$SMC^&b_c*Fk+aZ~=aqm8vXNWm!U$_Z#vV9|j2ulAOMY zP-gb}&O>u2kxY4Zz_(B^P9~Y~JBFgb{tbK4&mACwH%4)?gOE8?sem$K04iB!b~FNR z5zvS#vY=da9JgF_kyQZ>!n6EPz&jxGOX^F!4XBGd36!g#TrC#ACGfbP>m*jP+&_pX In99!h4?jvm*Z=?k diff --git a/public/cache/7AC/380/views%2Fjournals%2F5295 b/public/cache/7AC/380/views%2Fjournals%2F5295 deleted file mode 100644 index 6c1f6f32d..000000000 --- a/public/cache/7AC/380/views%2Fjournals%2F5295 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.596714: @value"I"
  • -
    - 0?1420357778 -
    -
    - - sw - -  鏇存柊浜issue-edit缂洪櫡 #1639 (宸茶В鍐): 璇剧▼--鍔犲叆璇剧▼锛氣滃姞鍏ヨ绋嬧濇寜閽樉绀洪棶棰 -

    - - 鏇存柊浜 - 2014-12-02 17:36 - -       - - - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/7AD/390/views%2Fjournals%2F5296 b/public/cache/7AD/390/views%2Fjournals%2F5296 deleted file mode 100644 index fe3157fbe..000000000 --- a/public/cache/7AD/390/views%2Fjournals%2F5296 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.330699: @value"iI"]
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-05 15:25 - -       - - - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/7AE/3A0/views%2Fjournals%2F5297 b/public/cache/7AE/3A0/views%2Fjournals%2F5297 deleted file mode 100644 index 20cf23406..000000000 --- a/public/cache/7AE/3A0/views%2Fjournals%2F5297 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.240694: @value"iI"]
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-06 11:17 - -       - - - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/7AF/3B0/views%2Fjournals%2F5298 b/public/cache/7AF/3B0/views%2Fjournals%2F5298 deleted file mode 100644 index 562aa84ca..000000000 --- a/public/cache/7AF/3B0/views%2Fjournals%2F5298 +++ /dev/null @@ -1,22 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.232693: @value"iI"]
  • -
    - 0?1420357778 -
    -
    - - lizanle - -  鏇存柊浜闂璇存槑缂洪櫡 #2: 鍙戣揣 -

    - - 鏇存柊浜 - 2015-01-06 11:42 - -       - - - -

    -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/911/800/views%2Fmemos%2F427-20150106032234 b/public/cache/911/800/views%2Fmemos%2F427-20150106032234 deleted file mode 100644 index a16d8d491..000000000 --- a/public/cache/911/800/views%2Fmemos%2F427-20150106032234 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.628716: @value"I"
  • - -
    - - 鏇存柊浜 - 2015-01-06 11:22 - - - 妤间富锛 - jacknudt - - - 鏈鍚庡洖澶嶏細 - lizanle - - - 鍥炲 - (8) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 b/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 deleted file mode 100644 index f389b06fb..000000000 --- a/public/cache/918/A60/views%2Fmemos%2F427-20150106082740 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532863.155922: @value"I"
  • - -
    - - 鏇存柊浜 - 2015-01-06 16:27 - - - 妤间富锛 - jacknudt - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (9) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 b/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 deleted file mode 100644 index 26cb4e5e4..000000000 --- a/public/cache/919/DB0/views%2Fmemos%2F582-20141129071403 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.640717: @value"I"
  • - -
    - - 鏇存柊浜 - 2014-11-29 15:14 - - - 妤间富锛 - xDong - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (1) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 b/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 deleted file mode 100644 index e101b51fd..000000000 --- a/public/cache/91A/D00/views%2Fmemos%2F574-20141125104842 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.720721: @value"I"
  • - -
    - - 鏇存柊浜 - 2014-11-25 18:48 - - - 妤间富锛 - freedom - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (1) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 b/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 deleted file mode 100644 index 2bcd02c79..000000000 --- a/public/cache/91A/E50/views%2Fmemos%2F565-20141128054331 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.649717: @value"I"
  • - -
    - - 鏇存柊浜 - 2014-11-28 13:43 - - - 妤间富锛 - jacknudt - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (3) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 b/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 deleted file mode 100644 index 9615a9e21..000000000 --- a/public/cache/91B/EF0/views%2Fmemos%2F576-20141126222236 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.710721: @value"I"
  • - -
    - - 鏇存柊浜 - 2014-11-27 06:22 - - - 妤间富锛 - gaoli - - - 鏈鍚庡洖澶嶏細 - jacknudt - - - 鍥炲 - (2) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 b/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 deleted file mode 100644 index 931c245b2..000000000 --- a/public/cache/91C/170/views%2Fmemos%2F579-20141127101435 +++ /dev/null @@ -1,23 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420530701.70172: @value"I" 
  • - -
    - - 鏇存柊浜 - 2014-11-27 18:14 - - - 妤间富锛 - net - - - - - 鍥炲 - (0) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 b/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 deleted file mode 100644 index 6532134a1..000000000 --- a/public/cache/91D/D30/views%2Fmemos%2F582-20150106082842 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532924.8643541: @value"I"
  • - -
    - - 鏇存柊浜 - 2015-01-06 16:28 - - - 妤间富锛 - xDong - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (2) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/925/320/views%2Fmemos%2F579-20150106082907 b/public/cache/925/320/views%2Fmemos%2F579-20150106082907 deleted file mode 100644 index c21c69db0..000000000 --- a/public/cache/925/320/views%2Fmemos%2F579-20150106082907 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532950.004201: @value"I"
  • - -
    - - 鏇存柊浜 - 2015-01-06 16:29 - - - 妤间富锛 - net - - - 鏈鍚庡洖澶嶏細 - lzl - - - 鍥炲 - (1) - -
    -
  • -:ET \ No newline at end of file diff --git a/public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 b/public/cache/9B3/1B0/cae6965b71862532cc646d5995119a5821980260 deleted file mode 100644 index 41e21d0e5f6262729bd1b98cd0aafedb568057b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6735 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 diff --git a/public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e b/public/cache/9E6/E80/0906d39339d5f71e61207417e8c95f43c783442e deleted file mode 100644 index e9b89fb59a817ffa929b5b728f2ab9f1c9cea3d1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3017 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 p)Ccth6m>OH0tul1I{y+7sor(Ye diff --git a/public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D b/public/cache/A91/6A1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.colorbox-min.js%3F1420357855%3D deleted file mode 100644 index 168798e848cf86f7f723752762b188b7e42c77af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2059 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 diff --git a/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 b/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 deleted file mode 100644 index 6b24ea5e4..000000000 --- a/public/cache/AA5/BD0/e8d35b3dc5255332a9a7f5c7d92c79635729fb41 +++ /dev/null @@ -1,25 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.173789: @value"["$(document).ready(function(){ - $(".rateable").jRating({ - //default options displayed below -> - - rateMax: 5, //Maximal rate - length : 5, //Number of stars - //decimalLength : 0, //Number of decimals in the rate - //type : 'big', //Big or small - //step : true, //If set to true, filling of the stars is done star by star (step by step). - //isDisabled: false, //Set true to display static rating - //showRateInfo:false, //Rate info panel, set true to display - //rateInfosX : 45, //In pixel - Absolute left position of the information box during mousemove. - //rateInfosY : 5, //In pixel - Absolute top position of the information box during mousemove. - path : '/rateable/ratings', - onSuccess : function(element, rate){ - //something like -> - //alert('鏈鎵撳垎鎴愬姛锛'); - //$('Thanks for rating!').insertAfter(element) - }, - onError : function(element, rate) { - $('You have already rated!').insertAfter(element) - } - }); - -}); diff --git a/public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D b/public/cache/ABB/FD1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fjquery.leanModal.min.js%3F1420357778%3D deleted file mode 100644 index 8cb8c8bd223d40104b182d3c054a45992406ea5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2062 zcmbVNZI7B*6mBNXbSB+S+nsK^n`SqJq)De4l@}3p(rgi~h$G-2irNo^m#d-(4B$B0 zAG4qKf9@5uoqhSRyCDJYInO!gIp^MU?&FiNj&V-v-ND`}io!Up*LlmC!FnA8X}meD zzxd>Y%P59P0^KHB!TZQVE7J>zoi2t}3SHAmC$GseMKCnYP~{>~W!NfRfBNap@>dW) z`u)k{6a45m^!|MO`N@}GB>c6=>A>JdrljaVYjQj|t{;P@gn!42Qi&{*$5)Tg>a5G@ zEre;R`TC+Xx9+UOiM=RIO7q(lj5kFeT7ew8mS0?YL2;hs(3dxTppDF)u1SiRi=OW& z(hSS8)m-pG1G1_ElM@7OC&AB1iY*f8Atn5vY^gmxQ@-l*1&SaUf+Wf}-BDk{&ozLe z^mJ1OdP@~D)QJf6%sAKdH7SoJ&C)cgmr8!#f0B8>sXJ5np8PQd>EGY>;-OSeZsl<6`MyWUuM)a&;%OD&s6cBH{J9;y+HeUUZ4MaN?tmyTlULnf(Rd;S{lt63^;&zMU0#<#Ic_y8TELtB0EL zs(LNuh@&@0W(-}_Gtfjt5-$usHnv*()DPlMYhow)pbL(`J@G+cT^)D?7Y#6@6bwQQ%vp=A&`YX zn%}IIt-q8hiBgs_qYA!1o`bD2Z~J4xA!Qv9BfY;F3y8(Kv5Rsuq?E0*98X-a7LSc` z77fYol?6GITkVG3Y;=ms`H-np&WO4o^l zk85W*@SR|ht>Jo65$MLorXqhtYlycNaS_*0r}sdx$sJ10_!kOp#dhfl zMU^dwrY4p!5m_12Bmq>PN?5E+I z14dC5V9K1%?^$R1FHa@>`;L{Q1$1|K6A!w%G2UARml#pT+E#$=#yv)`^>VFFS20oE z&&-#67^E;r3;HI4x!GF_jS$bVQq)EdGRl?b2Yd$x({z>#Pf3ERR;$%C?+Z%`I1Kx;m*%Xxgf=goT>>R6s)^_l4^#G#-e`1O8P+ YzFsbW<{9 diff --git a/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 b/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 deleted file mode 100644 index 16ec306e0..000000000 --- a/public/cache/AC2/540/4cea7ff935690a5e00f53017e2452eee8a0e6254 +++ /dev/null @@ -1,232 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.166788: @value"["/************************************************************************ -************************************************************************* -@Name : jRating - jQuery Plugin -@Revison : 3.0 -@Date : 28/01/2013 -@Author: ALPIXEL - (www.myjqueryplugins.com - www.alpixel.fr) -@License : Open Source - MIT License : http://www.opensource.org/licenses/mit-license.php - -************************************************************************** -*************************************************************************/ -(function($) { - $.fn.jRating = function(op) { - var defaults = { - /** String vars **/ - bigStarsPath : '/images/seems_rateable/stars.png', // path of the icon stars.png - smallStarsPath : '/images/seems_rateable/small.png', // path of the icon small.png - path : '/rateable/ratings', - type : 'big', // can be set to 'small' or 'big' - - /** Boolean vars **/ - step: true, // if true, mouseover binded star by star, - isDisabled:false, - showRateInfo: false, - canRateAgain : false, - - /** Integer vars **/ - length:5, // number of star to display - decimalLength : 0, // number of decimals.. Max 3, but you can complete the function 'getNote' - rateMax : 20, // maximal rate - integer from 0 to 9999 (or more) - rateInfosX : -45, // relative position in X axis of the info box when mouseover - rateInfosY : 5, // relative position in Y axis of the info box when mouseover - nbRates : 1, - - /** Functions **/ - onSuccess : null, - onError : null - }; - - if(this.length>0) - return this.each(function() { - /*vars*/ - var opts = $.extend(defaults, op), - newWidth = 0, - starWidth = 0, - starHeight = 0, - bgPath = '', - hasRated = false, - globalWidth = 0, - nbOfRates = opts.nbRates; - - if($(this).hasClass('jDisabled') || opts.isDisabled) - var jDisabled = true; - else - var jDisabled = false; - - getStarWidth(); - $(this).height(starHeight); - - - - var average = parseFloat($(this).attr('data-average')), // get the average of all rates - idBox = parseInt($(this).attr('data-id')), // get the id of the box - kls = $(this).attr('data-kls'), - dimension = $(this).attr('data-dimension'), - widthRatingContainer = starWidth*opts.length, // Width of the Container - widthColor = average/opts.rateMax*widthRatingContainer, // Width of the color Container - quotient = - $('
    ', - { - 'class' : 'jRatingColor', - css:{ - width:widthColor - } - }).appendTo($(this)), - - average = - $('
    ', - { - 'class' : 'jRatingAverage', - css:{ - width:0, - top:- starHeight - } - }).appendTo($(this)), - - jstar = - $('
    ', - { - 'class' : 'jStar', - css:{ - width:widthRatingContainer, - height:starHeight, - top:- (starHeight*2), - background: 'url('+bgPath+') repeat-x' - } - }).appendTo($(this)); - - $(this).css({width: widthRatingContainer,overflow:'hidden',zIndex:1,position:'relative'}); - - if(!jDisabled) - $(this).unbind().bind({ - mouseenter : function(e){ - var realOffsetLeft = findRealLeft(this); - var relativeX = e.pageX - realOffsetLeft; - if (opts.showRateInfo) - var tooltip = - $('

    ',{ - 'class' : 'jRatingInfos', - html : getNote(relativeX)+' / '+opts.rateMax+'', - css : { - top: (e.pageY + opts.rateInfosY), - left: (e.pageX + opts.rateInfosX) - } - }).appendTo('body').show(); - }, - mouseover : function(e){ - $(this).css('cursor','pointer'); - }, - mouseout : function(){ - $(this).css('cursor','default'); - if(hasRated) average.width(globalWidth); - else average.width(0); - }, - mousemove : function(e){ - var realOffsetLeft = findRealLeft(this); - var relativeX = e.pageX - realOffsetLeft; - if(opts.step) newWidth = Math.floor(relativeX/starWidth)*starWidth + starWidth; - else newWidth = relativeX; - average.width(newWidth); - if (opts.showRateInfo) - $("p.jRatingInfos") - .css({ - left: (e.pageX + opts.rateInfosX) - }) - .html(getNote(newWidth) +' / '+opts.rateMax+''); - }, - mouseleave : function(){ - $("p.jRatingInfos").remove(); - }, - click : function(e){ - var flag = confirm("纭畾璇勫垎锛"); - if(!flag) - { - e.cancel(); - } - - - var element = this; - - /*set vars*/ - hasRated = true; - globalWidth = newWidth; - nbOfRates--; - - if(!opts.canRateAgain || parseInt(nbOfRates) <= 0) $(this).unbind().css('cursor','default').addClass('jDisabled'); - - if (opts.showRateInfo) $("p.jRatingInfos").fadeOut('fast',function(){$(this).remove();}); - e.preventDefault(); - var rate = getNote(newWidth); - average.width(newWidth); - - - $.post(defaults.path, - { - idBox : idBox, - rate : rate, - kls : kls, - dimension : dimension - /** action : 'rating' **/ - }, - function(data) { - if(!data.error) - { - /** Here you can display an alert box, - or use the jNotify Plugin :) http://www.myqjqueryplugins.com/jNotify - exemple : */ - if(opts.onSuccess) opts.onSuccess( element, rate ); - } - else - { - - /** Here you can display an alert box, - or use the jNotify Plugin :) http://www.myqjqueryplugins.com/jNotify - exemple : */ - if(opts.onError) opts.onError( element, rate ); - } - }, - 'json' - ); - } - }); - - function getNote(relativeX) { - var noteBrut = parseFloat((relativeX*100/widthRatingContainer)*opts.rateMax/100); - switch(opts.decimalLength) { - case 1 : - var note = Math.round(noteBrut*10)/10; - break; - case 2 : - var note = Math.round(noteBrut*100)/100; - break; - case 3 : - var note = Math.round(noteBrut*1000)/1000; - break; - default : - var note = Math.round(noteBrut*1)/1; - } - return note; - }; - - function getStarWidth(){ - switch(opts.type) { - case 'small' : - starWidth = 12; // width of the picture small.png - starHeight = 10; // height of the picture small.png - bgPath = opts.smallStarsPath; - break; - default : - starWidth = 23; // width of the picture stars.png - starHeight = 20; // height of the picture stars.png - bgPath = opts.bigStarsPath; - } - }; - - function findRealLeft(obj) { - if( !obj ) return 0; - return obj.offsetLeft + findRealLeft( obj.offsetParent ); - }; - }); - - } -})(jQuery); diff --git a/public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 b/public/cache/AC2/A80/60567173164aa1f75c0f9517835ebc2fd5eb0ec5 deleted file mode 100644 index 3b564199a5be58b7aa880c8fa6951bb2dabdafaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12051 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 diff --git a/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e b/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e deleted file mode 100644 index 866f94664..000000000 --- a/public/cache/AC9/C70/bbefbac7540e09e1955cb47321965813266c7a8e +++ /dev/null @@ -1,69 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.222791: @value"6[".(function () { - window.onload = function(){ - function fixedBar(id, options){ - var ele = document.getElementById(id); - if(!ele) return; - if(/msie (\d+\.\d+)/i.test(navigator.userAgent)){ - var pageHeight=window.innerHeight; - var d=document; - if(typeof pageHeight!="number"){ - if(document.compatMode=="CSS1Compat"){ - pageHeight=document.documentElement.clientHeight; - }else{ - pageHeight=document.body.clientHeight; - } - } - var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop; - if(options.addclass) ele.className = options.addclass; - ele.style.position= 'absolute'; - - if(options.show){ - ele.style.top = 0 + "px"; - ele.style.display= 'block'; - } - - window.attachEvent('onscroll' , function (){ - - var ieScrollTop=window.pageYOffset || d.documentElement.scrollTop || d.body.scrollTop; - - ele.style.top = 0 + "px"; - if(options.autoHidden){ - if(ieScrollTop==0){ - ele.style.display="none"; - }else{ - ele.style.display="block"; - } - } - }); - }else{ - var ele = document.getElementById(id); - if(typeof pageHeight!="number"){ - if(document.compatMode=="CSS1Compat"){ - pageHeight=document.documentElement.clientHeight; - }else{ - pageHeight=document.body.clientHeight; - } - } - if(options.show) ele.style.display= 'block'; - ele.style.top = 0 +'px'; - window.addEventListener('scroll',function (){ - if(options.autoHidden){ - if(baidu.page.getScrollTop()==0){ - ele.style.display="none"; - }else{ - ele.style.display="block"; - } - } - },false); - } - } - - fixedBar('backTopBtn' , {autoHidden: true, top : 186}); - fixedBar('identifier-pannel' , {autoHidden: false , top : 956 , show : true}); - //淇敼寰俊鎵爜鏍峰紡甯冨眬鍚庢坊鍔犲井淇℃壂鐮佽窡闅忔粴鍔ㄥ鐞 - $(window).scroll(function(){ - var vtop=$(document).scrollTop(); - $("#identifier-pannel").css('top',vtop+"px"); - }) - } -})(); \ No newline at end of file diff --git a/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 b/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 deleted file mode 100644 index 1e70f7d5d..000000000 --- a/public/cache/AFF/300/57a7c6d86d2ad09012bac99d46b38f9f33a970a8 +++ /dev/null @@ -1,6 +0,0 @@ -o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1420532735.051782: @value" -["// leanModal v1.1 by Ray Stone - http://finelysliced.com.au -// Dual licensed under the MIT and GPL - -(function($){$.fn.extend({leanModal:function(options){var defaults={top:100,overlay:0.5,closeButton:null};var overlay=$("

    ");$("body").append(overlay);options=$.extend(defaults,options);return this.each(function(){var o=options;$(this).click(function(e){var modal_id=$(this).attr("href");$("#lean_overlay").click(function(){close_modal(modal_id)});$(o.closeButton).click(function(){close_modal(modal_id)});var modal_height=$(modal_id).outerHeight();var modal_width=$(modal_id).outerWidth(); -$("#lean_overlay").css({"display":"block",opacity:0});$("#lean_overlay").fadeTo(200,o.overlay);$(modal_id).css({"display":"block","position":"fixed","opacity":0,"z-index":100,"left":50+"%","margin-left":-(modal_width/2)+"px","top":o.top+"px"});$(modal_id).fadeTo(200,1);e.preventDefault()})});function close_modal(modal_id){$("#lean_overlay").fadeOut(200);$(modal_id).css({"display":"none"})}}})})(jQuery); diff --git a/public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 b/public/cache/B2D/650/88eae75bf7b81a196ba38d86bf54e7162ab274c1 deleted file mode 100644 index fdbb7004038f559959e84d0f38032c11968fc944..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 338091 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

    !7?l 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%0Dm;u9@@% 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 z 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 diff --git a/public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 b/public/cache/B3B/DA0/e9938e23e7a85ff3d431e045384ccd84dea93ce8 deleted file mode 100644 index 675388492f7e15b1a508ed815c0a3fba569b9d2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20153 zcmd^HTW=i6bq8GE5yu1H5zdVn#dD8jGli&UIPmh1v`N?0I!Qjx8 z$+vR=8IDnm>Y}_f{Xq#h@ky548hmKJO2*SPPt3NNmBlw`Vy1B(pC!{IuT52)))#S^ z+%m>IC}x*sdN!#|_d(C>?d*KAy|=S_*O=cValZX@l4j{_mY6T&{LFkfxOMAvo@1^> zZblgz+%L=c(sbidJ&&{ATL3(dOOq!T`r(j|MxML9dmPT37NzO3QECp&&OMVJ813E9 zlKiZmpk{MZAhC6N>VO}oubNuZjL@IWtBD<+Ep!ZHu4F8hWm3<}yySx%NiuqU zKg+u5c*}rgqu0r}XE+TG+^R5UqZ{3cHq&vhf12jwZj|P;d3{`8&XPlEc~ZQ274`aY zU6&hfql?e1311pnhah}|7fmC3vdDO+(S(ZHD1b{_SeRlaQ$wV%? zm3`1@k??Vr4J~?L0nsDXHhjx|0`cuSMt3pUFA)|0gA_0y^w?Yo)w&}0Gj zX^aWq6J}fq*5M$Fbh;hjg~lP9s!4HiKOa9El|`04FN9mC#b{nBR-Q3zsDeiRNfUGX z5K=hLGB*Qlt=;?bM|)6M@NH60vn_K{j4#Q{Je@+Rx^F8x^lU#6gW~kGO6qQ}Ul+5h zE%VXN&H~=bmamG7UzNpt)=ex9WI|nn_8Y9~&!CBU4N}%6hCEHn3NXnMw#$V@{XBVN zE9(-&3AeMjLZ@PuI7O%+^o(1`Ax(Yit@uW$;Q;oP~lE(<+6CXFKy*>wQX&47>`xunnqrd$LTo$ zDIyf9P>d*M5C8ngIcX13OY^jTm}YfSR$cM4G?Ngg;i*&()s0|gqX{B`#Cr$pl+jeX zcbyI*Z0Yv4OavErtd80Ffas0_t+s21E2bX9>VaiujYnoj+G&d zgZIwT(d%fdae+T4IytZ(qnc|Pu@(iN>8#hKZE6WkglC?K++mMgaL{U z{5rXmkQD4`rkU7zQf-qyT0AJmiGlyzz1uU@{A8Ne!*AzFc{xNBH|=)(bEiQf6e=$i z!rv_e^+%9elw0s^2x_hWrk|4rkH*kWdFq$REQ?2AMIQ)8LshrHaYlFQau{veZZf(x zHX25nBeUbo3@nhhbuABYGKT|FxrImTuESCdjf4kxMkm3r>w~?PcnVy>ah+CCSt8Lc z=Mjq;qij^Ilzz_DDVhdSLeQv3Zs~B=&3h-O?Z#1z9bL*mFd--(5){m(`B z83c9O_CRGxAyT`a2qh|rMtmNp8M`UVs$-eyE3${popiCOd;aY5IRbPv3?Lmx4BDet zO-KFuLPSy|u+>;aHELR?TSisy-Yq+@4d$W)Jd7A@9d;CC=Lif`x~HT#0;^DZ7;AO` z!x(fO`>wEsoudO$UAHPZ?ASQFW708R0x8^#Iwp^&2?jlW)ltnl>{#94M_Hn1f2oFIo3eVk5NW3)u_Yx=l~6LHjhcP1TpAb#)xJP;aPfsj!~9>)v6z@XRr+{OF7V zy|rsxt#|X+E+UVmam7UnkC;wT8}1JLA6Ce)kd7eD8^E@lciPN z*~dWsb*L!B*B`p^V(^xQU9D-*rm>0I142%d%YWc>EI-+0En43fCySe7 zw5o$5W`|YuPmoP~P1>tQj*-0xRF1F1S!|W|N6X3PX9OtP4ff>7ZvX4;=Di>Z@Iug2<8*J!aC zyOv$}&i2JSayR(*Be})p22MI~v&d*a)!mmBA>}GB8+7Vf)&TO)F18E>)#%?yaBVEOMsj~F|8os0 z?-S$AXt>)p#ZBCFW6Ql@aof8AD>5A4EfpX!5pq)Wl+RoePr#5_+Pg_XCV#ANP9ASqRMnLHA^GMgx*|%zT zwHSr~3A_0dWa1Wx@4EtjCc{+veD!ttE8l9}xGw3U=-VIKC_-P`Z_ZTfHzcVv&eGS5 z)?2ply4QZ6wi~x!FIyjr*4xOwU8`8OoKW-V-!!)U}4pF+dq8<1r!E4~aQFw<>pmiIJpyhF55<2`JC+C@*dqcu3F zgFV3cG_N#GO$)4tLKN2GmLGi+GL&6rQ57iWJ zCdQZ6p0-0qt)#dC4`!S0R0a&Jt!v}Id3)A|W>3uM;ftdHv)hY4$q=MVv>xX1MPvZwId*f1rwHu(26vu1OPUwU_jOi z>NSGc4k*@%;!TB-Q40MSGxGdPGIsrh4~S)3=pa&EQrAUV3mCXrbKZ7-PD8g(l**u# z6EYbZEt>;t*LU;#tBN282#8YUkLXk5_`zDf3k$#au0f1uzqKdVX#EvYO^(-Z^dc{RZbGlMJ>#L4m zL^Q|tLK!2?m9{RVAOQpis*uvqaayWHz*?5QKTo%H4&EoTbBpV~FOJB36TjJ(3U$S# zySzGrc1BrIB@7lqTy;uNiSsnM=*~+VIpmQF1S)ZPmeh*nMxW3vOVDQDuptJ34S}qK zz_X&NEq#$>joslyf`ZH@C3uSTI*#E;r)oZ;{()ik3@_8Mv2~+jG7-vH1p2Z!E#KAt zIOiD7!kvbCHk!&&X9%^$oaZ*=sO)OXOI|oP>{nh`mtdvnIE1*}o;Pg3yDrU+dQYTR zO^#ov1X9_Mf-lG)E z*0*SfpX_6mZ)t2tONX$)my?n~keA-AX%lbh zsi?Ko+)&2@MaQcBdaYHGp7Io2pshlRkkrbjfcB1fZIUdY<}}L%A(l6KW<0b6C631y z)88hSUFJ}gA+)|Yc~CN>^49>O9qda-yDaut+-30*i;r1+!s1gFKWFg^7WY|v#^M2s z&sluI;vtJ)vG_HMM=XBB;$A z;$K+AEKXRASjbTx?ypCuEY4U=SfnhzVS&?wCdyb$S>!AV7Bd##vM5J(V=Q-s1;>x$deTR_y(qi# zs0>5k^`SPf>yn=A?94(|%efQ%y?W zyK-P~N$E?u_p@*ITwMhsjV1x;-diP-gyWBJ0mr)#iNCznYTzO~oq-&TPF=9G1f}H+ z7692n)@6J;@Jk`?7}J# z*9o~zF%S>u;qjy*uM{Plp-M@;n$6^7olcW748g?6JwkS~B-iz`=a0Mt8eleU9@?qB+0eM zP=Fvd|1M&7<8Wkh=P!9cu`#7(g9-L?x~PH9PwtzyYs8)9tNGf zv-0@zDSYWO+`45hg88pn9HKXytlGx;DEz^+Ttl4>^6ojVNq(Kya5qu^1di+VHuFZf z1%mKQrd$^pE-mDAe^_tx41@ck@kC4M9FZ1{P&=L>8<%4m)-qOt{fPvVDuNm6PvaTZ z%F&(HJbd;%yuJaGX~Q;6So;;?y{n$;HMnDqCExX#yM_WC_ZYW~K4!=$yJxu`jO>e* z#Ao995p3AK4%!IZCWar6&mp?M&#U-68QUo5o)2V}+jJqS426_g%ik>wsGV(Sg(`C4 zo?J-@VjJZusKq1_u2uSdlg~j|-pb|WC3|_xO+IYwB+bVR!cn*6CVM;-#O5mis>Jt; zTuu8tr|7pVhhpi-#!qrj){YdSbArQsxL>;9?wu;CC7_>@Gj;)HLGr)|Z!n0v=u0uP zHr`4C;gI-XgB72(tdP7SbURc-Sn~PoJ~CC0@^Om54@(R(6w{&DisOP2&@ZqoYMoh4 zuLpzNgb&F%0@f|_W`g@c09r$sB%T$*ShFXJwcP}KZaYO&qR4=|eto;8_MCZS#1j!t zki!*7SUM<1by9ER=wK3K)zAbjE75HkLSUj&bA!o2nZn7rVO9>}ttY{U#O0SK`Ioew z3IYB5lOpT<-bF7rGY~&I-Vx=q!=GElgP_q z3!-LeL*h5LzJ2n?ZNhGAIx|d#IE~RSUPU?PP%5hmCd5&NLa7{HXn-9=Nr;A#slvo> zCWHeL!eU>f@+nfE>&~^i;LDb+d@d^}tc%^R9Xi-k*8c14YseZg>t7Hj1R1mVOvJG( zNGc`dv5%l(7B&z))lbV)3gPQ9Ctj6T_4&Fe$JGl&VR|ZNh`c@mRG<#?*t{T0!!H!j zs07urk)mJlq1C-#Wf02eatXc5OYaa^r^Aeba;&`S-#D3!SNpsUREzRxBmCP{{7WvZ*Z1wbvAYnVlyd|)5BsJ!xVU)PzkXbzDClkMMfQqIgiK{o?!y}- zt1#mI5{Hh{J0YCMMM!9E%SLxGIk0TO(SEs^w?!*IzsK&Nj~A14dN!;l^XW;>R8nBt ze5D+Ekcs2cS{I%v+mG@>ckH6ZchfH5*D9FmVA!hrwsiY#Lk0(wyxBtbS$+V;Ssl7y zGJ7b34(2gz(iYa<@T)H4)jkbg_PgKA&fd-Pvv+6d>AREZthX`1P8xo*!9xn%ZvgT7 zxzH(F_j0v@_HBZ-X!#rqum{{^lGF9iq1xO%L$uo%Z~TNuRrhgk@UWu`1Khmd_y zonV#CCDtJ;3F97+Ax>AfNG18ig$v>+`K5$L;W_$ex`^eHLALEIOst6IH5_@2Wy#{W zg8_#?CWyd=3koH?IDp@|V15f8HL?vITZpEhm`s^kj1L*kE>BY#+7V7uS!8xg2}=F}Y*Jj+7@sNo0l_-8q~ zFH2(zK^G+WXlv)^TYGnV!YCCHPd|Gq>(G9D%P$WRTEsP0X_uGV)9LmYvE{XZ5oAJQ zpXBJF=N}+k`tWFqMah#qyR;kLVf8*v79f{CtcxLj8wP3IXdr*9!3dPd$8p(*afo^y z1+V8+t;v5(DL9xW5UuXJwP!rq!1|Aoy0^Dcu=k;}8H>`;N{K zG(9K~@FEmLoa_%7u~HHnVHZZ=w86Id`IZ4U0+`qHcZpZ6o_F51alYd6(rbr*w2W?b zZg*|>w8SBa`0xLdVA!cUg;8(c*lB~q1|xXM2m1RR#mP6;O4D`@&ksp0RH}5ra--^S zm%*KoQA$3kBC1WJrPZfn_?D=#xwz&##C3NZ*idNf_ui)Jx;tv-kHt(MVsntEJ|vCN zoWJaB`A0i|hTd{m$zr|&Z`GIGAB@xP_rvKnsrkVN!}HsRE0DtvXVHr8{b20&Zi?O2 Gt^WfBy%mZ8 diff --git a/public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 b/public/cache/B4F/E50/afc8c0ba867511cd69e8b5d43542aad5a2e716c6 deleted file mode 100644 index 800a1f0bdd7e365cbda72e44d64a72c4d084c747..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37249 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 diff --git a/public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 b/public/cache/B6B/0E0/6d2710e981a7dd596afcc77e54ff43b9d7f75cb2 deleted file mode 100644 index d6cb37900acc45b0ed519cbb8d9e3a4db9ee5b97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41860 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 diff --git a/public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D b/public/cache/B76/7F1/http%3A%2F%2Flocalhost%3A3000%2Fstylesheets%2Fjquery%2Fjquery-ui-1.9.2.css%3F1420357855%3D deleted file mode 100644 index b5d794c2977ea30c3b3a86a0dd4df785a9b41127..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2075 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 diff --git a/public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae b/public/cache/B7E/7C0/0e09a16c714ce54739affa1a4e945aa699b4baae deleted file mode 100644 index de9fe3690bf71b69748345ab65678bce70e86f40..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2979 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 z

    #CFASI9u@X*DE%BFY9MbrQmTiSkFBS_p(TML@l;yU>&B5A(eeqgNxcF1(cp1l7 zw31wjucP|1nBdtNigP+F`oKT+V;MKEmZH!!? z#YE~Y)_Aii>A(W$zUt&U2Q$^t6aSI~iucE~v8JQxj4on>02tfS`w)Dg5ii5zDAo%T zhxEVfj)P=(cOlHAOqnbK5X((G4d1@=*Zz;UChMzn$}4_i5nlh5xruP~p2b@}1}cz` znQ?IRY>ImqoaztZ4lOmxPWBF&-<)@ho*uuPqjpZc8}Nbd`zIXOnSAfK8Lj)pYp29=4mfLZ*P9F z2Ztu9j2(REKp6&#?Jxp~rOfZ5YossOJ4tA>u9SRT2zf`UqK-v53KXP>glSZNN)p6O zPOp}EZDdme3N#`FD;(0(0;gT1X;w2JhMCg!_DbLU#t16tjG!ZmL2Q(9f1XCZ_da6h zv%R0KW=|^~Y3{9HvvuK@O!dvX^yXc>T<>@9#3t}V(E#Q-)j^^7CyW`w`bVSj*vGDE z5uSGGf?Jevt>g19azrN3eR8Nn#^a>mI)?ZP`?oiE4}Zt!{6l3UTzPZ^uC)KW2lcY5 z^uZM?aGZ|I`&QC<)4<91U-U6$bh0}azd_01WDAB0Zo0sNT3;oP6q!!g@U~Za(GoEu zJsb3kh$|Dp6vloQd~k%NgRXkGE`bM!T3W~}sc6xOuelB_Cv`Z*F{gx|-+s#|(deyz zmQbub%=z;YR{Ed+*1L~xQEGqwc(#}=-~D@gJ^Pi%FBrmbB5yGZ@r;nqkQk8q{e$~K ziIIr)X2Vumr!ip&e`CZR`A1BM<~`k3%5JX4X_+(_UOgcbIK*!0Sio5>cANOgQG0!G u)87YDi=O;V^BIyH0>eN+9yx**Koce>k8nXGmX@pATSCNf!<5^<{{I1)@xD?3 diff --git a/public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f b/public/cache/BE0/BD0/0917fc42cb8dfbd8bc5add2088e60feb41c28e0f deleted file mode 100644 index 50be99779f68332178079fd3e9ee162bd227e640..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4321 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 P00000NkvXXu0mjfoy1#p diff --git a/public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D b/public/cache/C12/DE1/http%3A%2F%2Flocalhost%3A3000%2Fjavascripts%2Fseems_rateable%2FjRating.js%3F1420357855%3D deleted file mode 100644 index 98b7931ca395d909f1575dd81afd138818cc02d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2104 zcmbVNZI9YU5ROjO<)So~q?e?vqNzy)TAV3SHAmC$B)6Bxs5%Q=nJ|B*jp*#~b%S9 zO@wKv`TEz=+`6+8C-$N=DJ2jt6Ej8(EZc{rxn`waFfGoL9Q^#YFK8pPr)!cT=BB56 zk`!IJqUqf5OcP{P7fhDtwY>#D2V|v4pbwDnqqC{@^vwC9%N0lh&;%gLx7|@+!Y?!d zozl}ySu)V9Py2`1Y-1?-c>)o%{as>6% zhHkLhfxtUMsK=hOKsc%hus7Pu-lG52B2_{~qY3~NNb+qS@O&T8{8HG9FBG$yNcfA) z(caJr-_`(60c1%y$-@=>=+`1d)2<(h(taJrUr#m|@4reICs4T0_;!>}ADbn^>5 zdsljQ4BkhXnye@&x$Bc0?mXYON_3IH-WXoshU)}Vbc`v2Ys^p$ru-ITqsWH_wA)@< zqNz%eVz4*urY?6bG2dH2OoYxNe2a0jI9$RKRYiS7f(ohujrFXF6?=zW68=1+rU?x} z6Y|b0{&Rc0cfwViz+xJ&lGKC60HzZDDen_YjpA&OVWnsKVymU6_&%M&w(?$QgOnIIkT!r-RP&MLgH z@c8CnHy*YomT@bp({V#vE;z3~Ye~~+?uvdoz8zIqVVtzruD)!i{a#OMkA_-g8+}n- z*F~F4nrXzugMBPY@f}KuY?997AwR*Y{`K4oPL_EXNa9tj1%boSlX28)X4zafMzOInc9pa%6L^rSraOXB>D_tj!G1|^>;5)%0Tf_B&;i>x8CL@1DX^6KLu@PHW zr<ukZjR1A8I4Anz#m74M}=t8-tyUYS>u%JBLF2KsBU?wiCG5|VPR<&HNxI`I%YLx^QV_j7$6OyDRqrFi9 z=9}@}D!9amGS;#JY(Ew-qEe%Y8ck!Od{EZsTo|MQI>2T z*Peg$7V|iPX$t)Y+QD@kpq(8=)J~T`CxgE2WaHPMOj9hwlo?Pg1CFUMwI?6%oNx)r zqu(DrJRy&ML*GxwpB{brMIm3yyeV1y&{i~4G8()f9oLSfhC+TP$Vv$m!SUq-v^(wa zW)oo=I^Lg`Zk;W z3zo%#=Z2)}reyP?XzV29DWJI`g?>OG56Y(AHFM?5j!>W}z*2xJ-*kpOg*-DPVn?J(x*++?0mbJ1E{MvOp7=6 z1m0UxJqf%S!ZAfayfv2Y2Cb__ri8M_6aXmD^gC?ubZ5~1n%T3j6!WAgDhK#5VZ5{^z!o+RlGRlOwjdf1tX4L9oY%==RpMR6m^1N5na{!DJM#^Ky3E6 zqd{xzSU0jh88wXgObF`JmNJQNeL2iVH$#q>M(Op+H|N(`uiI6whXW&at)8r}>ar`O z%`C1Y{hcjF3q3}QU7E%AkRIW~;qA>z+lF(MR%mUmvbq?Cqg!dK-L}G!=mFJ~sG-^0 zj6}p?Rp0rz8PM9+n~%o6Tunw+IroL+Yi$OmYO_^$8}+tpdcc>{bx)kJqq!#Pa${qJ zp{dcz9pYj3Wj}H$aOXFtOVgwdHmMP%w5myW|BV<6r}%*T9PpRDJO zwWd&Rws18<`B-m#tMz$gX;l3-<&7w9>JxD1$^8w=$DKEu1@#E?)F&A|wANrW(A+wb z^ZYJ{!-{D68<**?26T&6#f34XtEq2+<$z|VuGQbFD2I)Cxb+ys4^(4!ZiKK=-MUN* z`$V=xIh^T8?$K(_zffQ}P#OEMS^?0zaH{1p=Tl_>s#O{|73YHE#x%{0Y4?(_?KoMC zgD{A$;$ImNRUxin)NH!@7y9vMBs{dlUGv6|{lE3?*Sev|ipIC?Mz7ueW`+B|t@2I& zSd@mXqG!@jB+>3F8X7tIjM;Zh+)WTh(>2Lfc~jVP&-GuPDCGBTC(R1#!Vks)^zmV` zyNu2Ws!X(;h}caAg5qi{RbyE~R`6GMFLjf2`q;5iw3O80`o%CiH$ z4Wmgm#lpvcW@)^9H7FbqVlaVewiA;Dc;Pdw%lIBkvuF;}PSxSYtjGCP+T*GfH1z1| t*e#>6_E Date: Fri, 9 Jan 2015 15:34:02 +0800 Subject: [PATCH 04/45] change cache files sites --- config/environments/production.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/environments/production.rb b/config/environments/production.rb index ab4cd4011..8a2847731 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -18,7 +18,7 @@ RedmineApp::Application.configure do # Full error reports are disabled and caching is turned on config.action_controller.perform_caching = true - + config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Enable serving of images, stylesheets, and javascripts from an asset server # config.action_controller.asset_host = "http://assets.example.com" From 75ba61ed746cea8080e2add86a0630ff4f66412b Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 14 Jan 2015 16:42:12 +0800 Subject: [PATCH 05/45] =?UTF-8?q?issue=201798=20,=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=90=8D=E5=87=BA=E7=8E=B0=E4=B8=8D=E6=98=BE=E7=A4=BA=E7=9A=84?= =?UTF-8?q?=E6=83=85=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/document.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/document.rb b/app/models/document.rb index e607b9292..e2e0a8d00 100644 --- a/app/models/document.rb +++ b/app/models/document.rb @@ -31,7 +31,8 @@ class Document < ActiveRecord::Base acts_as_searchable :columns => ['title', "#{table_name}.description"], :include => :project acts_as_event :title => Proc.new {|o| "#{l(:label_document)}: #{o.title}"}, - :author => Proc.new {|o| o.attachments.reorder("#{Attachment.table_name}.created_on ASC").first.try(:author) }, + #:author => Proc.new {|o| o.attachments.reorder("#{Attachment.table_name}.created_on ASC").first.try(:author) }, + :author => Proc.new {|o| User.find(o.user_id)}, :url => Proc.new {|o| {:controller => 'documents', :action => 'show', :id => o.id}} acts_as_activity_provider :find_options => {:include => :project}, :is_public => 'documents.is_public' From 2aecb408177a43590c9b299cabfd261d9b253daa Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 14 Jan 2015 16:43:39 +0800 Subject: [PATCH 06/45] =?UTF-8?q?=E5=8E=BB=E6=8E=89document.rb=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E5=86=97=E4=BD=99=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/document.rb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/models/document.rb b/app/models/document.rb index e2e0a8d00..48a0151eb 100644 --- a/app/models/document.rb +++ b/app/models/document.rb @@ -81,7 +81,5 @@ class Document < ActiveRecord::Base update_document(self.user,2,self.project) end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end From 2431fea63e0b56f1a06fd3fa9a92a6c1f9f0268d Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 14 Jan 2015 16:43:39 +0800 Subject: [PATCH 07/45] =?UTF-8?q?=E6=97=A5=E5=BF=97=E6=9F=A5=E7=9C=8BHelpe?= =?UTF-8?q?r?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/system_log_helper.rb | 57 ++++++++++++++++++++++++++++++++ app/models/document.rb | 4 +-- 2 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 app/helpers/system_log_helper.rb diff --git a/app/helpers/system_log_helper.rb b/app/helpers/system_log_helper.rb new file mode 100644 index 000000000..4528143ef --- /dev/null +++ b/app/helpers/system_log_helper.rb @@ -0,0 +1,57 @@ +module SystemLogHelper + class SystemLog + class << self + # 鍒嗛〉锛堟敮鎸佸鍏抽敭瀛楁煡璇級 + def logo_data(page,per,search) + logs = find_all_logs + + # 鏍规嵁search鍙傛暟鏉ュ喅瀹氭槸鍚﹂渶瑕佹煡璇 + keywords = search + if keywords && !keywords.strip.blank? + # 鎶妅eywords杞寲鎴愭鍒欒〃杈惧紡鏁扮粍 + keywords = keywords.strip.split(/\s+/).collect! {|w| Regexp.new(w, 'i')} + # 涓鏉¤褰曞簲璇ュ尮閰嶆瘡涓叧閿瓧 + logs = logs.find_all do |log| + keywords.all? { |r| log =~ r } + end + logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} + logs.collect! do |log| + keywords.each { |r| log.gsub!(r, '\0')} + log + end + else + logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} + end + logs + end + + #娓呴櫎鏃ヨ獙 + def clear + File.open(logfile_path, 'w') do |f| + f.print '' + end + end + + #璁鍙栨棩瑾 + private + def find_all_logs + File.open(logfile_path) do |f| + #鎵撳紑鏂囦欢锛屽苟鎸夌収姝e垯琛ㄨ揪寮忓垏鍒嗭紝閫嗗簭锛屾渶鏂颁竴涓褰曞彲浠ユ墧鎺夛紙鍥犱负鏈鏂扮殑璁板綍姘歌繙閮芥槸璁块棶System_log) + f.read.split("Processing").reverse[1..-1] + end + end + + # 鏃ュ織鏂囦欢鐨勮矾寰勶紝涓鑸湪Rails.root/log涓嬶紝鏍规嵁鐜閰嶇疆 + # 渚濇璁板綍鍒皃roduct.log development.log test.log涓 + def logfile_path + File.join(Rails.root, "log", "#{Rails.env}.log") + end + + #鏇挎彌鎻涜绗 + def parse(log) + ERB::Util.html_escape(log.gsub(/\e\[[\d;m]+/, '')).gsub("\n", "
    ") + end + end + end + end + diff --git a/app/models/document.rb b/app/models/document.rb index e2e0a8d00..48a0151eb 100644 --- a/app/models/document.rb +++ b/app/models/document.rb @@ -81,7 +81,5 @@ class Document < ActiveRecord::Base update_document(self.user,2,self.project) end - def expire_cache - ActionController::Base.new.expire_fragment('activities') - end + end From 6c0f47d96d313551e536ae57f814432b9e680fa1 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:40:22 +0800 Subject: [PATCH 08/45] =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/routes.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/config/routes.rb b/config/routes.rb index 602a8dda8..c8568a486 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -820,6 +820,8 @@ RedmineApp::Application.routes.draw do ##added by lizanle 鏃ュ織鏌ョ湅璺敱 match 'system_log/index' + match 'system_log/access_analysis' + match 'system_log/time_analysis' match "/system_log" ,:to => 'system_log#index' match 'system_log/clear' ##ended by lizanle From f69ed3d51170762568d84259525565ab92723eb0 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:41:13 +0800 Subject: [PATCH 09/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0Kaminari=E5=88=86?= =?UTF-8?q?=E9=A1=B5=E6=A0=B7=E5=BC=8F=E5=92=8C=E6=90=9C=E7=B4=A2=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/stylesheets/application.css | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css index 2c8e1f9b8..ae62f79b7 100644 --- a/public/stylesheets/application.css +++ b/public/stylesheets/application.css @@ -2921,4 +2921,28 @@ input[class~='m3p10'], .m3p10 { /*lizanle 鏃ヨ獙鎼滅储绲愭灉妯e紡*/ .search_results { color: red; +} +/*lizanle 鍒嗛〉鏍峰紡*/ +.pagination ul li a, .pagination ul li span{ + background-color: #FFFFFF; + border-color: #DDDDDD; + border-image: none; + border-style: solid; + border-width: 1px 1px 1px 1px; + float: left; + line-height: 20px; + padding: 4px 12px; + text-decoration: none; +} +.pagination ul a { + color: #9B9B9B; +} +.pagination ul li a:hover, .pagination ul li a:focus, .pagination ul .active a, .pagination ul .active span{ + background-color: #ffc02f; + border: 1px solid #ffc02f; +} +.pagination ul li{ + float: left; + margin-right: 3px; + list-style: none outside none; } \ No newline at end of file From c82722c2202e015a18ff2deed9e570b105b53333 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:41:56 +0800 Subject: [PATCH 10/45] =?UTF-8?q?=E6=97=A5=E6=9C=9F=E9=80=89=E6=8B=A9js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/javascripts/application.js | 158 ++++++++++++++++++++++++++++++ 1 file changed, 158 insertions(+) diff --git a/public/javascripts/application.js b/public/javascripts/application.js index 1dedc1b8c..5a6c89cc0 100644 --- a/public/javascripts/application.js +++ b/public/javascripts/application.js @@ -685,3 +685,161 @@ function PrecentChange(obj){ $("select[id='issue_status_id']").find("option[value='2']").attr("selected","selected"); } } + +//added by lizanle 鏃ユ湡閬告搰js +function HS_DateAdd(interval,number,date){ + number = parseInt(number); + if (typeof(date)=="string"){var date = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2])} + if (typeof(date)=="object"){var date = date} + switch(interval){ + case "y":return new Date(date.getFullYear()+number,date.getMonth(),date.getDate()); break; + case "m":return new Date(date.getFullYear(),date.getMonth()+number,checkDate(date.getFullYear(),date.getMonth()+number,date.getDate())); break; + case "d":return new Date(date.getFullYear(),date.getMonth(),date.getDate()+number); break; + case "w":return new Date(date.getFullYear(),date.getMonth(),7*number+date.getDate()); break; + } +} +function checkDate(year,month,date){ + var enddate = ["31","28","31","30","31","30","31","31","30","31","30","31"]; + var returnDate = ""; + if (year%4==0){enddate[1]="29"} + if (date>enddate[month]){returnDate = enddate[month]}else{returnDate = date} + return returnDate; +} + +function WeekDay(date){ + var theDate; + if (typeof(date)=="string"){theDate = new Date(date.split("-")[0],date.split("-")[1],date.split("-")[2]);} + if (typeof(date)=="object"){theDate = date} + return theDate.getDay(); +} +function HS_calender(){ + var lis = ""; + var style = ""; + /*鍙互鎶婁笅闈㈢殑css鍓垏鍑哄幓鐙珛涓涓猚ss鏂囦欢*/ + style +=""; + + var now; + if (typeof(arguments[0])=="string"){ + selectDate = arguments[0].split("-"); + var year = selectDate[0]; + var month = parseInt(selectDate[1])-1+""; + var date = selectDate[2]; + now = new Date(year,month,date); + }else if (typeof(arguments[0])=="object"){ + now = arguments[0]; + } + var lastMonthEndDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+now.getMonth()+"-01").getDate(); + var lastMonthDate = WeekDay(now.getFullYear()+"-"+now.getMonth()+"-01"); + var thisMonthLastDate = HS_DateAdd("d","-1",now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-01"); + var thisMonthEndDate = thisMonthLastDate.getDate(); + var thisMonthEndDay = thisMonthLastDate.getDay(); + var todayObj = new Date(); + today = todayObj.getFullYear()+"-"+todayObj.getMonth()+"-"+todayObj.getDate(); + + for (i=0; i" + lis; + lastMonthEndDate--; + } + for (i=1; i<=thisMonthEndDate; i++){ // Current Month's Date + + if(today == now.getFullYear()+"-"+now.getMonth()+"-"+i){ + var todayString = now.getFullYear()+"-"+(parseInt(now.getMonth())+1).toString()+"-"+i; + lis += "

  • "+i+"
  • "; + }else{ + lis += "
  • "+i+"
  • "; + } + + } + var j=1; + for (i=thisMonthEndDay; i<6; i++){ // Next Month's Date + lis += "
  • "+j+"
  • "; + j++; + } + lis += style; + + var CalenderTitle = "»"; + CalenderTitle += "«"; + CalenderTitle += ""+now.getFullYear()+""+(parseInt(now.getMonth())+1).toString()+"鏈"; + + if (arguments.length>1){ + arguments[1].parentNode.parentNode.getElementsByTagName("ul")[1].innerHTML = lis; + arguments[1].parentNode.innerHTML = CalenderTitle; + + }else{ + var CalenderBox = style+"
    "+CalenderTitle+"
      "+lis+"
    "; + return CalenderBox; + } +} +function _selectThisDay(d){ + var boxObj = d.parentNode.parentNode.parentNode.parentNode.parentNode; + boxObj.targetObj.value = d.title; + boxObj.parentNode.removeChild(boxObj); +} +function closeCalender(d){ + var boxObj = d.parentNode.parentNode.parentNode; + boxObj.parentNode.removeChild(boxObj); +} + +function CalenderselectYear(obj){ + var opt = ""; + var thisYear = obj.innerHTML; + for (i=1970; i<=2020; i++){ + if (i==thisYear){ + opt += ""; + }else{ + opt += ""; + } + } + opt = ""; + obj.parentNode.innerHTML = opt; +} + +function selectThisYear(obj){ + HS_calender(obj.value+"-"+obj.parentNode.parentNode.getElementsByTagName("span")[1].getElementsByTagName("a")[0].innerHTML+"-1",obj.parentNode); +} + +function CalenderselectMonth(obj){ + var opt = ""; + var thisMonth = obj.innerHTML; + for (i=1; i<=12; i++){ + if (i==thisMonth){ + opt += ""; + }else{ + opt += ""; + } + } + opt = ""; + obj.parentNode.innerHTML = opt; +} +function selectThisMonth(obj){ + HS_calender(obj.parentNode.parentNode.getElementsByTagName("span")[0].getElementsByTagName("a")[0].innerHTML+"-"+obj.value+"-1",obj.parentNode); +} +function HS_setDate(inputObj){ + var calenderObj = document.createElement("span"); + calenderObj.innerHTML = HS_calender(new Date()); + calenderObj.style.position = "absolute"; + calenderObj.targetObj = inputObj; + inputObj.parentNode.insertBefore(calenderObj,inputObj.nextSibling); +} From c668b72dac8e575ade90da382bdb8f034787ff2b Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:45:18 +0800 Subject: [PATCH 11/45] =?UTF-8?q?=E9=87=8D=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/system_log/index.html.erb | 50 +++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 14 deletions(-) diff --git a/app/views/system_log/index.html.erb b/app/views/system_log/index.html.erb index f5316c26b..edef8e023 100644 --- a/app/views/system_log/index.html.erb +++ b/app/views/system_log/index.html.erb @@ -3,27 +3,49 @@ @nav_dispaly_main_project_label = 1 @nav_dispaly_main_contest_label = 1 %> <% @nav_dispaly_forum_label = 1%> -

    鏃ュ織

    -
    - - -
    -
    - <%=link_to '鎵鏈夋棩蹇', :action=>:index %> | - <%=link_to '娓呯┖鏃ュ織', {:action=>:clear}, {:confirm => '纭娓呴櫎鎵鏈夋棩蹇楋紵'} %> | - <%=link_to_function '鍒锋柊', 'window.location.reload();' %> + + +
    + <%=link_to l(:label_log_detail), system_log_path %> | + <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | + <%=link_to l(:label_log_access_analysis), system_log_access_analysis_path %> | + <%=link_to l(:label_log_time_analysis), system_log_time_analysis_path %> | + <%=link_to_function l(:label_log_refresh), 'redo()' %> +
    +
    -
      
    -<%= paginate @logs %>
    +
      
    +
    +<%= paginate @logs unless @logs.empty? %>
    + <% unless @logs.empty? %> + + <% @logs.each do |log| %> <% unless log.blank? %> -

    <%= raw log %>


    + <% end %> <%end %> - -<%= paginate @logs %> \ No newline at end of file +
    <%=l(:label_log_detail)%>
    <%= raw log %>
    + <%end %> +<%= paginate @logs unless @logs.empty? %> +
    \ No newline at end of file From 061e4599c3f4e7d5e662ba54509defb45fda8a4a Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:45:57 +0800 Subject: [PATCH 12/45] =?UTF-8?q?=E9=87=8D=E6=9E=84=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E4=BA=86=E8=AE=B8=E5=A4=9A=E7=9A=84=E7=A9=BA=E6=8C=87?= =?UTF-8?q?=E9=92=88=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 44 +++++++++++++++++++++--- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index 9e3d208b0..92eaca0e3 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -1,17 +1,51 @@ # 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 class SystemLogController < ApplicationController - # 榛樿姣忛〉鏄剧ず20鏉¤褰 - before_filter :require_login ,:only =>:index + + before_filter :require_login before_filter :require_admin ,:only =>:clear + # 榛樿姣忛〉鏄剧ず20鏉¤褰 PER_PAGE = 20 layout "base" include SystemLogHelper + #鏌ョ湅鎵鏈夋棩蹇 def index - @logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] ) + @logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] , params[:day]) + @logs + #@access_module = params[:access_module] unless params[:access_module].nil? end - def clear - SystemLog.clear + #娓呴櫎鏃ュ織 + def clear day + SystemLog.clear day redirect_to :action => :index + end + + #璁块棶鍒嗘瀽 + def access_analysis + #瑙f瀽鏃ュ織锛岀劧鍚庨嗗簭 + @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] + @access_module = Hash.new + #濡傛灉鏃ヨ獙鐐虹┖ + if @log_result && !@log_result.empty? + #灏嗘暟缁勪腑鐨勬ā鍧楄闂粺璁″嚭鏉ユ斁鍒癶ash涓 姣忔潯璁板綍鐨勭鍥涗釜鍊兼槸Controller#action鐨勫舰寮 + @log_result.collect! {|r| @access_module[r[3]].nil? ? + @access_module[r[3]] = 1 : @access_module[r[3]] +=1 } + # 鍘绘帀key鍙兘涓虹┖璁板綍 鎺掑簭锛岀劧鍚庡彇閫嗗簭 + @access_module = @access_module.delete_if{|k,v| k.nil?}.sort_by{|key,val| val}.reverse + else + @access_module end + end + + #鑰楁椂鍒嗘瀽 + def time_analysis + #瑙f瀽鏃ュ織 + @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] + if @log_result && !@log_result.empty? + #鍒嗛〉 + @log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE) + else + @log_result = [] + end + end end From 59a47002aeef4f46e47266d59fbb05c489cc4bf8 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:46:06 +0800 Subject: [PATCH 13/45] =?UTF-8?q?=E9=87=8D=E6=9E=84=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E4=BA=86=E8=AE=B8=E5=A4=9A=E7=9A=84=E7=A9=BA=E6=8C=87?= =?UTF-8?q?=E9=92=88=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/system_log_helper.rb | 125 +++++++++++++++++++++++++++---- 1 file changed, 112 insertions(+), 13 deletions(-) diff --git a/app/helpers/system_log_helper.rb b/app/helpers/system_log_helper.rb index 4528143ef..1125904c8 100644 --- a/app/helpers/system_log_helper.rb +++ b/app/helpers/system_log_helper.rb @@ -2,9 +2,11 @@ module SystemLogHelper class SystemLog class << self # 鍒嗛〉锛堟敮鎸佸鍏抽敭瀛楁煡璇級 - def logo_data(page,per,search) - logs = find_all_logs - + def logo_data(page,per,search,day) + logs = find_all_logs day + if logs.empty? #濡傛灉杩斿洖鐨勬槸绌烘暩绲勶紝灏辫鏄庢棩瑾屾枃浠朵笉瀛樺湪 + return logs + end # 鏍规嵁search鍙傛暟鏉ュ喅瀹氭槸鍚﹂渶瑕佹煡璇 keywords = search if keywords && !keywords.strip.blank? @@ -14,43 +16,140 @@ module SystemLogHelper logs = logs.find_all do |log| keywords.all? { |r| log =~ r } end + #鐢↘aminari鍒嗛〉 logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} logs.collect! do |log| keywords.each { |r| log.gsub!(r, '\0')} log end else - logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} + logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} end logs end #娓呴櫎鏃ヨ獙 - def clear - File.open(logfile_path, 'w') do |f| - f.print '' + def clear day + if File::exists?(logfile_path day) + File.open(logfile_path(day), 'w') do |f| + f.print '' + end + else end end #璁鍙栨棩瑾 private - def find_all_logs - File.open(logfile_path) do |f| - #鎵撳紑鏂囦欢锛屽苟鎸夌収姝e垯琛ㄨ揪寮忓垏鍒嗭紝閫嗗簭锛屾渶鏂颁竴涓褰曞彲浠ユ墧鎺夛紙鍥犱负鏈鏂扮殑璁板綍姘歌繙閮芥槸璁块棶System_log) - f.read.split("Processing").reverse[1..-1] + def find_all_logs day + if File::exists?(logfile_path day) + File.open(logfile_path day) do |f| + #鎵撳紑鏂囦欢锛屽苟鎸夌収姝e垯琛ㄨ揪寮忓垏鍒嗭紝閫嗗簭锛屾渶鏂颁竴涓褰曞彲浠ユ墧鎺夛紙鍥犱负鏈鏂扮殑璁板綍姘歌繙閮芥槸璁块棶System_log) + f.read.split("Processing").reverse[1..-1] + end + else + [] end end # 鏃ュ織鏂囦欢鐨勮矾寰勶紝涓鑸湪Rails.root/log涓嬶紝鏍规嵁鐜閰嶇疆 # 渚濇璁板綍鍒皃roduct.log development.log test.log涓 - def logfile_path - File.join(Rails.root, "log", "#{Rails.env}.log") + def logfile_path day + #灏嗘棩鏈熷鐞嗘垚2015-01-01鐨勫舰寮 + unless day.nil? + dayArr = day.split('-') + if dayArr[1].length == 1 + dayArr[1] = "0" + dayArr[1] + end + if dayArr[2].length == 1 + dayArr[2] = "0" + dayArr[2] + end + day = dayArr.join('-') + end + #濡傛灉涓嶆槸鐣跺ぉ锛屽墖闇瑕佸姞寰岀洞 + if !day.nil? && !day.strip.blank? && day != Time.now.strftime("%Y-%m-%d") + File.join(Rails.root, "log", "#{Rails.env}.log.#{day.gsub('-','')}") + else + File.join(Rails.root, "log", "#{Rails.env}.log") + end end #鏇挎彌鎻涜绗 def parse(log) ERB::Util.html_escape(log.gsub(/\e\[[\d;m]+/, '')).gsub("\n", "
    ") end + + #瀹氫箟鍝嶅簲姝e垯琛ㄨ揪寮 2015-01-20 11:31:13 INFO -- Completed 200 OK in 125ms (Views: 81.0ms | ActiveRecord: 2.0ms) + def response_regex + 'Completed \d+ \w+ in (\d+)ms \(Views: (\d+\.\d+)?ms \| ActiveRecord: (\d+\.\d+)?ms\)' + end + + #灏嗕竴鏉¤褰曚腑鐨勫湴鍧涓绘満绛夐兘鍒嗘瀽鍑烘潵 + def get_status(paragraph) + request_regex = 'Started GET \"(\/.*)\" for ([\d]+\.[\d]+\.[\d]+\.[\d]+) at [\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*)' + controller_regex = 'Processing by ([\w]+#[\w]+)' + page_time_regex = 'Views: \d+(\.\d+)?ms' + activeRecord_time_regex = 'ActiveRecord: \d+(\.\d+)?ms' + + if paragraph.match(request_regex) != nil + request_url = paragraph.match(request_regex)[1] #姝e垯琛ㄨ揪寮忎腑鐨勬嫭鍙疯兘澶熸埅鍙栨垚鏁扮粍 + request_host = paragraph.match(request_regex)[2] + request_at = paragraph.match(request_regex)[3] + end + + if paragraph.match(controller_regex) != nil + controller_name = paragraph.match(controller_regex)[1] + end + + if paragraph.match(response_regex) != nil + #print(paragraph.match(response_regex)) + total_time = paragraph.match(response_regex)[1] + page_time = paragraph.match(response_regex)[2] + activeRecord_time = paragraph.match(response_regex)[3] + page_time_percent = page_time.to_f/(total_time.to_f) + activeRecord_time_percent = activeRecord_time.to_f/(total_time.to_f) + else + end + request_status = [request_url, request_host, request_at, + controller_name, total_time,page_time,page_time_percent,activeRecord_time,activeRecord_time_percent] + request_status + end + + #鍒嗘瀽鏃ュ織 + public + def analysis day + csv = Array.new + #濡傛灉鏂囦欢涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥炵┖鏁扮粍 + if File::exists?(logfile_path day) + File.open(logfile_path(day), "r:utf-8") do |file| + paragraph = "" + begin_flag = false + # 瀵规瘡涓琛岃繘琛屽垽鏂 + file.each do |line| + # 浠"Started GET "寮澶翠负涓涓猵aragraph + #print(line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) INFO -- Started GET ') == nil) + if (line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) \w+ -- Started GET ') != nil) + if !begin_flag + begin_flag = true + paragraph.concat(line) + else + # 鍙︿竴涓猵aragraph鐨勫紑澶 + if (paragraph.match(response_regex) != nil) + csv << get_status(paragraph) + end + begin_flag = true + paragraph = line + end + else + if begin_flag + paragraph.concat(line) + else + end + end + end + end + end + csv + end end end end From 458749b921cb46288c1c28565d8d5a2dd6220770 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:46:29 +0800 Subject: [PATCH 14/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E5=9B=BD?= =?UTF-8?q?=E9=99=85=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/zh.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/config/locales/zh.yml b/config/locales/zh.yml index e23a563a6..47000aa33 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2240,3 +2240,29 @@ zh: label_contain_resource: 宸插寘鍚祫婧愶細 label_quote_resource_failed: ",姝よ祫婧愬紩鐢ㄥけ璐! " + label_log_detail: "鏃ュ織璇︽儏" + label_log_delete_log: "鍒犻櫎鏃ュ織" + label_log_access_analysis: "璁块棶缁熻" + label_log_time_analysis: "鑰楁椂鍒嗘瀽" + label_log_refresh: "鍒锋柊" + label_log_key: "鍏抽敭瀛楋細" + label_log_time: "鏃堕棿锛" + label_log_delete_confirm: "纭娓呴櫎璇ュぉ鏃ュ織鍐呭?" + label_log_access_count: "璁块棶娆℃暟" + label_log_url: "URL璺緞" + label_log_ip: "璁块棶IP" + label_log_access_time: "璁块棶鏃堕棿" + label_log_access_controller_action: "妯″潡璺緞" + label_log_response_time: "鍝嶅簲鏃堕棿" + label_log_views_time: "椤甸潰娓叉煋鏃堕棿" + label_log_access_time_percent: "椤甸潰娓叉煋鏃堕棿鐧惧垎姣" + label_log_active_record_time: "AR鍝嶅簲鏃堕棿" + label_log_active_record_time_percent: "AR鍝嶅簲鏃堕棿鐧惧垎姣" + views: + pagination: + first: "« 棣栭〉" + last: "鏈〉 »" + previous: "« 涓婁竴椤" + next: "涓嬩竴椤 »" + truncate: "..." + From 0502eb16a66b8b8c42e6dc77c6284d23d9ef4d8b Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:47:29 +0800 Subject: [PATCH 15/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BA=86=E8=AE=BF?= =?UTF-8?q?=E9=97=AE=E7=BB=9F=E8=AE=A1=E9=A1=B5=E9=9D=A2=E5=92=8C=E8=80=97?= =?UTF-8?q?=E6=97=B6=E5=88=86=E6=9E=90=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/system_log/access_analysis.html.erb | 41 ++++++++++++++ app/views/system_log/time_analysis.html.erb | 56 +++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 app/views/system_log/access_analysis.html.erb create mode 100644 app/views/system_log/time_analysis.html.erb diff --git a/app/views/system_log/access_analysis.html.erb b/app/views/system_log/access_analysis.html.erb new file mode 100644 index 000000000..ecd22b6e5 --- /dev/null +++ b/app/views/system_log/access_analysis.html.erb @@ -0,0 +1,41 @@ +<% @nav_dispaly_home_path_label = 1 + @nav_dispaly_main_course_label = 1 + @nav_dispaly_main_project_label = 1 + @nav_dispaly_main_contest_label = 1 %> +<% @nav_dispaly_forum_label = 1%> + + +
    +

    +

    + " maxlength="100" readonly="true" onclick="HS_setDate(this)"/> + +
    +

    + +
    + <%=link_to l(:label_log_detail), system_log_path %> | + <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | + <%=link_to l(:label_log_access_analysis), system_log_access_analysis_path %> | + <%=link_to l(:label_log_time_analysis), system_log_time_analysis_path %> | + <%=link_to_function l(:label_log_refresh), 'redo()' %> +
    +
    +
      
    + + + + + <% unless @access_module.nil? %> +<% @access_module.each do |k, v| %> + <% unless k.blank? %> + + + <% end %> +<%end %> + <%end %> +
    <%= l(:label_log_access_analysis)%>
    <%= l(:label_log_access_controller_action)%><%= l(:label_log_access_count)%>
    <%= raw k %><%= raw v %>
    diff --git a/app/views/system_log/time_analysis.html.erb b/app/views/system_log/time_analysis.html.erb new file mode 100644 index 000000000..3f42eb6fc --- /dev/null +++ b/app/views/system_log/time_analysis.html.erb @@ -0,0 +1,56 @@ +<% @nav_dispaly_home_path_label = 1 + @nav_dispaly_main_course_label = 1 + @nav_dispaly_main_project_label = 1 + @nav_dispaly_main_contest_label = 1 %> +<% @nav_dispaly_forum_label = 1%> +
    +

    +

    + " maxlength="100" readonly="true" onclick="HS_setDate(this)"/> + +
    +

    + +
    + <%=link_to l(:label_log_detail), system_log_path %> | + <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | + <%=link_to l(:label_log_access_analysis), system_log_access_analysis_path %> | + <%=link_to l(:label_log_time_analysis), system_log_time_analysis_path %> | + <%=link_to_function l(:label_log_refresh), 'redo()' %> +
    +
    +
      
    +<%= paginate @log_result unless @log_result.empty? %>
    + + + + + + + + + + + + <% unless @log_result.nil? %> +<% @log_result.each do |r| %> + <% unless r.blank? %> + + + + + + + + + + + <% end %> +<%end %> + <%end %> +
    <%= l(:label_log_time_analysis) %>
    <%= l(:label_log_url) %><%= l(:label_log_ip) %><%= l(:label_log_access_time) %><%= l(:label_log_access_controller_action) %><%= l(:label_log_response_time) %><%= l(:label_log_views_time) %><%= l(:label_log_access_time_percent) %><%= l(:label_log_active_record_time) %><%= l(:label_log_active_record_time_percent) %>
    <%= raw r[0].length>50?r[0].truncate(20) : r[0] unless r[0].nil? %><%= raw r[1] %><%= raw r[2] %><%= raw r[3] %><%= raw r[4] %><%= raw r[5] %><%= raw r[6] %><%= raw r[7] %><%= raw r[8] %>
    +<%= paginate @log_result unless @log_result.empty? %>
    \ No newline at end of file From 566f59c49eaf22fb6ec9b45647e1405a83275b64 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 16:52:09 +0800 Subject: [PATCH 16/45] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=AA=E6=9C=89?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E6=89=8D=E8=83=BD=E6=9F=A5=E7=9C=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index 92eaca0e3..9342bd7dc 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -1,8 +1,7 @@ # 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 class SystemLogController < ApplicationController - before_filter :require_login - before_filter :require_admin ,:only =>:clear + before_filter :require_admin # 榛樿姣忛〉鏄剧ず20鏉¤褰 PER_PAGE = 20 layout "base" From 7fc2ea04844069d17d33920bfcb492c2b849e008 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 17:22:29 +0800 Subject: [PATCH 17/45] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=BD=E9=99=85?= =?UTF-8?q?=E5=8C=96=E6=96=87=E4=BB=B6=E5=90=8D=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/system_log/time_analysis.html.erb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/system_log/time_analysis.html.erb b/app/views/system_log/time_analysis.html.erb index 3f42eb6fc..c945e1dec 100644 --- a/app/views/system_log/time_analysis.html.erb +++ b/app/views/system_log/time_analysis.html.erb @@ -33,7 +33,7 @@ <%= l(:label_log_access_controller_action) %> <%= l(:label_log_response_time) %> <%= l(:label_log_views_time) %> - <%= l(:label_log_access_time_percent) %> + <%= l(:label_log_views_time_percent) %> <%= l(:label_log_active_record_time) %> <%= l(:label_log_active_record_time_percent) %> <% unless @log_result.nil? %> From 4d20c8080f0fce26b4f9be04fec6378c74d45c3e Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 17:22:44 +0800 Subject: [PATCH 18/45] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=BD=E9=99=85?= =?UTF-8?q?=E5=8C=96=E6=96=87=E4=BB=B6=E5=90=8D=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/zh.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 47000aa33..e315ed4dd 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2255,7 +2255,7 @@ zh: label_log_access_controller_action: "妯″潡璺緞" label_log_response_time: "鍝嶅簲鏃堕棿" label_log_views_time: "椤甸潰娓叉煋鏃堕棿" - label_log_access_time_percent: "椤甸潰娓叉煋鏃堕棿鐧惧垎姣" + label_log_views_time_percent: "椤甸潰娓叉煋鏃堕棿鐧惧垎姣" label_log_active_record_time: "AR鍝嶅簲鏃堕棿" label_log_active_record_time_percent: "AR鍝嶅簲鏃堕棿鐧惧垎姣" views: From c0b12ac60c818840a87d5f161f2224ab74907722 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 21 Jan 2015 17:42:48 +0800 Subject: [PATCH 19/45] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E5=86=97=E4=BD=99?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/system_log/access_analysis.html.erb | 5 ----- app/views/system_log/index.html.erb | 6 ------ app/views/system_log/time_analysis.html.erb | 5 ----- 3 files changed, 16 deletions(-) diff --git a/app/views/system_log/access_analysis.html.erb b/app/views/system_log/access_analysis.html.erb index ecd22b6e5..631530370 100644 --- a/app/views/system_log/access_analysis.html.erb +++ b/app/views/system_log/access_analysis.html.erb @@ -12,11 +12,6 @@

    -
    <%=link_to l(:label_log_detail), system_log_path %> | <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | diff --git a/app/views/system_log/index.html.erb b/app/views/system_log/index.html.erb index edef8e023..668d79a6e 100644 --- a/app/views/system_log/index.html.erb +++ b/app/views/system_log/index.html.erb @@ -6,12 +6,6 @@
    - -
    <%=link_to l(:label_log_detail), system_log_path %> | <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | diff --git a/app/views/system_log/time_analysis.html.erb b/app/views/system_log/time_analysis.html.erb index c945e1dec..bdf01ca27 100644 --- a/app/views/system_log/time_analysis.html.erb +++ b/app/views/system_log/time_analysis.html.erb @@ -10,11 +10,6 @@

    -
    <%=link_to l(:label_log_detail), system_log_path %> | <%=link_to l(:label_log_delete_log), system_log_clear_path, {:confirm => l(:label_log_delete_confirm),:day=>params[:day].nil? ? Time.now.strftime("%Y-%m-%d") : params[:day]}%> | From 4461a66c7a3b5aab380db1380f026d7872125ff6 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Wed, 21 Jan 2015 17:43:06 +0800 Subject: [PATCH 20/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E5=87=BD=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/javascripts/application.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/public/javascripts/application.js b/public/javascripts/application.js index 5a6c89cc0..5692ebe83 100644 --- a/public/javascripts/application.js +++ b/public/javascripts/application.js @@ -843,3 +843,7 @@ function HS_setDate(inputObj){ calenderObj.targetObj = inputObj; inputObj.parentNode.insertBefore(calenderObj,inputObj.nextSibling); } +//lizanle 鍒锋柊鍑芥暟 +function redo() { + window.location.reload() +} From 43c5feb1f7f84920fac8301d084a941c1c5525ce Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 10:06:16 +0800 Subject: [PATCH 21/45] =?UTF-8?q?=E8=A1=A5=E4=B8=81=EF=BC=9A=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E6=97=A5=E5=BF=97=E8=BF=98=E6=B2=A1=E6=9C=89=E5=85=B3?= =?UTF-8?q?=E9=97=AD=E5=B0=B1=E8=A2=AB=E9=87=8D=E5=91=BD=E5=90=8D=E7=9A=84?= =?UTF-8?q?bug=EF=BC=9A=20https://bugs.ruby-lang.org/issues/7303?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/initializers/logger.rb | 227 ++++++++++++++++++++++++++++++++++ 1 file changed, 227 insertions(+) create mode 100644 config/initializers/logger.rb diff --git a/config/initializers/logger.rb b/config/initializers/logger.rb new file mode 100644 index 000000000..3fa792b27 --- /dev/null +++ b/config/initializers/logger.rb @@ -0,0 +1,227 @@ +# logger.rb - simple logging utility +# Copyright (C) 2000-2003, 2005, 2008, 2011 NAKAMURA, Hiroshi . +# +# Documentation:: NAKAMURA, Hiroshi and Gavin Sinclair +# License:: +# You can redistribute it and/or modify it under the same terms of Ruby's +# license; either the dual license version in 2003, or any later version. +# Revision:: $Id: logger.rb 31641 2011-05-19 00:07:25Z nobu $ +# +# A simple system for logging messages. See Logger for more documentation. + +require 'monitor' +require 'fileutils' +# == Description +# +# The Logger class provides a simple but sophisticated logging utility that +# you can use to output messages. +# +# The messages have associated levels, such as +INFO+ or +ERROR+ that indicate +# their importance. You can then give the Logger a level, and only messages +# at that level of higher will be printed. +# +# The levels are: +# +# +FATAL+:: an unhandleable error that results in a program crash +# +ERROR+:: a handleable error condition +# +WARN+:: a warning +# +INFO+:: generic (useful) information about system operation +# +DEBUG+:: low-level information for developers +# +# For instance, in a production system, you may have your Logger set to +# +INFO+ or even +WARN+ +# When you are developing the system, however, you probably +# want to know about the program's internal state, and would set the Logger to +# +DEBUG+. +# +# *Note*: Logger does not escape or sanitize any messages passed to it. +# Developers should be aware of when potentially malicious data (user-input) +# is passed to Logger, and manually escape the untrusted data: +# +# logger.info("User-input: #{input.dump}") +# logger.info("User-input: %p" % input) +# +# You can use #formatter= for escaping all data. +# +# original_formatter = Logger::Formatter.new +# logger.formatter = proc { |severity, datetime, progname, msg| +# original_formatter.call(severity, datetime, progname, msg.dump) +# } +# logger.info(input) +# +# === Example +# +# This creates a logger to the standard output stream, with a level of +WARN+ +# +# log = Logger.new(STDOUT) +# log.level = Logger::WARN +# +# log.debug("Created logger") +# log.info("Program started") +# log.warn("Nothing to do!") +# +# begin +# File.each_line(path) do |line| +# unless line =~ /^(\w+) = (.*)$/ +# log.error("Line in wrong format: #{line}") +# end +# end +# rescue => err +# log.fatal("Caught exception; exiting") +# log.fatal(err) +# end +# +# Because the Logger's level is set to +WARN+, only the warning, error, and +# fatal messages are recorded. The debug and info messages are silently +# discarded. +# +# === Features +# +# There are several interesting features that Logger provides, like +# auto-rolling of log files, setting the format of log messages, and +# specifying a program name in conjunction with the message. The next section +# shows you how to achieve these things. +# +# +# == HOWTOs +# +# === How to create a logger +# +# The options below give you various choices, in more or less increasing +# complexity. +# +# 1. Create a logger which logs messages to STDERR/STDOUT. +# +# logger = Logger.new(STDERR) +# logger = Logger.new(STDOUT) +# +# 2. Create a logger for the file which has the specified name. +# +# logger = Logger.new('logfile.log') +# +# 3. Create a logger for the specified file. +# +# file = File.open('foo.log', File::WRONLY | File::APPEND) +# # To create new (and to remove old) logfile, add File::CREAT like; +# # file = open('foo.log', File::WRONLY | File::APPEND | File::CREAT) +# logger = Logger.new(file) +# +# 4. Create a logger which ages logfile once it reaches a certain size. Leave +# 10 "old log files" and each file is about 1,024,000 bytes. +# +# logger = Logger.new('foo.log', 10, 1024000) +# +# 5. Create a logger which ages logfile daily/weekly/monthly. +# +# logger = Logger.new('foo.log', 'daily') +# logger = Logger.new('foo.log', 'weekly') +# logger = Logger.new('foo.log', 'monthly') +# +# === How to log a message +# +# Notice the different methods (+fatal+, +error+, +info+) being used to log +# messages of various levels? Other methods in this family are +warn+ and +# +debug+. +add+ is used below to log a message of an arbitrary (perhaps +# dynamic) level. +# +# 1. Message in block. +# +# logger.fatal { "Argument 'foo' not given." } +# +# 2. Message as a string. +# +# logger.error "Argument #{ @foo } mismatch." +# +# 3. With progname. +# +# logger.info('initialize') { "Initializing..." } +# +# 4. With severity. +# +# logger.add(Logger::FATAL) { 'Fatal error!' } +# +# The block form allows you to create potentially complex log messages, +# but to delay their evaluation until and unless the message is +# logged. For example, if we have the following: +# +# logger.debug { "This is a " + potentially + " expensive operation" } +# +# If the logger's level is +INFO+ or higher, no debug messages will be logged, +# and the entire block will not even be evaluated. Compare to this: +# +# logger.debug("This is a " + potentially + " expensive operation") +# +# Here, the string concatenation is done every time, even if the log +# level is not set to show the debug message. +# +# === How to close a logger +# +# logger.close +# +# === Setting severity threshold +# +# 1. Original interface. +# +# logger.sev_threshold = Logger::WARN +# +# 2. Log4r (somewhat) compatible interface. +# +# logger.level = Logger::INFO +# +# DEBUG < INFO < WARN < ERROR < FATAL < UNKNOWN +# +# +# == Format +# +# Log messages are rendered in the output stream in a certain format by +# default. The default format and a sample are shown below: +# +# Log format: +# SeverityID, [Date Time mSec #pid] SeverityLabel -- ProgName: message +# +# Log sample: +# I, [Wed Mar 03 02:34:24 JST 1999 895701 #19074] INFO -- Main: info. +# +# You may change the date and time format via #datetime_format= +# +# logger.datetime_format = "%Y-%m-%d %H:%M:%S" +# # e.g. "2004-01-03 00:54:26" +# +# Or, you may change the overall format with #formatter= method. +# +# logger.formatter = proc do |severity, datetime, progname, msg| +# "#{datetime}: #{msg}\n" +# end +# # e.g. "Thu Sep 22 08:51:08 GMT+9:00 2005: hello world" +# +class Logger + # Device used for logging messages. + class LogDevice + def shift_log_period(period_end) + postfix = period_end.strftime("%Y%m%d") # YYYYMMDD + age_file = "#{@filename}.#{postfix}" + if FileTest.exist?(age_file) + # try to avoid filename crash caused by Timestamp change. + idx = 0 + # .99 can be overridden; avoid too much file search with 'loop do' + while idx < 100 + idx += 1 + age_file = "#{@filename}.#{postfix}.#{idx}" + break unless FileTest.exist?(age_file) + end + end + # @dev.close rescue nil + # File.rename("#{@filename}", age_file) + # @dev = create_logfile(@filename) + FileUtils.cp(@filename, age_file) + reset_logfile(@dev) # see below for this new method return true + return true + end + + def reset_logfile(logdev) + logdev.truncate( 0 ) + logdev.sync = true + add_log_header(logdev) + end + end +end From 8b6750c1ed198c99e4e04ffe9255c587bd15e4e3 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 17:04:12 +0800 Subject: [PATCH 22/45] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=BA=E5=8F=AA=E8=83=BD=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=BD=93=E5=A4=A9=E7=9A=84=E6=97=A5=E5=BF=97=EF=BC=9A=E8=BF=99?= =?UTF-8?q?=E6=A0=B7=E5=AD=90=E4=BF=9D=E6=8A=A4=E5=8E=9F=E6=9D=A5=E7=9A=84?= =?UTF-8?q?=E6=97=A5=E5=BF=97=EF=BC=8C=E5=8F=88=E8=83=BD=E8=BF=9B=E8=A1=8C?= =?UTF-8?q?=E5=BD=93=E5=A4=A9=E7=9A=84=E8=B0=83=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index 9342bd7dc..abbb016d9 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -1,7 +1,7 @@ # 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 class SystemLogController < ApplicationController - before_filter :require_admin + before_filter :require_login # 榛樿姣忛〉鏄剧ず20鏉¤褰 PER_PAGE = 20 layout "base" @@ -14,8 +14,8 @@ end #娓呴櫎鏃ュ織 - def clear day - SystemLog.clear day + def clear + SystemLog.clear params[:day] redirect_to :action => :index end From 4fe8b230693e4e5f475763246066430a2870f1ec Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Thu, 22 Jan 2015 17:50:24 +0800 Subject: [PATCH 23/45] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E4=B8=8D=E5=BF=85?= =?UTF-8?q?=E8=A6=81=E7=9A=84=E4=BB=A3=E7=A0=81=EF=BC=8C=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=B3=A8=E9=87=8A=EF=BC=8C=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index abbb016d9..8974f8810 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -9,8 +9,6 @@ #鏌ョ湅鎵鏈夋棩蹇 def index @logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] , params[:day]) - @logs - #@access_module = params[:access_module] unless params[:access_module].nil? end #娓呴櫎鏃ュ織 @@ -24,11 +22,11 @@ #瑙f瀽鏃ュ織锛岀劧鍚庨嗗簭 @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] @access_module = Hash.new - #濡傛灉鏃ヨ獙鐐虹┖ + #鏃ヨ獙鍙兘鐐虹┖ if @log_result && !@log_result.empty? #灏嗘暟缁勪腑鐨勬ā鍧楄闂粺璁″嚭鏉ユ斁鍒癶ash涓 姣忔潯璁板綍鐨勭鍥涗釜鍊兼槸Controller#action鐨勫舰寮 @log_result.collect! {|r| @access_module[r[3]].nil? ? - @access_module[r[3]] = 1 : @access_module[r[3]] +=1 } + @access_module[r[3]] = 1 : @access_module[r[3]] +=1 } # 鍘绘帀key鍙兘涓虹┖璁板綍 鎺掑簭锛岀劧鍚庡彇閫嗗簭 @access_module = @access_module.delete_if{|k,v| k.nil?}.sort_by{|key,val| val}.reverse else @@ -41,8 +39,8 @@ #瑙f瀽鏃ュ織 @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] if @log_result && !@log_result.empty? - #鍒嗛〉 - @log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE) + #鍒嗛〉 + @log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE) else @log_result = [] end From 79fd7ebd7a45a9dcd04dcb0d326ba9bc2fa0a126 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:46:02 +0800 Subject: [PATCH 24/45] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E4=B8=8B=E6=97=A5=E5=BF=97=E5=88=86=E5=A4=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/environments/production.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/config/environments/production.rb b/config/environments/production.rb index 8a2847731..78b386aac 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -17,6 +17,7 @@ RedmineApp::Application.configure do # config.logger.level = Logger::INFO # Full error reports are disabled and caching is turned on + config.logger = Logger.new('log/development.log', 'daily',1048576) # daily, weekly or monthly config.action_controller.perform_caching = true config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Enable serving of images, stylesheets, and javascripts from an asset server From ae74dff89b23869727942cfac0da85d50489011e Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:46:55 +0800 Subject: [PATCH 25/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/initializers/logger.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/config/initializers/logger.rb b/config/initializers/logger.rb index 3fa792b27..e9b61ce06 100644 --- a/config/initializers/logger.rb +++ b/config/initializers/logger.rb @@ -195,6 +195,7 @@ require 'fileutils' # # e.g. "Thu Sep 22 08:51:08 GMT+9:00 2005: hello world" # class Logger + #鍏蜂綋鍐呭璇风湅https://bugs.ruby-lang.org/issues/7303 # Device used for logging messages. class LogDevice def shift_log_period(period_end) @@ -213,11 +214,12 @@ class Logger # @dev.close rescue nil # File.rename("#{@filename}", age_file) # @dev = create_logfile(@filename) + #瑕嗙洊鍘熸潵lib搴撶殑鏂规硶锛屽皢涓婅竟涓夎鍒犻櫎锛屽鍔犱笅杈逛袱琛 FileUtils.cp(@filename, age_file) reset_logfile(@dev) # see below for this new method return true return true end - + #鎵撳紑鍘熸潵lib搴擄紝鏂板涓涓柟娉 def reset_logfile(logdev) logdev.truncate( 0 ) logdev.sync = true From 03ae5fdeacca691a07d8eb66c5ac5f4a2bf68efb Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:47:22 +0800 Subject: [PATCH 26/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/project.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/project.rb b/app/models/project.rb index c4d07a1ad..ca80d90f8 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -126,6 +126,7 @@ class Project < ActiveRecord::Base #姝や唬鐮佸姛鑳斤細涓哄師redmine涓」鐩殑鏍戝舰缁撴瀯鎸夊悕绉伴瀛楁瘝鎺掑簭锛屾湰绯荤粺椤圭洰闈炴爲褰㈢粨鏋勶紝涓旈」鐩帓搴忔柟寮忔棤鎸夐瀛楁瘝鎺掑簭锛屽彟璇ヤ唬鐮佹墽琛屼細浣跨┖鏁版嵁搴撴椂鍒涘缓椤圭洰鏃跺嚭寮傚父鏁呮敞閲婃帀 #after_save :update_position_under_parent, :if => Proc.new {|project| project.name_changed?} + #ActiveModel::Dirty 杩欓噷鏈変竴涓猚hanged鏂规硶銆傚浠讳綍瀵硅薄閮藉彲浠ョ敤 after_save :update_inherited_members, :if => Proc.new {|project| project.inherit_members_changed?} # 鍒涘缓project涔嬪悗榛樿鍒涘缓涓涓猙oard锛屼箣鍚庣殑board鍘绘帀浜哹oard鐨勬蹇 after_create :create_board_sync,:expire_project_cache From 27fde6c641601f0cc013a1a4cc02f7867248a94d Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:47:54 +0800 Subject: [PATCH 27/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/system_log_helper.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/helpers/system_log_helper.rb b/app/helpers/system_log_helper.rb index 1125904c8..53cf2038b 100644 --- a/app/helpers/system_log_helper.rb +++ b/app/helpers/system_log_helper.rb @@ -12,12 +12,13 @@ module SystemLogHelper if keywords && !keywords.strip.blank? # 鎶妅eywords杞寲鎴愭鍒欒〃杈惧紡鏁扮粍 keywords = keywords.strip.split(/\s+/).collect! {|w| Regexp.new(w, 'i')} - # 涓鏉¤褰曞簲璇ュ尮閰嶆瘡涓叧閿瓧 + # 涓鏉¤褰曞簲璇ュ尮閰嶆瘡涓叧閿瓧 log =~ r 鏄log璁板綍杩涜鍒ゆ柇鏄惁绗﹀悎r鐨勬鍒欒〃杈惧紡 logs = logs.find_all do |log| keywords.all? { |r| log =~ r } end #鐢↘aminari鍒嗛〉 logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} + #灏嗗垎椤靛悗鐨勮褰曠殑鎼滅储缁撴灉娣诲姞鏍峰紡锛屾牱寮忎腑鐨刓0鏄粰缁檙鍗犱綅缃殑銆 logs.collect! do |log| keywords.each { |r| log.gsub!(r, '\0')} log From d2d1a9659bec5e9923d9c5a6a92217bcd3c4f840 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:49:07 +0800 Subject: [PATCH 28/45] =?UTF-8?q?=E5=BC=80=E5=8F=91=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E4=B8=8B=E5=8E=BB=E6=8E=89=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/environments/development.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/config/environments/development.rb b/config/environments/development.rb index 765fda433..14c752cb4 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -7,11 +7,11 @@ RedmineApp::Application.configure do # Log error messages when you accidentally call methods on nil. config.whiny_nils = true - + config.logger = Logger.new('log/development.log', 'daily') # daily, weekly or monthly # Show full error reports and disable caching config.consider_all_requests_local = true - config.action_controller.perform_caching = true - config.cache_store = :file_store, "#{Rails.root }/public/tmp/" + #config.action_controller.perform_caching = true + #config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = false From f394c3878edadda1d601e9854f3feb95f3152a85 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:50:50 +0800 Subject: [PATCH 29/45] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E5=90=8D=E5=AD=97=E8=A7=84=E5=AE=9A=E4=B8=BA?= =?UTF-8?q?production.log?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/environments/production.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/environments/production.rb b/config/environments/production.rb index 78b386aac..48b2514cf 100644 --- a/config/environments/production.rb +++ b/config/environments/production.rb @@ -17,7 +17,7 @@ RedmineApp::Application.configure do # config.logger.level = Logger::INFO # Full error reports are disabled and caching is turned on - config.logger = Logger.new('log/development.log', 'daily',1048576) # daily, weekly or monthly + config.logger = Logger.new('log/production.log', 'daily',1048576) # daily, weekly or monthly config.action_controller.perform_caching = true config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Enable serving of images, stylesheets, and javascripts from an asset server From bb9ab0755cd7c0e24552ce3f215ba3b5ac54bd06 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 09:54:18 +0800 Subject: [PATCH 30/45] =?UTF-8?q?=E5=BF=BD=E7=95=A5tmp=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 0ac235089..221c0b43d 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,7 @@ /files/* /log/* /public/tmp/* +/tmp/* /public/cache/* .gitignore /public/images/avatars/* From 7bf89c1fc15b677ed652f12bce0e64619e6126c5 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 10:00:04 +0800 Subject: [PATCH 31/45] =?UTF-8?q?=E5=BC=80=E5=8F=91=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E4=B8=8D=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/environments/development.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/environments/development.rb b/config/environments/development.rb index 14c752cb4..ab057ef3e 100644 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -10,8 +10,8 @@ RedmineApp::Application.configure do config.logger = Logger.new('log/development.log', 'daily') # daily, weekly or monthly # Show full error reports and disable caching config.consider_all_requests_local = true - #config.action_controller.perform_caching = true - #config.cache_store = :file_store, "#{Rails.root }/public/tmp/" + config.action_controller.perform_caching = false + config.cache_store = :file_store, "#{Rails.root }/public/tmp/" # Don't care if the mailer can't send config.action_mailer.raise_delivery_errors = false From 9b96d99d6f40900815345b7f8d58fe8ae43e5f61 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 10:05:36 +0800 Subject: [PATCH 32/45] =?UTF-8?q?=E6=97=A0=E6=94=B9=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index 318b8dcf0..c659a78ab 100644 --- a/Gemfile +++ b/Gemfile @@ -1,4 +1,4 @@ -source 'https://rubygems.org' +source 'http://ruby.taobao.org' unless RUBY_PLATFORM =~ /w32/ # unix-like only From 240678673d0508bb433f52477941f601d624454b Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 10:53:51 +0800 Subject: [PATCH 33/45] =?UTF-8?q?=E6=9C=80=E6=96=B0GemFile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 57 +++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 35 insertions(+), 22 deletions(-) diff --git a/Gemfile b/Gemfile index c659a78ab..5045cb822 100644 --- a/Gemfile +++ b/Gemfile @@ -1,4 +1,5 @@ -source 'http://ruby.taobao.org' +source 'http://rubygems.org' +#source 'http://ruby.sdutlinux.org/' unless RUBY_PLATFORM =~ /w32/ # unix-like only @@ -15,24 +16,45 @@ gem "coderay", "~> 1.0.6" gem "fastercsv", "~> 1.5.0", :platforms => [:mri_18, :mingw_18, :jruby] gem "builder", "3.0.0" gem 'acts-as-taggable-on', '2.4.1' +gem 'spreadsheet' +gem 'ruby-ole' +gem 'email_verifier' group :development do gem 'better_errors', path: 'lib/better_errors' gem 'rack-mini-profiler', path: 'lib/rack-mini-profiler' - if ENV['PRY'] - gem 'pry' - gem 'pry-nav' - end end -# group :test do -# # shoulda鐨勭増鏈仛浜嗘敼鍔 -# #gem "shoulda", "~> 3.3.2" -# gem "shoulda", "> 3.3.2" -# gem "mocha", "~> 0.13.3" -# gem 'capybara', '~> 2.0.0' -# gem 'nokogiri', '< 1.6.0' -# end +group :test do + gem "shoulda", "~> 3.5.0" + gem "mocha", "~> 1.1.0" + gem 'capybara', '~> 2.4.1' + gem 'nokogiri', '~> 1.6.3' + gem 'factory_girl', '~> 4.4.0' + gem 'selenium-webdriver', '~> 2.42.0' + + + # platforms :mri, :mingw do + # group :rmagick do + # # RMagick 2 supports ruby 1.9 + # # RMagick 1 would be fine for ruby 1.8 but Bundler does not support + # # different requirements for the same gem on different platforms + # gem "rmagick", ">= 2.0.0" + # end + #end +end + +group :development, :test do + # gem "guard-rails", '~> 0.5.3' + gem 'spork-testunit', '~> 0.0.8' + # gem 'guard-spork', '~> 1.5.1' + # gem 'guard-test', '~> 1.0.0' + gem 'ruby-prof', '~> 0.15.1' unless RUBY_PLATFORM =~ /w32/ + gem 'pry' + gem 'pry-nav' + gem 'rspec-rails' , '2.13.1' + gem 'guard-rspec','2.5.0' +end # Gems used only for assets and not required @@ -53,15 +75,6 @@ group :ldap do end -# platforms :mri, :mingw do -# group :rmagick do -# # RMagick 2 supports ruby 1.9 -# # RMagick 1 would be fine for ruby 1.8 but Bundler does not support -# # different requirements for the same gem on different platforms -# gem "rmagick", ">= 2.0.0" -# end -# end - # Optional gem for OpenID authentication group :openid do gem "ruby-openid", "~> 2.1.4", :require => "openid" From 69ced4b14bea7f33f459d873a8be934d4803846d Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 11:08:58 +0800 Subject: [PATCH 34/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=9B=BD=E9=99=85?= =?UTF-8?q?=E5=8C=96=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/zh.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/config/locales/zh.yml b/config/locales/zh.yml index 493db6ccd..048cc7aaa 100644 --- a/config/locales/zh.yml +++ b/config/locales/zh.yml @@ -2300,7 +2300,8 @@ zh: label_poll_answer_valid_result: 浠ヤ笂涓烘湁鏁堥棶绛旈绛旀锛 label_answer_total: 鎬昏锛 label_join_project: 鍔犲叆椤圭洰 - + label_technical_support: 鎶鏈敮鎸侊細 + label_feedback: 鎰忚鍙嶉 label_log_detail: "鏃ュ織璇︽儏" label_log_delete_log: "鍒犻櫎鏃ュ織" label_log_access_analysis: "璁块棶缁熻" From df88cb6eba6b1261938f53bdcc30714e56c14cf7 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Fri, 23 Jan 2015 11:14:48 +0800 Subject: [PATCH 35/45] =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E6=89=8D?= =?UTF-8?q?=E8=83=BD=E6=9F=A5=E7=9C=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index 8974f8810..eb62140f9 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -1,7 +1,7 @@ # 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 class SystemLogController < ApplicationController - before_filter :require_login + before_filter :require_admin # 榛樿姣忛〉鏄剧ず20鏉¤褰 PER_PAGE = 20 layout "base" From 6c02c96342187e6cff562cab0dba4581570c043d Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 13:39:16 +0800 Subject: [PATCH 36/45] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E4=BA=86=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=97=B6=E9=97=B4=E8=B7=A8=E5=BA=A6=E7=9A=84=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lib/acts_as_activity_provider.rb | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb index 17f834c84..f467ef873 100644 --- a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb +++ b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb @@ -49,8 +49,11 @@ module Redmine end module ClassMethods + # Time 2015-01-27 13:37:41 + # Author lizanle + # Description 搴旇淇濇寔鍘熸潵鐨勫啓娉曟洿鍔犲鏄撴噦 # Returns events of type event_type visible by user that occured between from and to - def find_events(event_type, user, days, created_time, options) + def find_events(event_type, user, from, to, options) provider_options = activity_provider_options[event_type] raise "#{self.name} can not provide #{event_type} events." if provider_options.nil? @@ -91,6 +94,10 @@ module Redmine ActiveSupport::Deprecation.warn "acts_as_activity_provider with implicit :permission option is deprecated. Add a visible scope to the #{self.name} model or use explicit :permission option." scope = scope.scoped(:conditions => Project.allowed_to_condition(user, "view_#{self.name.underscore.pluralize}".to_sym, options)) end + # Time 2015-01-27 13:34:40 + # Author lizanle + # Description 杩欐浠g爜澧炲姞浜嗘椂闂磋法搴︼紝鏃堕棿璺ㄥ害搴旇鐢辩鐞嗗憳鏉ヨ皟鏁达紝鎵浠ュ簲璇ュ幓鎺 +=begin unless scope.all(provider_options[:find_options].dup).first.nil? if provider_options[:timestamp].include? "updated_on" to = scope.scoped(:order => "#{provider_options[:timestamp]} desc").all(provider_options[:find_options].dup).first.updated_on @@ -100,9 +107,10 @@ module Redmine if options[:course] from = (to - days.days) > created_time ? (to - days.days) : created_time.to_date else - from = to - days.days - 1.years + from = to - days.day - 1.years end end +=end if from && to scope = scope.scoped(:conditions => ["#{provider_options[:timestamp]} BETWEEN ? AND ?", from, to]) From d112c5a911196329d81f89b7313e48f12951a3c3 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 13:46:47 +0800 Subject: [PATCH 37/45] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BA=86=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../acts_as_activity_provider/lib/acts_as_activity_provider.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb index f467ef873..b7cb8c17d 100644 --- a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb +++ b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb @@ -96,7 +96,7 @@ module Redmine end # Time 2015-01-27 13:34:40 # Author lizanle - # Description 杩欐浠g爜澧炲姞浜嗘椂闂磋法搴︼紝鏃堕棿璺ㄥ害搴旇鐢辩鐞嗗憳鏉ヨ皟鏁达紝鎵浠ュ簲璇ュ幓鎺 + # Description 杩欐浠g爜灏辩敤scope.all杩涜浜嗘煡璇紝鎷栨參浜嗛熷害锛屽苟涓斿鍔犱簡鏃堕棿璺ㄥ害锛屾椂闂磋法搴﹀簲璇ョ敱绠$悊鍛樻潵璋冩暣锛屾墍浠ュ簲璇ュ幓鎺 =begin unless scope.all(provider_options[:find_options].dup).first.nil? if provider_options[:timestamp].include? "updated_on" From 5afbf6dbca66eb015bb098c256cdf84f8cbca661 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 14:19:46 +0800 Subject: [PATCH 38/45] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BA=86=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/system_log_controller.rb | 95 +++++++++++++----------- 1 file changed, 53 insertions(+), 42 deletions(-) diff --git a/app/controllers/system_log_controller.rb b/app/controllers/system_log_controller.rb index eb62140f9..274cb18a9 100644 --- a/app/controllers/system_log_controller.rb +++ b/app/controllers/system_log_controller.rb @@ -1,48 +1,59 @@ -# 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 - class SystemLogController < ApplicationController +# Time 2015-01-26 17:12:23 +# Author lizanle +# Description 鏄剧ず鍜屾竻鐞嗙郴缁熸棩蹇 +class SystemLogController < ApplicationController - before_filter :require_admin - # 榛樿姣忛〉鏄剧ず20鏉¤褰 - PER_PAGE = 20 - layout "base" - include SystemLogHelper - #鏌ョ湅鎵鏈夋棩蹇 - def index - @logs = SystemLog.logo_data(params[:page]||1,params[:per]||PER_PAGE,params[:search] , params[:day]) - end + before_filter :require_admin + # 榛樿姣忛〉鏄剧ず20鏉¤褰 + PER_PAGE = 20 + layout "base" + include SystemLogHelper - #娓呴櫎鏃ュ織 - def clear - SystemLog.clear params[:day] - redirect_to :action => :index - end + # Time 2015-01-26 17:12:46 + # Author lizanle + # Description 鏌ョ湅鎵鏈夋棩蹇 + def index + @logs = SystemLog.logo_data(params[:page]||1, params[:per]||PER_PAGE, params[:search], params[:day]) + end - #璁块棶鍒嗘瀽 - def access_analysis - #瑙f瀽鏃ュ織锛岀劧鍚庨嗗簭 - @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] - @access_module = Hash.new - #鏃ヨ獙鍙兘鐐虹┖ - if @log_result && !@log_result.empty? - #灏嗘暟缁勪腑鐨勬ā鍧楄闂粺璁″嚭鏉ユ斁鍒癶ash涓 姣忔潯璁板綍鐨勭鍥涗釜鍊兼槸Controller#action鐨勫舰寮 - @log_result.collect! {|r| @access_module[r[3]].nil? ? - @access_module[r[3]] = 1 : @access_module[r[3]] +=1 } - # 鍘绘帀key鍙兘涓虹┖璁板綍 鎺掑簭锛岀劧鍚庡彇閫嗗簭 - @access_module = @access_module.delete_if{|k,v| k.nil?}.sort_by{|key,val| val}.reverse - else - @access_module - end - end + # Time 2015-01-26 14:42:38 + # Author lizanle + # Description 娓呴櫎鏃ュ織 + def clear + SystemLog.clear params[:day] + redirect_to :action => :index + end - #鑰楁椂鍒嗘瀽 - def time_analysis - #瑙f瀽鏃ュ織 - @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] - if @log_result && !@log_result.empty? - #鍒嗛〉 - @log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE) - else - @log_result = [] - end + # Time 2015-01-26 17:24:25 + # Author lizanle + # Description 璁块棶鍒嗘瀽 + def access_analysis + #瑙f瀽鏃ュ織锛岀劧鍚庨嗗簭 + @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] + @access_module = Hash.new + #鏃ヨ獙鍙兘鐐虹┖ + if @log_result && !@log_result.empty? + #灏嗘暟缁勪腑鐨勬ā鍧楄闂粺璁″嚭鏉ユ斁鍒癶ash涓 姣忔潯璁板綍鐨勭鍥涗釜鍊兼槸Controller#action鐨勫舰寮 + @log_result.collect! { |r| @access_module[r[3]].nil? ? + @access_module[r[3]] = 1 : @access_module[r[3]] +=1 } + # 鍘绘帀key鍙兘涓虹┖璁板綍 鎺掑簭锛岀劧鍚庡彇閫嗗簭 + @access_module = @access_module.delete_if { |k, v| k.nil? }.sort_by { |key, val| val }.reverse + else + @access_module end end + + # Time 2015-01-26 17:24:36 + # Author lizanle + # Description 鑰楁椂鍒嗘瀽 + def time_analysis + #瑙f瀽鏃ュ織 + @log_result = SystemLog.analysis(params[:day]).reverse[1...-1] + if @log_result && !@log_result.empty? + #鍒嗛〉 + @log_result = Kaminari.paginate_array(@log_result).page(params[:page]||1).per(params[:per]||PER_PAGE) + else + @log_result = [] + end + end +end From d8b5252279df96f925c4638771a0f3c3d876ca4a Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 14:21:51 +0800 Subject: [PATCH 39/45] =?UTF-8?q?=E8=B0=83=E6=95=B4=E4=BA=86=E6=B3=A8?= =?UTF-8?q?=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/system_log_helper.rb | 277 +++++++++++++++++-------------- 1 file changed, 150 insertions(+), 127 deletions(-) diff --git a/app/helpers/system_log_helper.rb b/app/helpers/system_log_helper.rb index 53cf2038b..918d6a608 100644 --- a/app/helpers/system_log_helper.rb +++ b/app/helpers/system_log_helper.rb @@ -1,62 +1,73 @@ +# Time 2015-01-26 17:30:16 +# Author lizanle +# Description 鏃ュ織甯姪绫 module SystemLogHelper - class SystemLog - class << self - # 鍒嗛〉锛堟敮鎸佸鍏抽敭瀛楁煡璇級 - def logo_data(page,per,search,day) - logs = find_all_logs day - if logs.empty? #濡傛灉杩斿洖鐨勬槸绌烘暩绲勶紝灏辫鏄庢棩瑾屾枃浠朵笉瀛樺湪 - return logs - end - # 鏍规嵁search鍙傛暟鏉ュ喅瀹氭槸鍚﹂渶瑕佹煡璇 - keywords = search - if keywords && !keywords.strip.blank? - # 鎶妅eywords杞寲鎴愭鍒欒〃杈惧紡鏁扮粍 - keywords = keywords.strip.split(/\s+/).collect! {|w| Regexp.new(w, 'i')} - # 涓鏉¤褰曞簲璇ュ尮閰嶆瘡涓叧閿瓧 log =~ r 鏄log璁板綍杩涜鍒ゆ柇鏄惁绗﹀悎r鐨勬鍒欒〃杈惧紡 - logs = logs.find_all do |log| - keywords.all? { |r| log =~ r } - end - #鐢↘aminari鍒嗛〉 - logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} - #灏嗗垎椤靛悗鐨勮褰曠殑鎼滅储缁撴灉娣诲姞鏍峰紡锛屾牱寮忎腑鐨刓0鏄粰缁檙鍗犱綅缃殑銆 - logs.collect! do |log| - keywords.each { |r| log.gsub!(r, '\0')} - log - end - else - logs = Kaminari.paginate_array(logs).page(page).per(per).collect! {|log| parse(log)} - end - logs + class SystemLog + class << self + # Time 2015-01-26 17:29:17 + # Author lizanle + # Description 鍒嗛〉锛堟敮鎸佸鍏抽敭瀛楁煡璇級 + def logo_data(page, per, search, day) + logs = find_all_logs day + if logs.empty? #濡傛灉杩斿洖鐨勬槸绌烘暩绲勶紝灏辫鏄庢棩瑾屾枃浠朵笉瀛樺湪 + return logs end - - #娓呴櫎鏃ヨ獙 - def clear day - if File::exists?(logfile_path day) - File.open(logfile_path(day), 'w') do |f| - f.print '' - end - else + # 鏍规嵁search鍙傛暟鏉ュ喅瀹氭槸鍚﹂渶瑕佹煡璇 + keywords = search + if keywords && !keywords.strip.blank? + # 鎶妅eywords杞寲鎴愭鍒欒〃杈惧紡鏁扮粍 + keywords = keywords.strip.split(/\s+/).collect! { |w| Regexp.new(w, 'i') } + # 涓鏉¤褰曞簲璇ュ尮閰嶆瘡涓叧閿瓧 log =~ r 鏄log璁板綍杩涜鍒ゆ柇鏄惁绗﹀悎r鐨勬鍒欒〃杈惧紡 + logs = logs.find_all do |log| + keywords.all? { |r| log =~ r } end - end - - #璁鍙栨棩瑾 - private - def find_all_logs day - if File::exists?(logfile_path day) - File.open(logfile_path day) do |f| - #鎵撳紑鏂囦欢锛屽苟鎸夌収姝e垯琛ㄨ揪寮忓垏鍒嗭紝閫嗗簭锛屾渶鏂颁竴涓褰曞彲浠ユ墧鎺夛紙鍥犱负鏈鏂扮殑璁板綍姘歌繙閮芥槸璁块棶System_log) - f.read.split("Processing").reverse[1..-1] - end - else - [] + #鐢↘aminari鍒嗛〉 + logs = Kaminari.paginate_array(logs).page(page).per(per).collect! { |log| parse(log) } + #灏嗗垎椤靛悗鐨勮褰曠殑鎼滅储缁撴灉娣诲姞鏍峰紡锛屾牱寮忎腑鐨刓0鏄粰缁檙鍗犱綅缃殑銆 + logs.collect! do |log| + keywords.each { |r| log.gsub!(r, '\0') } + log end + else + logs = Kaminari.paginate_array(logs).page(page).per(per).collect! { |log| parse(log) } end + logs + end - # 鏃ュ織鏂囦欢鐨勮矾寰勶紝涓鑸湪Rails.root/log涓嬶紝鏍规嵁鐜閰嶇疆 - # 渚濇璁板綍鍒皃roduct.log development.log test.log涓 - def logfile_path day - #灏嗘棩鏈熷鐞嗘垚2015-01-01鐨勫舰寮 - unless day.nil? + # Time 2015-01-26 17:28:57 + # Author lizanle + # Description 娓呴櫎鏃ヨ獙 + def clear day + if File::exists?(logfile_path day) + File.open(logfile_path(day), 'w') do |f| + f.print '' + end + else + end + end + + # Time 2015-01-26 17:28:49 + # Author lizanle + # Description 璁鍙栨棩瑾 + private + def find_all_logs day + if File::exists?(logfile_path day) + File.open(logfile_path day) do |f| + #鎵撳紑鏂囦欢锛屽苟鎸夌収姝e垯琛ㄨ揪寮忓垏鍒嗭紝閫嗗簭锛屾渶鏂颁竴涓褰曞彲浠ユ墧鎺夛紙鍥犱负鏈鏂扮殑璁板綍姘歌繙閮芥槸璁块棶System_log) + f.read.split("Processing").reverse[1..-1] + end + else + [] + end + end + + # Time 2015-01-26 17:28:34 + # Author lizanle + # Description 鏃ュ織鏂囦欢鐨勮矾寰勶紝涓鑸湪Rails.root/log涓嬶紝鏍规嵁鐜閰嶇疆 + # 渚濇璁板綍鍒皃roduct.log development.log test.log涓 + def logfile_path day + #灏嗘棩鏈熷鐞嗘垚2015-01-01鐨勫舰寮 + unless day.nil? dayArr = day.split('-') if dayArr[1].length == 1 dayArr[1] = "0" + dayArr[1] @@ -65,93 +76,105 @@ module SystemLogHelper dayArr[2] = "0" + dayArr[2] end day = dayArr.join('-') - end - #濡傛灉涓嶆槸鐣跺ぉ锛屽墖闇瑕佸姞寰岀洞 - if !day.nil? && !day.strip.blank? && day != Time.now.strftime("%Y-%m-%d") - File.join(Rails.root, "log", "#{Rails.env}.log.#{day.gsub('-','')}") - else - File.join(Rails.root, "log", "#{Rails.env}.log") - end + end + #濡傛灉涓嶆槸鐣跺ぉ锛屽墖闇瑕佸姞寰岀洞 + if !day.nil? && !day.strip.blank? && day != Time.now.strftime("%Y-%m-%d") + File.join(Rails.root, "log", "#{Rails.env}.log.#{day.gsub('-', '')}") + else + File.join(Rails.root, "log", "#{Rails.env}.log") + end + end + + # Time 2015-01-26 17:28:22 + # Author lizanle + # Description 鏇挎彌鎻涜绗 + def parse(log) + ERB::Util.html_escape(log.gsub(/\e\[[\d;m]+/, '')).gsub("\n", "
    ") + end + + # Time 2015-01-26 17:28:07 + # Author lizanle + # Description 瀹氫箟鍝嶅簲姝e垯琛ㄨ揪寮 2015-01-20 11:31:13 INFO -- Completed 200 OK in 125ms (Views: 81.0ms | ActiveRecord: 2.0ms) + def response_regex + 'Completed \d+ \w+ in (\d+)ms \(Views: (\d+\.\d+)?ms \| ActiveRecord: (\d+\.\d+)?ms\)' + end + + # Time 2015-01-26 17:27:51 + # Author lizanle + # Description 灏嗕竴鏉¤褰曚腑鐨勫湴鍧涓绘満绛夐兘鍒嗘瀽鍑烘潵 + def get_status(paragraph) + request_regex = 'Started GET \"(\/.*)\" for ([\d]+\.[\d]+\.[\d]+\.[\d]+) at [\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*)' + controller_regex = 'Processing by ([\w]+#[\w]+)' + page_time_regex = 'Views: \d+(\.\d+)?ms' + activeRecord_time_regex = 'ActiveRecord: \d+(\.\d+)?ms' + + #瑙f瀽璇锋眰涓殑姝e垯锛屼富鏈猴紝鏃堕棿 + if paragraph.match(request_regex) != nil + request_url = paragraph.match(request_regex)[1] #姝e垯琛ㄨ揪寮忎腑鐨勬嫭鍙疯兘澶熸埅鍙栨垚鏁扮粍 + request_host = paragraph.match(request_regex)[2] + request_at = paragraph.match(request_regex)[3] end - #鏇挎彌鎻涜绗 - def parse(log) - ERB::Util.html_escape(log.gsub(/\e\[[\d;m]+/, '')).gsub("\n", "
    ") + #瑙f瀽鎺у埗鍣 + if paragraph.match(controller_regex) != nil + controller_name = paragraph.match(controller_regex)[1] end - #瀹氫箟鍝嶅簲姝e垯琛ㄨ揪寮 2015-01-20 11:31:13 INFO -- Completed 200 OK in 125ms (Views: 81.0ms | ActiveRecord: 2.0ms) - def response_regex - 'Completed \d+ \w+ in (\d+)ms \(Views: (\d+\.\d+)?ms \| ActiveRecord: (\d+\.\d+)?ms\)' + #瑙f瀽鍝嶅簲鏃堕棿浠ュ強璁$畻鐧惧垎姣 + if paragraph.match(response_regex) != nil + #print(paragraph.match(response_regex)) + total_time = paragraph.match(response_regex)[1] + page_time = paragraph.match(response_regex)[2] + activeRecord_time = paragraph.match(response_regex)[3] + page_time_percent = page_time.to_f/(total_time.to_f) + activeRecord_time_percent = activeRecord_time.to_f/(total_time.to_f) + else end + #灏嗚В鏋愮粨鏋滃綋鍋氫竴鏉¤褰曟暟缁勮繑鍥 + request_status = [request_url, request_host, request_at, + controller_name, total_time, page_time, page_time_percent, activeRecord_time, activeRecord_time_percent] + request_status + end - #灏嗕竴鏉¤褰曚腑鐨勫湴鍧涓绘満绛夐兘鍒嗘瀽鍑烘潵 - def get_status(paragraph) - request_regex = 'Started GET \"(\/.*)\" for ([\d]+\.[\d]+\.[\d]+\.[\d]+) at [\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*)' - controller_regex = 'Processing by ([\w]+#[\w]+)' - page_time_regex = 'Views: \d+(\.\d+)?ms' - activeRecord_time_regex = 'ActiveRecord: \d+(\.\d+)?ms' - - if paragraph.match(request_regex) != nil - request_url = paragraph.match(request_regex)[1] #姝e垯琛ㄨ揪寮忎腑鐨勬嫭鍙疯兘澶熸埅鍙栨垚鏁扮粍 - request_host = paragraph.match(request_regex)[2] - request_at = paragraph.match(request_regex)[3] - end - - if paragraph.match(controller_regex) != nil - controller_name = paragraph.match(controller_regex)[1] - end - - if paragraph.match(response_regex) != nil - #print(paragraph.match(response_regex)) - total_time = paragraph.match(response_regex)[1] - page_time = paragraph.match(response_regex)[2] - activeRecord_time = paragraph.match(response_regex)[3] - page_time_percent = page_time.to_f/(total_time.to_f) - activeRecord_time_percent = activeRecord_time.to_f/(total_time.to_f) - else - end - request_status = [request_url, request_host, request_at, - controller_name, total_time,page_time,page_time_percent,activeRecord_time,activeRecord_time_percent] - request_status - end - - #鍒嗘瀽鏃ュ織 - public - def analysis day - csv = Array.new - #濡傛灉鏂囦欢涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥炵┖鏁扮粍 - if File::exists?(logfile_path day) - File.open(logfile_path(day), "r:utf-8") do |file| - paragraph = "" - begin_flag = false - # 瀵规瘡涓琛岃繘琛屽垽鏂 - file.each do |line| - # 浠"Started GET "寮澶翠负涓涓猵aragraph - #print(line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) INFO -- Started GET ') == nil) - if (line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) \w+ -- Started GET ') != nil) - if !begin_flag - begin_flag = true - paragraph.concat(line) - else - # 鍙︿竴涓猵aragraph鐨勫紑澶 - if (paragraph.match(response_regex) != nil) - csv << get_status(paragraph) - end - begin_flag = true - paragraph = line - end + # Time 2015-01-26 16:41:51 + # Author lizanle + # Description 鍒嗘瀽鏃ュ織 + public + def analysis day + csv = Array.new + #濡傛灉鏂囦欢涓嶅瓨鍦紝鍒欑洿鎺ヨ繑鍥炵┖鏁扮粍 + if File::exists?(logfile_path day) + File.open(logfile_path(day), "r:utf-8") do |file| + paragraph = "" + begin_flag = false + # 瀵规瘡涓琛岃繘琛屽垽鏂 + file.each do |line| + # 浠"Started GET "寮澶翠负涓涓猵aragraph + #print(line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) INFO -- Started GET ') == nil) + if (line.match('[\d]*-([\d]*-[\d]* [\d]*:[\d]*:[\d]*) \w+ -- Started GET ') != nil) + if !begin_flag + begin_flag = true + paragraph.concat(line) else - if begin_flag - paragraph.concat(line) - else + # 鍙︿竴涓猵aragraph鐨勫紑澶 + if (paragraph.match(response_regex) != nil) + csv << get_status(paragraph) end + begin_flag = true + paragraph = line + end + else + if begin_flag + paragraph.concat(line) + else end end - end + end end - csv end + csv end end end +end From d3f975434c14a23a2a57e0452e251de7caec8f2f Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 14:22:25 +0800 Subject: [PATCH 40/45] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=86new=20Relic=20?= =?UTF-8?q?gem=20=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Gemfile b/Gemfile index 5045cb822..ac12f4048 100644 --- a/Gemfile +++ b/Gemfile @@ -19,6 +19,7 @@ gem 'acts-as-taggable-on', '2.4.1' gem 'spreadsheet' gem 'ruby-ole' gem 'email_verifier' +gem 'newrelic_rpm' group :development do gem 'better_errors', path: 'lib/better_errors' From a3aea4434b1cd4cb19406d096277f23ca7f67111 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 14:24:30 +0800 Subject: [PATCH 41/45] =?UTF-8?q?=E5=BF=BD=E7=95=A5newrelic.yml?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index c4be9d1ce..2e8cb69df 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,7 @@ /tmp/* /public/cache/* .gitignore +/config/newrelic.yml /public/images/avatars/* /Gemfile /Gemfile.lock From b6db353b57e794027772fa3b0031badca5b91a99 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 14:25:06 +0800 Subject: [PATCH 42/45] =?UTF-8?q?newrelic=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/newrelic.yml | 224 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 config/newrelic.yml diff --git a/config/newrelic.yml b/config/newrelic.yml new file mode 100644 index 000000000..df431805d --- /dev/null +++ b/config/newrelic.yml @@ -0,0 +1,224 @@ +# +# This file configures the New Relic Agent. New Relic monitors Ruby, Java, +# .NET, PHP, Python and Node applications with deep visibility and low +# overhead. For more information, visit www.newrelic.com. +# +# Generated January 23, 2015 +# +# This configuration file is custom generated for Trustie + + +# Here are the settings that are common to all environments +common: &default_settings + # ============================== LICENSE KEY =============================== + + # You must specify the license key associated with your New Relic + # account. This key binds your Agent's data to your account in the + # New Relic service. + license_key: '9b481f5c9ec07de722dcaaa17b38d0d1efff32c0' + + # Agent Enabled (Ruby/Rails Only) + # Use this setting to force the agent to run or not run. + # Default is 'auto' which means the agent will install and run only + # if a valid dispatcher such as Mongrel is running. This prevents + # it from running with Rake or the console. Set to false to + # completely turn the agent off regardless of the other settings. + # Valid values are true, false and auto. + # + # agent_enabled: auto + + # Application Name Set this to be the name of your application as + # you'd like it show up in New Relic. The service will then auto-map + # instances of your application into an "application" on your + # dashboard page. If you want to map this instance into multiple + # apps, like "AJAX Requests" and "All UI" then specify a semicolon + # separated list of up to three distinct names, or a yaml list. + # Defaults to the capitalized RAILS_ENV or RACK_ENV (i.e., + # Production, Staging, etc) + # + # Example: + # + # app_name: + # - Ajax Service + # - All Services + # + # Caution: If you change this name, a new application will appear in the New + # Relic user interface with the new name, and data will stop reporting to the + # app with the old name. + # + # See https://newrelic.com/docs/site/renaming-applications for more details + # on renaming your New Relic applications. + # + app_name: My Application + + # When "true", the agent collects performance data about your + # application and reports this data to the New Relic service at + # newrelic.com. This global switch is normally overridden for each + # environment below. (formerly called 'enabled') + monitor_mode: true + + # Developer mode should be off in every environment but + # development as it has very high overhead in memory. + developer_mode: false + + # The newrelic agent generates its own log file to keep its logging + # information separate from that of your application. Specify its + # log level here. + log_level: info + + # Optionally set the path to the log file This is expanded from the + # root directory (may be relative or absolute, e.g. 'log/' or + # '/var/log/') The agent will attempt to create this directory if it + # does not exist. + # log_file_path: 'log' + + # Optionally set the name of the log file, defaults to 'newrelic_agent.log' + # log_file_name: 'newrelic_agent.log' + + # The newrelic agent communicates with the service via https by default. This + # prevents eavesdropping on the performance metrics transmitted by the agent. + # The encryption required by SSL introduces a nominal amount of CPU overhead, + # which is performed asynchronously in a background thread. If you'd prefer + # to send your metrics over http uncomment the following line. + # ssl: false + + #============================== Browser Monitoring =============================== + # New Relic Real User Monitoring gives you insight into the performance real users are + # experiencing with your website. This is accomplished by measuring the time it takes for + # your users' browsers to download and render your web pages by injecting a small amount + # of JavaScript code into the header and footer of each page. + browser_monitoring: + # By default the agent automatically injects the monitoring JavaScript + # into web pages. Set this attribute to false to turn off this behavior. + auto_instrument: true + + # Proxy settings for connecting to the New Relic server. + # + # If a proxy is used, the host setting is required. Other settings + # are optional. Default port is 8080. + # + # proxy_host: hostname + # proxy_port: 8080 + # proxy_user: + # proxy_pass: + + # The agent can optionally log all data it sends to New Relic servers to a + # separate log file for human inspection and auditing purposes. To enable this + # feature, change 'enabled' below to true. + # See: https://newrelic.com/docs/ruby/audit-log + audit_log: + enabled: false + + # Tells transaction tracer and error collector (when enabled) + # whether or not to capture HTTP params. When true, frameworks can + # exclude HTTP parameters from being captured. + # Rails: the RoR filter_parameter_logging excludes parameters + # Java: create a config setting called "ignored_params" and set it to + # a comma separated list of HTTP parameter names. + # ex: ignored_params: credit_card, ssn, password + capture_params: false + + # Transaction tracer captures deep information about slow + # transactions and sends this to the New Relic service once a + # minute. Included in the transaction is the exact call sequence of + # the transactions including any SQL statements issued. + transaction_tracer: + + # Transaction tracer is enabled by default. Set this to false to + # turn it off. This feature is only available at the Professional + # and above product levels. + enabled: true + + # Threshold in seconds for when to collect a transaction + # trace. When the response time of a controller action exceeds + # this threshold, a transaction trace will be recorded and sent to + # New Relic. Valid values are any float value, or (default) "apdex_f", + # which will use the threshold for an dissatisfying Apdex + # controller action - four times the Apdex T value. + transaction_threshold: apdex_f + + # When transaction tracer is on, SQL statements can optionally be + # recorded. The recorder has three modes, "off" which sends no + # SQL, "raw" which sends the SQL statement in its original form, + # and "obfuscated", which strips out numeric and string literals. + record_sql: obfuscated + + # Threshold in seconds for when to collect stack trace for a SQL + # call. In other words, when SQL statements exceed this threshold, + # then capture and send to New Relic the current stack trace. This is + # helpful for pinpointing where long SQL calls originate from. + stack_trace_threshold: 0.500 + + # Determines whether the agent will capture query plans for slow + # SQL queries. Only supported in mysql and postgres. Should be + # set to false when using other adapters. + # explain_enabled: true + + # Threshold for query execution time below which query plans will + # not be captured. Relevant only when `explain_enabled` is true. + # explain_threshold: 0.5 + + # Error collector captures information about uncaught exceptions and + # sends them to New Relic for viewing + error_collector: + + # Error collector is enabled by default. Set this to false to turn + # it off. This feature is only available at the Professional and above + # product levels. + enabled: true + + # To stop specific errors from reporting to New Relic, set this property + # to comma-separated values. Default is to ignore routing errors, + # which are how 404's get triggered. + ignore_errors: "ActionController::RoutingError,Sinatra::NotFound" + + # If you're interested in capturing memcache keys as though they + # were SQL uncomment this flag. Note that this does increase + # overhead slightly on every memcached call, and can have security + # implications if your memcached keys are sensitive + # capture_memcache_keys: true + +# Application Environments +# ------------------------------------------ +# Environment-specific settings are in this section. +# For Rails applications, RAILS_ENV is used to determine the environment. +# For Java applications, pass -Dnewrelic.environment to set +# the environment. + +# NOTE if your application has other named environments, you should +# provide newrelic configuration settings for these environments here. + +development: + <<: *default_settings + # Turn on communication to New Relic service in development mode + monitor_mode: true + app_name: My Application (Development) + + # Rails Only - when running in Developer Mode, the New Relic Agent will + # present performance information on the last 100 transactions you have + # executed since starting the mongrel. + # NOTE: There is substantial overhead when running in developer mode. + # Do not use for production or load testing. + developer_mode: true + +test: + <<: *default_settings + # It almost never makes sense to turn on the agent when running + # unit, functional or integration tests or the like. + monitor_mode: false + +# Turn on the agent in production for 24x7 monitoring. NewRelic +# testing shows an average performance impact of < 5 ms per +# transaction, you can leave this on all the time without +# incurring any user-visible performance degradation. +production: + <<: *default_settings + monitor_mode: true + +# Many applications have a staging environment which behaves +# identically to production. Support for that environment is provided +# here. By default, the staging environment has the agent turned on. +staging: + <<: *default_settings + monitor_mode: true + app_name: My Application (Staging) From 6c76cacb61768fbee43241d7c81a9a37d591ef30 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 15:20:44 +0800 Subject: [PATCH 43/45] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E5=BE=88=E6=85=A2=EF=BC=8C=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=87=8F=E5=BE=88=E5=A4=A7=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lib/acts_as_activity_provider.rb | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb index b7cb8c17d..a4f0ac21d 100644 --- a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb +++ b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb @@ -49,11 +49,8 @@ module Redmine end module ClassMethods - # Time 2015-01-27 13:37:41 - # Author lizanle - # Description 搴旇淇濇寔鍘熸潵鐨勫啓娉曟洿鍔犲鏄撴噦 # Returns events of type event_type visible by user that occured between from and to - def find_events(event_type, user, from, to, options) + def find_events(event_type, user, days, created_time, options) provider_options = activity_provider_options[event_type] raise "#{self.name} can not provide #{event_type} events." if provider_options.nil? @@ -94,23 +91,19 @@ module Redmine ActiveSupport::Deprecation.warn "acts_as_activity_provider with implicit :permission option is deprecated. Add a visible scope to the #{self.name} model or use explicit :permission option." scope = scope.scoped(:conditions => Project.allowed_to_condition(user, "view_#{self.name.underscore.pluralize}".to_sym, options)) end - # Time 2015-01-27 13:34:40 + # Time 2015-01-27 15:18:33 # Author lizanle - # Description 杩欐浠g爜灏辩敤scope.all杩涜浜嗘煡璇紝鎷栨參浜嗛熷害锛屽苟涓斿鍔犱簡鏃堕棿璺ㄥ害锛屾椂闂磋法搴﹀簲璇ョ敱绠$悊鍛樻潵璋冩暣锛屾墍浠ュ簲璇ュ幓鎺 -=begin - unless scope.all(provider_options[:find_options].dup).first.nil? + # Description 鍒犻櫎 unless scope.all锛屽洜涓鸿繖涓墽琛屾煡璇紝骞朵笖娌℃湁鍔犲叆鏃堕棿闄愬埗锛屼笌涓嬭竟 scope.all(provider_options[:find_options].dup)鐨勯噸澶嶆煡璇 + if options[:course] if provider_options[:timestamp].include? "updated_on" to = scope.scoped(:order => "#{provider_options[:timestamp]} desc").all(provider_options[:find_options].dup).first.updated_on else to = scope.scoped(:order => "#{provider_options[:timestamp]} desc").all(provider_options[:find_options].dup).first.created_on end - if options[:course] from = (to - days.days) > created_time ? (to - days.days) : created_time.to_date - else - from = to - days.day - 1.years - end + else + from = to - Setting.activity_days_default.to_i end -=end if from && to scope = scope.scoped(:conditions => ["#{provider_options[:timestamp]} BETWEEN ? AND ?", from, to]) From 475ef12cd52067f54a969fe6f70b5d1ddc2bc432 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 16:31:44 +0800 Subject: [PATCH 44/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=8F=98=E9=87=8F=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lib/acts_as_activity_provider.rb | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb index a4f0ac21d..f4712fa3e 100644 --- a/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb +++ b/lib/plugins/acts_as_activity_provider/lib/acts_as_activity_provider.rb @@ -49,8 +49,11 @@ module Redmine end module ClassMethods + # Time 2015-01-27 16:30:47 + # Author lizanle + # Description 鐢ㄥ師鏉ョ殑鍐欐硶from,to鏇村姞瀹规槗鎳 # Returns events of type event_type visible by user that occured between from and to - def find_events(event_type, user, days, created_time, options) + def find_events(event_type, user, from, to, options) provider_options = activity_provider_options[event_type] raise "#{self.name} can not provide #{event_type} events." if provider_options.nil? @@ -93,7 +96,7 @@ module Redmine end # Time 2015-01-27 15:18:33 # Author lizanle - # Description 鍒犻櫎 unless scope.all锛屽洜涓鸿繖涓墽琛屾煡璇紝骞朵笖娌℃湁鍔犲叆鏃堕棿闄愬埗锛屼笌涓嬭竟 scope.all(provider_options[:find_options].dup)鐨勯噸澶嶆煡璇 + # Description 鍒犻櫎 unless scope.all锛屽洜涓鸿繖涓墽琛屾煡璇紝骞朵笖娌℃湁鍔犲叆鏃堕棿闄愬埗锛屼笌涓嬭竟 scope.all(provider_options[:find_options].dup)閲嶅 if options[:course] if provider_options[:timestamp].include? "updated_on" to = scope.scoped(:order => "#{provider_options[:timestamp]} desc").all(provider_options[:find_options].dup).first.updated_on @@ -102,7 +105,7 @@ module Redmine end from = (to - days.days) > created_time ? (to - days.days) : created_time.to_date else - from = to - Setting.activity_days_default.to_i + #from = to - Setting.activity_days_default.to_i end if from && to From 43e9f738c04ae2ce8251be5b93dce956db321e65 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 27 Jan 2015 16:32:27 +0800 Subject: [PATCH 45/45] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=8F=98=E9=87=8F=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/redmine/activity/fetcher.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/redmine/activity/fetcher.rb b/lib/redmine/activity/fetcher.rb index b3f473893..c4adc6adb 100644 --- a/lib/redmine/activity/fetcher.rb +++ b/lib/redmine/activity/fetcher.rb @@ -77,9 +77,12 @@ module Redmine @scope = Redmine::Activity.default_event_types end + # Time 2015-01-27 16:31:58 + # Author lizanle + # Description 鐢╢rom to 鏇村姞娴呮樉鏄撴噦 # Returns an array of events for the given date range # sorted in reverse chronological order - def events(days = nil, created_time = nil, options={}) + def events(from = nil, to = nil, options={}) e = [] @options[:limit] = options[:limit] # modify by nwb @@ -87,7 +90,7 @@ module Redmine @scope.each do |event_type| constantized_providers(event_type).each do |provider| - e += provider.find_events(event_type, @user, days, created_time, @options) + e += provider.find_events(event_type, @user, from, to, @options) end end