Season the lamb shanks with the salt and black pepper. Heat a large sauté pan until hot, then add half the olive oil and colour the lamb shanks on all sides until browned.
Remove and set aside on a plate, then add the onions and sweat for 5 minutes until just softened.
Add the ginger, garlic and spices, salt and pepper and cook for another 2 minutes. Return the lamb shanks to the pan, then add the tinned tomatoes, apricots, almond and honey and bring to the boil.
Add the chicken stock and stir well then return to the boil. Turn the heat down, cover and simmer for 2-3 hours until the meat is nearly falling off of the bone.
Check the seasoning then stir in the chopped coriander and parsley and serve immediately with some steamed couscous or rice.