分类存档: Document - 第2页

给首页的促销商品增加倒计时

在ECSHOP中是可以设置商品的促销时间和倒计时效果的,但是在默认模板中却没有被提现出来。这个我在网上找到的代码,整理成实际可以使用的代码发贴出来给大家。

在第三段的代码段中,大家可以根据自己的需要修改49到58行的HTML代码,其它地方基本不用再改。

这段代码的时间显示格式为 xxx 天 xxx 小时 xxx 分 xxx 秒,如果你只打算显示小时的话可以修改一下第三段代码34行,将天数乘24在加到小时上就OK了。

这里贴出实际的样式效果:

1、打开includes/lib_goods.php,找到get_promote_goods()函数部分。

  1. $goods[$idx]['url'] = build_uri('goods', array('gid' => $row['goods_id']), $row['goods_name']);

添加如下内容:

  1. /* 促销时间倒计时 */
  2. $time = gmtime();
  3. if ($time >= $row['promote_start_date'] && $time <= $row['promote_end_date']){
  4.     $goods[$idx]['gmt_end_time']  = local_date('M d, Y H:i:s',$row['promote_end_date']);
  5. }else{
  6.     $goods[$idx]['gmt_end_time'] = 0;
  7. }

2、然后将 library/recommend_promotion.lbi 里的内容替换成以下代码:

  1. <meta http-equiv="Content-Type" content="text/html; charset=utf8">
  2. <!-- {if $promotion_goods} -->
  3. <script >
  4. var Tday = new Array();
  5. var daysms = 24 * 60 * 60 * 1000
  6. var hoursms = 60 * 60 * 1000
  7. var Secondms = 60 * 1000
  8. var microsecond = 1000
  9. var DifferHour = -1
  10. var DifferMinute = -1
  11. var DifferSecond = -1
  12. function clock(key)
  13.   {
  14.    var time = new Date()
  15.    var hour = time.getHours()
  16.    var minute = time.getMinutes()
  17.    var second = time.getSeconds()
  18.    var timevalue = ""+((hour > 12) ? hour-12:hour)
  19.    timevalue +=((minute < 10) ? ":0":":")+minute
  20.    timevalue +=((second < 10) ? ":0":":")+second
  21.    timevalue +=((hour >12 ) ? " PM":" AM")
  22.    var convertHour = DifferHour
  23.    var convertMinute = DifferMinute
  24.    var convertSecond = DifferSecond
  25.    var Diffms = Tday[key].getTime() - time.getTime()
  26.    DifferHour = Math.floor(Diffms / daysms)
  27.    Diffms -= DifferHour * daysms
  28.    DifferMinute = Math.floor(Diffms / hoursms)
  29.    Diffms -= DifferMinute * hoursms
  30.    DifferSecond = Math.floor(Diffms / Secondms)
  31.    Diffms -= DifferSecond * Secondms
  32.    var dSecs = Math.floor(Diffms / microsecond)
  33.   
  34.    if(convertHour != DifferHour)
  35.        a="<font color=red>"+DifferHour+"</font>天";
  36.    if(convertMinute != DifferMinute) 
  37.        b="<font color=red>"+DifferMinute+"</font>时";
  38.    if(convertSecond != DifferSecond) 
  39.        c="<font color=red>"+DifferSecond+"</font>分"
  40.    d="<font color=red>"+dSecs+"</font>秒"
  41.    if (DifferHour>0) {
  42.      a=a
  43.    }else{
  44.      a=''
  45.    }
  46.    document.getElementById("leftTime"+key).innerHTML = a + b + c + d; //显示倒计时信息
  47. }
  48. </script>
  49. <div id="sales" class="f_l clearfix">
  50.     <h1><a href="../search.php?intro=promotion"><img src="images/more.gif" /></a></h1>
  51.     <div class="clearfix goodBox">
  52.     <!--{foreach from=$promotion_goods key=key item=goods name="promotion_foreach"}-->
  53.     {if $smarty.foreach.promotion_foreach.index <= 3}
  54.         <div class="goodList">
  55.             <a href="{$goods.url}"><img src="{$goods.thumb}" border="0" alt="{$goods.name|escape:html}"/></a><br />
  56.             <p><a href="{$goods.url}" title="{$goods.name|escape:html}">{$goods.short_name|escape:html}</a></p>
  57.             {$lang.promote_price}<font class="f1">{$goods.promote_price}</font><br><font class="f4" id="leftTime{$key}">{$lang.please_waiting}</font>
  58.         </div>
  59.     {/if}
  60. <script>
  61.     Tday[{$key}] = new Date("{$goods.gmt_end_time}");  
  62.     window.setInterval(function(){    
  63.         clock({$key});
  64.     }, 1000);    
  65. </script>
  66.          <!--{/foreach}-->
  67.     </div>
  68. </div>
  69. <!-- {/if} -->

在后台商品也设置促销商品,刷新首页即可看到效果!

virtualbox 通过命令创建虚拟机

作为一款功能强大的开源虚拟机软件,VirtualBox 不仅提供有图形化的用户界面,而且也包含命令行界面。VirtualBox 的命令行界面程序为 VBoxManage,通过它你可以完成从命令行创建虚拟机、修改虚拟机的选项设置、对虚拟机进行控制等几乎所有的操作。如果在 Headless Server 上,你将发现 VirtualBox 的命令行界面非常有用。

1、在虚拟机环境中注册一个虚拟机,命令

VBoxManage createvm –name “虚拟机的名称” –register

–name后面的参数为虚拟机名称

2、为虚拟机创建一个磁盘,命令:

VBoxManage createhd –filename “windows.vdi” –size 10000 –rememberSun VirtualBox Command Line

–filename 参数为磁盘的名称,同时也可以指定路径
–size 为磁盘大小,单位为MB
–rememberSun VirtualBox Command Line 暂时不知道

3、配置虚拟机的内存和网络

VBoxManage modifyvm “虚拟机名称” –memory “512” –nic1 nat

–memory 参数为内存大小,单位为MB
–nic1 网络模式,可选参数有 nat | …..后面补充

4、配置IDE控制器

VBoxManage storagectl “虚拟机名称” –name “IDE Controller” –add ide –controller PIIX4

–name 参数标志控制器的名称,随便写即可
–controller 表示控制器的类型,PIIX4 | 。。。后面补充

action:如果漏了这部很多情况下我们在加载磁盘文件的时候会出现这个报错:

ERROR: Could not find a storage controller named ‘IDE Controller’
Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component Machine, interface IMachine, callee nsISupports
Context: “AttachDevice(Bstr(“IDE Controller”), 0, 0, DeviceType_HardDisk, uuid)” at line 556 of file VBoxManageModifyVM.cpp

5、为控制器加载端口

VBoxManage storageattach “虚拟机名称” –storagectl “IDE Controller” –port 0 –device 0 –type hdd –medium windows.vdi

–storagectl 以创建的控制名称
–port 端口号,如果只有一个直接配置为0即可
–device 设备序号,同上
–type 控制器类型, hdd【硬盘】
–medium 具体我还不清楚,从命令上理解为挂在磁盘,参数也可以写成“/home/ssf/window.vdi”

6、配置磁盘和光驱,命令

VBoxManage modifyvm “虚拟机名称” –hda “windows.vdi” –dvd /home/Downloads/windows.iso –boot1 dvd

–hda 参数为创建的磁盘文件路径和文件名,可写为”/home/dsf/window.vdi”
–dvd 配置DVD光驱驱动器,参数与磁盘相同
–boot1 配置启动优先级,例子中的代码dvd表示为从光盘启动

7、启动虚拟机

VBoxManage startvm “虚拟机名称”

8、物理机与虚拟机的端口转发

#申明协议类型
VBoxManage setextradata “【虚拟机名称】” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/【协议名称】/Protocol” TCP
#申明指向的虚拟机端口号
VBoxManage setextradata “【虚拟机名称】” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/【协议名称】/GuestPort” 22
#申明物理机的端口号
VBoxManage setextradata “【虚拟机名称】” “VBoxInternal/Devices/pcnet/0/LUN#0/Config/【协议名称】/HostPort” 2222

基本的端口申明就事由这三句话组成。

【虚拟机名称】表示这个地方换成你的实际需要配置的虚拟机名称
【协议名称】这个地方的内容随便写,类似与给这个转发规则取一个名字,注意每组规则这个地方名字必须相同

ubuntu nginx 相关配置笔记

最近的项目需要使用Nginx来搭建环境,并且通过反向代理转发到GlassFish上面。现在把相关的操作内容项记录一下,方便自己查询。 继续阅读 »

ubuntu 11 安装java jdk

ubuntu11.04本身不带JDK源。一般情况下很多人都是安装openjdk。

西林我对JAVA并不是很精通,所以我也说不出OPENJDK和原来的SUN JDK有啥区别! 继续阅读 »

如何配置SNMP让监控宝监控服务器状态

首先我们要了解使用监控宝通过SNMP协议来监控服务器需要做哪些事情。

1、安装和配置SNMP服务

2、配置监控宝访问权限(包含V2c和V3的协议配置)

3、设置端口访问权限

为什么西林我要分成以上三点呢?主要考虑安全因素,我们默认监控宝的服务是安全的,然后授权监控宝访问,但是我们只提供只读的权限给监控宝,然后为了避免其它的恶意攻击,我们必须通过iptables来限制端口的访问。好了,下面西林一步一步来告诉大家如何做。 继续阅读 »

DHTMLX开发库在IE9下报错解决

DHTMLX 西林我就不用说了,它的集成库可以方便我们开发大型的WEB系统。但是再大的公司免不了遭遇浏览器兼容性的BUG。

这几天西林我在做DHTMLX的时间表的集成工作,程序写完后发现在GG\FF\IE6-IE8都没问题,本来我还满怀信心走一遍IE9,灾难就降临了。表格中不出现数据,开始我以为是我的程序有问题,打开控制台心都凉了。是DHTMLX的scheduler中的load属性报错,说没有该属性存在,错误如下:

SCRIPT438: Object doesn't support property or method 'load'
dhtmlxscheduler.js, line 1 character 2384

后来我改用 scheduler.parse 方法来获取数据却报如下错误:

SCRIPT438: Object doesn't support property or method 'selectNodes'
dhtmlxscheduler.js, line 33 character 137

又来又不得不赶快去官网看,是否有遇到和西林相同遭遇的难兄难弟们。幸运的是官方已经发现并提供了代码修复的方案。

这里是部分原文:

When testing the DHTMLX library with IE9, we found an incompatibility issue that appears when data is loaded from an XML file. To fix this issue, please use dhtmlxcommon.js which can be downloaded here. We have also fixed the problem with drawing of node labels in dhtmlxTree in IE9 Beta.

All component packages, which are available for download from our site, already contain the fixed dhtmlxcommon.js. Users of dhtmlxSuite PRO Edition will receive the link to the compiled dhtmlx.js with applied fixes by email.

具体的解决办法是下载官方提供的fix文件dhtmlxcommon.js然后将文件拷贝到codebase的目录下,并加载到页面中,代码如下:

再打开页面一试,这个世界完美了。呵呵!为了方便墙内的朋友,西林决定提供一个本地下载方便大家。

本地下载:[download id=”8″]

官方原文地址:http://www.dhtmlx.com/blog/?p=604

ParseUnicode 汉字转unicode编码转换小工具

近日在项目的系统中需要添加一个在线编辑器,我首选了tinymce方案,虽然这个编辑器是开源免费的,但是图片上传的功能模块却是收费的(奶奶个熊!),默认情况下图片只能使用外连接,没办法只好自己在编辑器功能里面写扩展了。 继续阅读 »

scorm标准中学习共享组件(sco)的学习状态值

根据SCORM对于学习组件的定义,学习资产是单纯的指向学习资源,而内容聚合架构则是表示组合的抽象概念,唯有学习共享组件(以后简称SCO)拥有能和学习管理平台(以后简称LMS)互相传递讯息的功能,因此在数据模型(Data Model)中有一个学习状态值(cmi.core.lesson_staus)是专门形容SCO本身的学习情况,总共分为下面六种,而这些状态由SCO与LMS共同维护。

passed      completed       browsed
(通过)    (已完成)      (浏览)

incomplete   failed      not attempted
(非完成)   (失败)     (未尝试)

继续阅读 »

解决SCORM在MOODLE中导航问题

也许你在设计SCORM教材的时候有这样一个需求,当学员学完一章课程后,将该课程设置为完结,然后让平台自动帮助你跳转到下一个课程。在标准的SCORM设计中是有这个策略的,但是MOODLE平台中却对个功能的支持并不是很完善!在MOODLE中无法进行logout当前课程,并进入下一个章节。 继续阅读 »

SCORM1.2 cmi.core.score._children

名称:cmi.core.score._children

版本:scorm1.2 继续阅读 »

无觅相关文章插件,快速提升流量