Following code is a Installation script for the custom module. This code creates a category Attribute "catcolor".
It will be displayed when you manage categories.
It will be displayed when you manage categories.
<?php
$installer = $this;
$installer->startSetup();
$installer->addAttribute("catalog_category", "catcolor", array(
"type" => "varchar",
"backend" => "",
"frontend" => "",
"label" => "Color Category",
"input" => "text",
"class" => "",
"source" => "",
"global" => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
"visible" => true,
"required" => false,
"user_defined" => false,
"default" => "",
"searchable" => false,
"filterable" => false,
"comparable" => false,
"input_renderer"=> 'colorcategories/adminhtml_helper_color',
'group' => 'General Information',
"visible_on_front" => false,
"unique" => false,
"note" => ""
));
$installer->endSetup();
?>
Create a file app\code\local\<NameSpace>\<ModuleName>\Block\Adminhtml\Helper\Color.php
Add the following script to this file.
<?php class <NameSpace>_<ModuleName>_Block_Adminhtml_Helper_Color extends Varien_Data_Form_Element_Text { public function getElementHtml() { $html = ' <link rel="stylesheet" href="'.Mage::getBaseUrl('js') . 'colorpicker/css/colorpicker.css" type="text/css" /> <script type="text/javascript" src="' . Mage::getBaseUrl('js') . 'colorpicker/jquery.js' .'"></script> <script type="text/javascript" src="' . Mage::getBaseUrl('js') . 'colorpicker/colorpicker.js' .'"></script> <script type="text/javascript" src="' . Mage::getBaseUrl('js') . 'colorpicker/eye.js' .'"></script> <script type="text/javascript" src="' . Mage::getBaseUrl('js') . 'colorpicker/utils.js' .'"></script> '; $html .= parent::getElementHtml(); $html .= "<script type=\"text/javascript\"> var cjq = jQuery.noConflict(); (function(cjq){ cjq('#".$this->getHtmlId()."').ColorPicker({ onSubmit: function(hsb, hex, rgb, el) { cjq(el).val('#'+hex); cjq(el).ColorPickerHide(); }, onBeforeShow: function () { cjq(this).ColorPickerSetColor(this.value); } }).bind('keyup', function(){ cjq(this).ColorPickerSetColor(this.value); }); })(jQuery); </script>"; return $html; } /** * Procolor JS code to display color picker * * @see http://procolor.sourceforge.net/examples.php * @param string $htmlId * @return string */ protected function _getProcolorJs($htmlId) { return '<script type="text/javascript">ProColor.prototype.attachButton(\'' . $htmlId . '\', { imgPath:\'' . Mage::getBaseUrl('js') . 'herve/systemcolorpicker/procolor-1.0/' . 'img/procolor_win_\', showInField: true });</script>'; } /** * Prototype validation * * @return string */ protected function _addHexValidator() { return '<script type="text/javascript">Validation.add(\'validate-hex\', \'' . Mage::helper('systemcolorpicker')->__('Please enter a valid hex color code') . '\', function(v) { return /^#(?:[0-9a-fA-F]{3}){1,2}$/.test(v); });</script>'; } } ?>
DOWNLOAD jQuery Color picker add on.
UNZIP the downloaded addon and copy the files into Magento root directory as mentioned below.
jQuery Addon File Magento RootDirectory
js/colorpicker.js js/colorpicker/colorpicker.js
js/eye.js js/colorpicker/eye.js
js/utils.js js/colorpicker/utils.js
js/layout.js js/colorpicker/layout.js
css/* js/colopicker/css/*
images/* js/colopicker/images/*
Now you will get the color picker as shown below
it's not working. Van you please help me?
ReplyDelete