100asa:
It's possibile disable cash on delivery payment only for some product? How can I do it?
This reply applies equally to your other questions.
Near the start of the code for each of the modules you'll see a variable being tested that is called "$this->enabled".
If this variable evaluates to "true" the module is enabled. Otherwise it is disabled. The actual value determined here is from the admin setting used to enable/disable the module.
To make any of the modules available (or not available) based of some other condition, you only need to "reset" the "$this->enabled" variable based on your test case.
eg:
if (product == "bar of gold" ) { "$this->enabled" = "false" ; )
or
if (product_field == "no store") { "$this->enabled" = "false" ; ) or perhaps
if (product_field != "no store") { "$this->enabled" = "true" ; )
Needless to say, you'll need to you valid code and legitimate tests, but the the methods and principles are sound.
Cheers
Rod