Haga won a thrilling battle with Troy Corser at the Nurburgring.
Noriyuki Haga moved up to fourth in the World Superbike championship after claiming a double victory at the Nurburgring in Germany.
Haga beat championship leader Troy Bayliss in the first race by 2.025 seconds, and he won the rain-curtailed second race on the countback rule.
Troy Corser led when the race stopped on lap 16 but the result was decided by placings in the final completed lap.
Haga's win was all the more impressive as he broke a collarbone two weeks ago.
His double win takes his championship points tally to 172, 55 behind leader Bayliss, who ended the weekend with a second and a fourth place finish after making mistakes in both legs.
Bayliss was leading the first race but he ran wide into turn one less than two laps from the end to hand victory to the Yamaha rider.
In race two Bayliss made two mistakes on the fifth lap, dropping from the lead down to fifth before recovering to fourth.
Suzuki rider Max Neukirchner, who impressed the home fans by taking superpole in qualifying on Saturday, continued to shine with a pair of third place finishes.
Race one results:
1 N Haga (Jpn) Yamaha 39mins 19.427secs
2 T Bayliss (Aus) Ducati 39:21.452
3 M Neukirchner (Ger) Suzuki 39:24.244
4 T Corser (Aus) Yamaha 39:29.702
5 C Checa (Spa) Honda 39:39.927
6 R Xaus (Spa) Ducati 39:50.353
7 M Fabrizio (Ita) Ducati 407.371
8 F Nieto (Spa) Suzuki 427.891
9 M Tamada (Jpn)
10 K Muggeridge (Aus) Honda 41:01.703
Race two results:
1 N Haga (Jpn) Yamaha 27mins 26.594secs
2 T Corser (Aus) Yamaha 27:26.744
3 M Neukirchner (Ger) Suzuki
4 T Bayliss (Aus) Ducati 27:34.245
5 C Checa (Spa) Honda
6 M Fabrizio (Ita) Ducati 27:35.624
7 M Biaggi (Ita) Ducati
8 R Xaus (Spa) Ducati 27:36.510
9 F Nieto (Spa) Suzuki
10 R Laconi (Fra) Kawasaki 27:40.153
Rider standings (after 7 of 14 rounds):
1 T Bayliss (Aus) Ducati, 227 points
2 C Checa (Spn) Honda 188
3 M Neukirchner (Ger) Suzuki 176
4 N Haga (Jpn) Yamaha 172
5 T Corser (Aus) Yamaha 154
6 F Nieto (Spn) Suzuki 141
7 R Xaus (Spn) Ducati 110
8 M Fabrizio (Ita) Ducati 106
9 M Biaggi (Ita) Ducati 97
10 R Kiyonari (Jpn) Honda 89