Hi crystal_tech.
First of, thank you for your constructive input.
First of, as i said in my original post. I'm not using PQR or anything else found here on ownedcore, i merely brought this issue up for you guys as a heads up. Now with that said, let's continue.
The link you gave earlier
API IsSpellInRange - WoWWiki - Your guide to the World of Warcraft is outdated, as it doesn't state that you can also pass spelll index as an argument to IsSpellInRange, so the correct documentation for this would be:
inRange = IsSpellInRange(index, "bookType", "unit") or IsSpellInRange("name", "unit")
Return values remains the same as always.
Using a range check on those spell thats bugged was actually my first workaround, but i found it to flakey.
So the right approach to solve this is the following.
If IsSpellInRange([name or ID], "unit") fail, you should try IsSpellInRange(index, "bookType", "unit")
The reason you want to check first with the normal way IsSpellInRange([name or ID], "unit"), is because i just found out that Tricks of the Trade is bugged is used with the spell index.
So to summ it up.
First check the way you normally do, if that returns empty, then check with the spell index and problem solved.