2011-07-04 4 views
3

注文ステータスに基づいて、マゼンタの注文グリッドで行の色を変更する必要があります。 私は構成可能なインターフェースを備えた複雑なソリューションは欲しくない。 私はどこから始めるべきかを知りたいだけです。管理者の注文グリッド上の行の色を変更するアプローチ

最良のアプローチは何ですか?

+0

私はこれをDreamweaverで実行すると、下の2行目に構文エラーが表示されます。 }})); } document.observe( "dom:loaded"、colorize); –

+0

はDreamweaverに依存しません。コードを使用して、ブラウザがいくつかのエラーを投げるかどうかを確認してください。 – Ovidiu

答えて

9

フル、作業溶液:

コピーjs/mage/adminhtml/grid.js

js/colors/adminhtml/grid.jsに作成したファイルやフォルダ666(JS /色& JS /色/ adminhtml)777

編集それと208行後}.bind(this)を含む行の前)追加:

ファイルの最後に追加で

<?xml version="1.0"?> 
<layout version="0.1.0"> 
    <default> 
    <reference name="head"> 
     <action method="removeItem"><type>js</type><name>mage/adminhtml/grid.js</name></action> 
     <action method="addItem"><type>js</type><name>colors/adminhtml/grid.js</name></action> 
    </reference> 
    </default> 
</layout> 

注文グリッドを:

function colorize() { 
    $$('td').each(function(macguffin) { 
     if(macguffin.innerHTML.strip()=="Processing") macguffin.parentNode.setStyle({backgroundColor: 'Orange' }); 
     if(macguffin.innerHTML.strip()=="Pending") macguffin.parentNode.setStyle({backgroundColor: 'Gold', color:'Black' }); 
     if(macguffin.innerHTML.strip()=="Payment Review") macguffin.parentNode.setStyle({backgroundColor: 'LightPink' }); 
     if((macguffin.innerHTML.strip()=="On Hold")||(macguffin.innerHTML.strip()=="Payment Review")) macguffin.parentNode.setStyle({backgroundColor: 'HotPink' }); 
     if(macguffin.innerHTML.strip()=="Suspected Fraud") macguffin.parentNode.setStyle({backgroundColor: 'Red' }); 
     if((macguffin.innerHTML.strip()=="Closed")||(macguffin.innerHTML.strip()=="Canceled")||(macguffin.innerHTML.strip()=="Cancelled")) macguffin.parentNode.setStyle({backgroundColor: 'LightBlue', fontStyle: 'italic' }); 
     if(macguffin.innerHTML.strip()=="Complete") macguffin.parentNode.setStyle({backgroundColor: 'Green' }); 
    }); 
} 
document.observe("dom:loaded", colorize); 

今それが含まれるようにapp/design/adminhtml/default/default/layout/local.xml

編集中のadmin local.xmlファイルを作成または編集色が鮮やかになり、注意が必要な注文を明確に把握できるはずです。

colorize()機能は、ご注文の状態や好みの配色に合わせて編集することができます。

+0

私はいくつかのコメントを削除し、core.xmlファイルとgrid.jsのコピーを使用して、コアファイルの編集を含まない完全に機能するソリューションをまとめました。 @Alan Stormに感謝して –

+0

完全な解決策はmathewと@Alan Stormに感謝します。 – Ovidiu

+1

ただ1つのシンセシスエラーがあります。余分な "}"を "}の前に置く"); " – Dolly

関連する問題