I worked on a car with a starting problem like that. But what you can try is get a set of jumper cables, first just take the ground, one side to the - on batt., then put the other end on to the starter make sure it get a good bite and try cranking again with ignition switch if it cranks you got a bad ground going to the block.
If that dont work leave it hooked up for the time being and now put positive on batt and you use the other end to jump off the starter. If that works you main + line going to starter is bad.
This only works if you are sure the batt and starter are good
And if that dont work then i don't know because doing that i found out what was wrong with what i was working on, But my best guess would be is to check for 12v going to the little wire which i believe is purple and see if its got 12v when you try cranking because it may be getting power but not enough to completely kick in the solenoid