Pour the olive oil into a largeish pan on a medium heat
Add in the 2 different grades of semolina and stir well.
Cook until slightly browned, but don't let it burn. 5 to 10 minutes.
In another pan at the same time add the sugar, cinnamon, star anise, lemon and orange peels.
Add in the water/milk and bring the mixture to the boil and simmer gently for around 10 minutes while the semolina toasts
Strain the liquor from the water & spice mixture into a large jug or other container.
Turn off the heat on the toasting semolina and add the nuts, raisins, (& dates if you're using them) to the semolina and stir the mixture to distribute them evenly.
Allow the pan with the semolina to cool briefly (30 seconds or so) before pouring in the strained liquor that you have created in the other pan/jug. This is so it's not too volatile.
Add the liquid gradually, stirring all the time. Watch out for it errupting if you add too much too quickly.
Turn the heat back on and continue stirring until the mixture begins to thicken.
Take if off the heat and pour it into a large enough heat proof mould. Pyrex is best, but any rectangular shaped dish should do.
Allow to cool and firm up, and then loosen with a knife and turn it out onto a serving dish or tray.
Heat the apricot jam in the microwave and mash with a fork so it's smooth.
Brush the top with the jam and sprinkle with the chopped hazelnuts and maybe some finely chopped dates.