The main reason why tomatoes will not ripen is the weather (like Tutter suggested.)
Tomatoes love to ripen in a range of 68-75 degrees. Lycopene and carotene production halt after 85 degrees, these are what cause the red color in tomatoes. The farther you get from this and the slower they will ripen. If it's too hot you may be able to shade them a bit and force them to ripen.
A few things to remember also. Larger beefsteak tomatoes will ripen a bit slower and they tend to ripen unevenly, especially heirlooms. Pick them when the bottoms are dark red even if the tops are a bit green/yellow/orange still. This will help against rot.
Also, never refrigerate your tomatoes. One of the biggest reasons garden tomatoes taste so much better is because they have never been put through cold. Once tomatoes go under 45-50 degrees all flavor is lost.