Heat the oven to 180C/fan 160C/gas 4. Oil the base of a 23cm ring tin (or oil and line the base of a 20cm round or 18cm square cake tin). Put the ground hazelnuts in a frying pan and toast over a medium heat, stirring frequently until evenly browned. Leave to cool, then mix with the semolina, caster sugar and baking powder.
Finely grate the zest from one orange and combine with the eggs and oil. Beat well with a wooden spoon, then fold into the dry ingredients. Pour the mixture into the prepared tin and bake for 30-40 mins, until risen and firm to the touch.
While the cake is baking, pare the zest from the other orange and cut into very thin shreds. Put in a saucepan with the juice from both oranges, the saffron and icing sugar. Bring to the boil, then simmer gently for 5 mins.
When the cake is done, leave it to cool in the tin slightly, then turn out onto a plate. Peel off the lining paper. While the cake is still warm, skewer it well and spoon the syrup over. Serve as it is, or with yogurt or crème fraîche and orange segments. The cake will keep in the fridge in an airtight container for 3-4 days.