Heat a tagine or heavy-bottomed shallow lidded pan on a low heat and add the oil, followed by a layer of onion. Mash the garlic with ½tsp salt and add to the pan.
Sprinkle over the ginger, saffron water and cinnamon, followed by the lemon juice, and coarsely chopped pulp of one preserved lemon and the rind of both, cut into slivers. Add the parsley and 2tbsp chopped coriander and toss it all together well.
Arrange the chicken on top and scatter over the olives. Pour 175ml water into the pan, cover tightly and simmer very gently for about 45 minutes until the chicken is cooked through.
Season to taste and top with the remaining coriander, chopped.