Surfbar continued:
[mailer.git] / inc / libs / surfbar_functions.php
index c183e5e0aafac1610bae4db28a06d7794ffc80c8..26610a438ed795a8d4430cfbd5886651cc9dd28f 100644 (file)
@@ -326,6 +326,20 @@ function SURFBAR_MEMBER_DELETE_ACTION ($urlData) {
        // Display form
        return SURFBAR_MEMBER_DISPLAY_ACTION_FORM("delete", $urlData);
 }
+// Pause active banner
+function SURFBAR_MEMBER_PAUSE_ACTION ($urlData) {
+       return SURFBAR_CHANGE_STATUS($urlData['id'], $urlData['status'], $urlData['new_status'], array($urlData['id'] => $urlData));
+}
+// Unpause stopped banner
+function SURFBAR_MEMBER_UNPAUSE_ACTION ($urlData) {
+       // Fix missing entry for template
+       $urlData['edit'] = $urlData['unpause'];
+       $urlData['edit']['url'] = $urlData['url'];
+       $urlData['edit']['limit'] = $urlData['views_max'];
+
+       // Return status change
+       return SURFBAR_CHANGE_STATUS($urlData['id'], $urlData['status'], $urlData['new_status'], array($urlData['id'] => $urlData));
+}
 // Display selected "action form"
 function SURFBAR_MEMBER_DISPLAY_ACTION_FORM ($action, $urlData) {
        // Translate some data
@@ -341,17 +355,20 @@ function SURFBAR_MEMBER_DISPLAY_ACTION_FORM ($action, $urlData) {
                $urlData['lock_reason'] = "---";
        } // END - if
 
-       // Default is not limited
-       $urlData['limited_yes'] = "";
-       $urlData['limited_no']  = " checked=\"checked\"";
-       $urlData['limited']     = "false";
-
-       // Is this URL limited?
-       if ($urlData['views_max'] > 0) {
-               // Then rewrite form data
-               $urlData['limited_yes'] = " checked=\"checked\"";
-               $urlData['limited_no']  = "";
-               $urlData['limited']     = "true";
+       // Include fields only for action 'edit'
+       if ($action == "edit") {
+               // Default is not limited
+               $urlData['limited_yes'] = "";
+               $urlData['limited_no']  = " checked=\"checked\"";
+               $urlData['limited']     = "false";
+
+               // Is this URL limited?
+               if ($urlData['views_max'] > 0) {
+                       // Then rewrite form data
+                       $urlData['limited_yes'] = " checked=\"checked\"";
+                       $urlData['limited_no']  = "";
+                       $urlData['limited']     = "true";
+               } // END - if
        } // END - if
 
        // Load the form and display it
@@ -397,33 +414,31 @@ function SURFBAR_MEMBER_EXECUTE_ACTION ($action, $urlData) {
 }
 // "Execute edit" function: Update changed data
 function SURFBAR_MEMBER_EXECUTE_EDIT_ACTION ($urlData) {
+       // Default is nothing done
+       $status = false;
+
        // Translate URLs for testing
        $url1 = COMPILE_CODE($urlData['url']);
        $url2 = COMPILE_CODE($urlData['edit']['url']);
 
        // Has the URL or limit changed?
-       if (($urlData['views_allowed'] != $urlData['edit']['limit']) || ($url1 != $url2)) {
+       if (true) {
+       //if (($urlData['views_allowed'] != $urlData['edit']['limit']) || ($url1 != $url2)) {
                // Run the query
                SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_surfbar_urls SET url='%s', views_allowed=%s, views_max=%s WHERE id=%s AND status='%s' LIMIT 1",
                        array($urlData['url'], $urlData['edit']['limit'], $urlData['edit']['limit'], $urlData['id'], $urlData['status']), __FILE__, __LINE__);
 
-               // Prepare new data
-               $urlData['new_url']   = $urlData['edit']['url'];
-               $urlData['new_limit'] = $urlData['edit']['limit'];
-               unset($urlData['edit']);
-
-               // Send admin notification
-               SURFBAR_NOTIFY_ADMIN("url_edited", $urlData);
-
-               // Send user notification
-               SURFBAR_NOTIFY_USER("url_edited", $urlData);
-
                // All fine
-               return true;
+               $status = true;
        }
 
-       // Not updated
-       return false;
+       // Return status
+       return $status;
+}
+// "Execute delete" function: Does nothing...
+function SURFBAR_MEMBER_EXECUTE_DELETE_ACTION ($urlData) {
+       // Nothing special to do (see above function for such "special actions" to perform)
+       return true;
 }
 //
 // -----------------------------------------------------------------------------
@@ -1195,10 +1210,10 @@ function SURFBAR_CHANGE_STATUS ($urlId, $prevStatus, $newStatus, $data=array())
        // ---------- Comment out for debugging/developing member actions! ---------
 
        // Was that fine?
-       if (SQL_AFFECTEDROWS() != 1) {
-               // No, something went wrong
-               return false;
-       } // END - if
+       //if (SQL_AFFECTEDROWS() != 1) {
+       //      // No, something went wrong
+       //      return false;
+       //} // END - if
 
        // Prepare content for notification routines
        $data[$urlId]['uid']         = $data[$urlId]['userid'];
@@ -1206,11 +1221,17 @@ function SURFBAR_CHANGE_STATUS ($urlId, $prevStatus, $newStatus, $data=array())
        $data[$urlId]['reward']      = TRANSLATE_COMMA($_CONFIG['surfbar_static_reward']);
        $data[$urlId]['costs']       = TRANSLATE_COMMA($_CONFIG['surfbar_static_costs']);
 
+       // Do some dirt fixing here:
+       if (($data[$urlId]['status'] == "STOPPED") && ($newStatus == "pending")) {
+               // Fix for template change
+               $newStatus = "continued";
+       } // END - if
+
        // Send admin notification
-       SURFBAR_NOTIFY_ADMIN("url_{$newStatus}", $data[$urlId]);
+       SURFBAR_NOTIFY_ADMIN("url_{$data[$urlId]['status']}_{$newStatus}", $data[$urlId]);
 
        // Send user notification
-       SURFBAR_NOTIFY_USER("url_{$newStatus}", $data[$urlId]);
+       SURFBAR_NOTIFY_USER("url_{$data[$urlId]['status']}_{$newStatus}", $data[$urlId]);
 
        // All done!
        return true;