Rinse the rice in warm water then in a few changes of cold water until the water runs clear. Soak the rice for about 20 minutes, drain in colander and then leave to dry for another 10 minutes.
Heat the 2-3 tablespoons of oil in a large pot with 150 ml of water. Add the spinach and bring to the boil, until the spinach wilts. Drain off the water- reserving the liquid.
Heat the remaining oil, add the cardamom, cumin and cloves and allow to crackle and then sauté the leeks until soft but not coloured. Add this to the spinach, with the dill, fenugreek, some salt and ground pepper.
Bring one litre of water to the boil with 1 teaspoon of salt. Add two thirds of the rice and par boil for 4 minutes, then drain in a colander.
Brush a non-stick pan with liberally with soft butter, mix the third of soaked rice with the egg and any remaining butter, and pack all around the bottom and sides of the pan.
Mix the remaining par boiled rice, with the spinach leek mixture, and then pack the rice into the rice encrusted pan. Pour in the reserved spinach water; Place the pan on a medium high heat, cover with a dry tea towel, and then a tight fitting lid. Fold the cloth over the lid, to ensure that it does not catch alight. Cook undisturbed for 20 minutes.
Remove from heat, leave to stand for five minutes then invert onto a platter.