| <?php | |
| /** | |
| * Copyright (c) 2018 Eclipse Foundation. | |
| * | |
| * This program and the accompanying materials are made | |
| * available under the terms of the Eclipse Public License 2.0 | |
| * which is available at https://www.eclipse.org/legal/epl-2.0/ | |
| * | |
| * Contributors: | |
| * Donald Smith (Eclipse Foundation) - initial API and implementation | |
| * Eric Poirier (Eclipse Foundation) | |
| * | |
| * SPDX-License-Identifier: EPL-2.0 | |
| */ | |
| print $this->page_header_html; ?> | |
| <p>This page is designed for Eclipse Foundation staff who need to manage click-tracking | |
| campaigns and as an added bonus - it shortens most URLs. If you need help with | |
| this feature, see help at bottom of page, and feel free to email donald, who works at eclipse.org.</p> | |
| <div class="row"> | |
| <div class="col-sm-12"> | |
| <h2>View Campaigns By Person</h2> | |
| <form class="form-horizontal" action="?page=view-campaigns" method="POST"> | |
| <div class="form-group"> | |
| <div class="col-sm-14"> | |
| <select name="campaignPortalID" class="form-control"> | |
| <option value="ALL">All</option> | |
| <?php | |
| foreach($this->selectCampaignByUser() as $email){ | |
| print '<option SELECTED value="'. | |
| $email['CreatorPortalID'] .'">' . | |
| $email['CreatorPortalID'] . '</option>'; | |
| } | |
| ?> | |
| </select> | |
| </div> | |
| <div class="col-sm-10"> | |
| <input type="hidden" name="action_state" value="view-campaigns"/> | |
| <input class="btn btn-primary" type="submit" | |
| value="View Campaigns" name="viewCampaigns"> | |
| </div> | |
| </div> | |
| </form> | |
| <h2>View Campaigns By Group</h2> | |
| <form class="form-horizontal" action="?page=view-campaigns" method="POST"> | |
| <div class="form-group"> | |
| <div class="col-sm-14"> | |
| <select name="campaignGroup" class="form-control"> | |
| <option value="ALL">All</option> | |
| <?php | |
| foreach($this->selectCampaignByGroup() as $group){ | |
| print '<option value="' . $group['CampaignGroup'] . '">' . | |
| $group['CampaignGroup'] . "</option>"; | |
| } | |
| ?> | |
| </select> | |
| </div> | |
| <div class="col-sm-10"> | |
| <input type="hidden" name="action_state" value="view-campaigns"/> | |
| <input class="btn btn-primary" type="submit" value="View Campaigns" | |
| name="viewCampaigns"> | |
| </div> | |
| </div> | |
| </form> | |
| <h2>Create A New Campaign</h2> | |
| <form class="form-horizontal" action="?page=home" method="POST"> | |
| <div class="form-group"> | |
| <label class="col-sm-8 control-label" for="campaignName">Campaign Name:</label> | |
| <div class="col-sm-16"> | |
| <input class="form-control" type="text" name="campaignName" value=""> | |
| </div> | |
| </div> | |
| <div class="form-group"> | |
| <label class="col-sm-8 control-label" for="campaignTarget">Target URL:</label> | |
| <div class="col-sm-16"> | |
| <input class="form-control" type="text" name="campaignTarget" value="http://"> | |
| </div> | |
| </div> | |
| <div class="form-group"> | |
| <label class="col-sm-8 control-label" for="campaignEndDate">Expiry Date:</label> | |
| <div class="col-sm-16"> | |
| <input class="form-control" type="text" name="campaignEndDate" | |
| value="<?php print date("Y-m-d", strtotime("+2 year")); ?>"> | |
| </div> | |
| </div> | |
| <div class="form-group"> | |
| <label class="col-sm-8 control-label" for="campaignGroup">Group:</label> | |
| <div class="col-sm-16"> | |
| <input class="form-control" type="text" name="campaignGroup" value="SOLO"> | |
| </div> | |
| </div> | |
| <div class="form-group"> | |
| <div class="col-sm-offset-8 col-sm-16"> | |
| <input type="hidden" name="action_state" value="create"/> | |
| <input class="btn btn-primary" type="submit" value="Create Campaign" | |
| name="create"> | |
| </div> | |
| </div> | |
| <p> | |
| </p> | |
| </form> | |
| </div> | |
| <div class="col-sm-12"> | |
| <h2>How to Create a Campaign</h2> | |
| <p>A simple use case is:</p> | |
| <ol> | |
| <li>Enter a campaign name such as "FOO". Keep it short and sweet, no spaces, just use Characters and numbers.</li> | |
| <li>Enter a target URL (MUST put http://) such as http://test.com/long/url/foo.php</li> | |
| <li>Enter an expiry date (after that date clicks to the campaign will go to an "expired campaign" error page).</li> | |
| <li>Enter Campaign Group (or leave at SOLO if it stands alone). This helps you manage related campaigns in a single newsletter for example.</li> | |
| <li>Click "Create Campaign" Button</li> | |
| <li>Point people to http://eclipse.org/go/FOO (where FOO is the campaign name), they will automatically be redirected to | |
| the target URL, and we will track who-clicked-what-when.</li> | |
| </ol> | |
| <h2>Notes:</h2> | |
| <ul> | |
| <li>Click the "View Campaigns" button to view campaigns that are related to the person or group you chose.</li> | |
| <li>Click the "view clicks" button to see the clicks to your campaign!</li> | |
| <li>It is possible to add a SubKey (lets call it a "channel key") to URLs if you want to distinguish between | |
| clicks coming from different channels. For example, eclipse.org/go/FOO@EM and eclipse.org/go/FOO@WB -- | |
| both will record and redirect | |
| the FOO Campaign, but will tag the click with an "EM" (for Email)or "WB" (for Web) | |
| in the click results to distinguish | |
| clicks coming from channels.</li> | |
| <li>For Email Campaings we could get really fancy with a "Mail Merge" tool and encode a | |
| user ID after the @ in the URL to know *exactly* who is clicking on links. For example, | |
| eclipse.org/go/FOO@1287 would record 1287 with the click and we could tell that | |
| member 1287 clicked the url...</li> | |
| </ul> | |
| </div> | |
| </div> |