This South African dish keeps well in the refrigerator for up to a week. The fish is cooked first, and then pickled. It's served cold with a green salad and crisp rolls. The source is Africhef.com. and it's slightly modified.
Firm up the flesh of the fish by sprinkling salt on both sides of the filet and letting it stand in a glass bowl for 20 to 25 minutes.
Thoroughly rinse the salt off the filet under running water. Pat it dry with a paper towel. Cut the fish into serving portions leaving the skin attached.
Heat oil in a frying pan and fry the fish until cooked through. (Do not coat the fish with flour or batter.).
Place the rest of the ingredients in a large pot, and bring to the boil, stirring to dissolve the sugar and make sure it does not burn on the bottom of the pot. Simmer for approximately 8 minutes until the onions are cooked but still crisp.
Layer the pieces of fish and the sauce and onions alternately in a ceramic or glass serving-dish. The last layer of fish should be covered with sauce.
Refrigerate for up to a week. Best to make at least 6 hours before serving.