Follow us on Twitter X-Cart on Facebook Wiki
Shopping cart software Solutions for online shops and malls
 

Limit Customer Review Length with Character Limit Indicator

 
Reply
   X-Cart forums > X-Cart 4 > Dev Questions
 
Thread Tools Search this Thread
  #1  
Old 05-23-2005, 10:25 AM
 
PhilJ PhilJ is offline
 

X-Guru
  
Join Date: Nov 2002
Posts: 4,094
 

Default Limit Customer Review Length with Character Limit Indicator

Simple mod to limit the length of customer reviews. It shows an indication of how many characters are left. Made for v4.0.1.3

Adapted from http://www.dynamicdrive.com/dynamicindex16/limitinput.htm

1) Make a new file, skin1/reviewlimit.js

Code:
/* Form field Limiter script- By Dynamic Drive For full source code and more DHTML scripts, visit http://www.dynamicdrive.com This credit MUST stay intact for use */ var ns6=document.getElementById&&!document.all function restrictinput(maxlength,e,placeholder){ if (window.event&&event.srcElement.value.length>=maxlength) return false else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){ var pressedkey=/[a-zA-Z0-9\.\,\/]/ //detect alphanumeric keys if (pressedkey.test(String.fromCharCode(e.which))) e.stopPropagation() } } function countlimit(maxlength,e,placeholder){ var theform=eval(placeholder) var lengthleft=maxlength-theform.value.length var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder) if (window.event||e.target&&e.target==eval(placeholder)){ if (lengthleft<0) theform.value=theform.value.substring(0,maxlength) placeholderobj.innerHTML=lengthleft } } function displaylimit(thename, theid, thelimit){ var theform=theid!=""? document.getElementById(theid) : thename var limit_text='<span id="'+theform.toString()+'">'+thelimit+'</span> characters remaining' if (document.all||ns6) document.write(limit_text) if (document.all){ eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)} eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)} } else if (ns6){ document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); } }

2) Add this code at the top of skin1/customer/product.tpl

Code:
<script language=JavaScript1.3 src="{$SkinDir}/reviewlimit.js"></script>

3) In skin1/modules/Customer_Reviews/reviews.tpl

Change

Code:
<TEXTAREA cols="40" rows="4" name="review_message"></TEXTAREA>

to

Code:
<TEXTAREA cols="40" rows="4" name="review_message"></TEXTAREA> <script>displaylimit("review","review_message",255)</script>

255 being the character limit. Change to whatever length you want.

__________________
xcartmods.co.uk
Reply With Quote
  #2  
Old 05-24-2005, 01:44 PM
 
IndieDepot IndieDepot is offline
 

Advanced Member
  
Join Date: May 2005
Posts: 30
 

Default

awesome mod!!

looks & works great!

- shannon
__________________
- www.TheShotList.com
X-Cart version 4.0.13
PHP 4.3.10
MySQL 4.0.23
Web server Apache
Operation system Linux
Perl 5.008004
XML parser (expat) 1.95.6
Reply With Quote
  #3  
Old 05-25-2005, 02:32 AM
 
PhilJ PhilJ is offline
 

X-Guru
  
Join Date: Nov 2002
Posts: 4,094
 

Default

BTW, if you want to allow reviews longer than 255 characters, you'll need to apply this SQL patch.

Code:
ALTER TABLE `xcart_product_reviews` CHANGE `message` `message` TEXT NOT NULL
__________________
xcartmods.co.uk
Reply With Quote
  #4  
Old 12-21-2005, 04:37 PM
 
jsa jsa is offline
 

Senior Member
  
Join Date: Oct 2005
Posts: 197
 

Default

Quote:
Originally Posted by PhilJ
BTW, if you want to allow reviews longer than 255 characters, you'll need to apply this SQL patch.

Code:
ALTER TABLE `xcart_product_reviews` CHANGE `message` `message` TEXT NOT NULL

I was looking for how to change reviews length. Know this is an older message, but it seems to still work on 4.0.17. Thanks for that!
__________________
Building: X-Cart GoldPlus 4.6.1
Old cart:
XC 4.0.17 FComp-RMA-AOM-OFF-Affil
BCSE: Referral Pts-Surveys-BatchUp-OrderEZ- Reviews-RSS
FT: Glossary-OptCopt-AdvSrch-Recently Viewed-Also Bought
CM: eZConversion
XP: SalesRecovery, MultCrncy
Reply With Quote
Reply
   X-Cart forums > X-Cart 4 > Dev Questions



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -8. The time now is 01:59 AM.

   

 
X-Cart forums © 2001-2020