diff --git a/promo/images/ECF_register-2018-Early-200.png b/promo/images/ECF_register-2018-Early-200.png
new file mode 100644
index 0000000..5842c2b
--- /dev/null
+++ b/promo/images/ECF_register-2018-Early-200.png
Binary files differ
diff --git a/promo/images/ECF_register-2018-Now-200.png b/promo/images/ECF_register-2018-Now-200.png
new file mode 100644
index 0000000..9073650
--- /dev/null
+++ b/promo/images/ECF_register-2018-Now-200.png
Binary files differ
diff --git a/promo/images/ECF_register-2018-One-Week-200.png b/promo/images/ECF_register-2018-One-Week-200.png
new file mode 100644
index 0000000..62792a3
--- /dev/null
+++ b/promo/images/ECF_register-2018-One-Week-200.png
Binary files differ
diff --git a/promo/images/ECF_register-2018-Two-Weeks-200.png b/promo/images/ECF_register-2018-Two-Weeks-200.png
new file mode 100644
index 0000000..fce62ac
--- /dev/null
+++ b/promo/images/ECF_register-2018-Two-Weeks-200.png
Binary files differ
diff --git a/promo/images/F4G_200x200_square_1_week_red.png b/promo/images/F4G_200x200_square_1_week_red.png
new file mode 100644
index 0000000..f634561
--- /dev/null
+++ b/promo/images/F4G_200x200_square_1_week_red.png
Binary files differ
diff --git a/promo/images/F4G_200x200_square_2_weeks_red.png b/promo/images/F4G_200x200_square_2_weeks_red.png
new file mode 100644
index 0000000..f4a7256
--- /dev/null
+++ b/promo/images/F4G_200x200_square_2_weeks_red.png
Binary files differ
diff --git a/promo/images/F4G_200x200_square_register_early_red.png b/promo/images/F4G_200x200_square_register_early_red.png
new file mode 100644
index 0000000..307826b
--- /dev/null
+++ b/promo/images/F4G_200x200_square_register_early_red.png
Binary files differ
diff --git a/promo/images/F4G_200x200_square_register_now.png b/promo/images/F4G_200x200_square_register_now.png
new file mode 100644
index 0000000..20611ec
--- /dev/null
+++ b/promo/images/F4G_200x200_square_register_now.png
Binary files differ
diff --git a/promo/promos.php b/promo/promos.php
index 6fba10b..eec8a16 100644
--- a/promo/promos.php
+++ b/promo/promos.php
@@ -214,16 +214,68 @@
     'weight' => 7.75
   );
 
+  // IoT Ad
+  $member_name = "IoT";
+  $url = "PROMO_IOT2018";
+  $image = "/membership/promo/images/IoT-Survey-Complete-Ad.png";
+
+  $eclipsecon_member_name = "Eclipsecon";
+  $current_time = time();
+
+  // F4G2018 ad
+  $foss4g_url = "PROMO_F4G2018";
+  if ($current_time >= strtotime("2018/02/26") && $current_time < strtotime("2018/03/08")) {
+    $image = "/membership/promo/images/F4G_200x200_square_register_early_red.png";
+    $url = $foss4g_url;
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/03/15") && $current_time < strtotime("2018/04/05")) {
+    $image = "/membership/promo/images/F4G_200x200_square_register_now.png";
+    $url = $foss4g_url;
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/04/30") && $current_time < strtotime("2018/05/07")) {
+    $image = "/membership/promo/images/F4G_200x200_square_2_weeks_red.png";
+    $url = $foss4g_url;
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/05/07") && $current_time < strtotime("2018/05/11")) {
+    $image = "/membership/promo/images/F4G_200x200_square_1_week_red.png";
+    $url = $foss4g_url;
+    $member_name = $eclipsecon_member_name;
+  }
+
+  // ECF2018 ad
+  if ($current_time >= strtotime("2018/04/16") && $current_time < strtotime("2018/04/30")) {
+    $image = "/membership/promo/images/ECF_register-2018-Early-200.png";
+    $url = "PROMO_ECF2018";
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/05/14") && $current_time < strtotime("2018/05/30")) {
+    $image = "/membership/promo/images/ECF_register-2018-Now-200.png";
+    $url = "PROMO_ECF2018";
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/05/30") && $current_time < strtotime("2018/06/06")) {
+    $image = "/membership/promo/images/ECF_register-2018-Two-Weeks-200.png";
+    $url = "PROMO_ECF2018";
+    $member_name = $eclipsecon_member_name;
+  }
+  if ($current_time >= strtotime("2018/06/06") && $current_time < strtotime("2018/06/13")) {
+    $image = "/membership/promo/images/ECF_register-2018-One-Week-200.png";
+    $url = "PROMO_ECF2018";
+    $member_name = $eclipsecon_member_name;
+  }
+
   $retVal[] = array(
-    'memberName' => 'IoT',
+    'memberName' => $member_name,
     'type' => 'strat_ad',
     'weight' => 12.75,
-    'imageurl' => '/membership/promo/images/IoT-Survey-Complete-Ad.png',
-    'url' => 'PROMO_IOT2018',
+    'imageurl' => $image,
+    'url' => $url,
   );
 
   return $retVal;
-
 }
 
 
