Skip to content

Commit

Permalink
example of builder pattern added
Browse files Browse the repository at this point in the history
  • Loading branch information
prabrisha-rudder committed Oct 1, 2019
1 parent ddcf775 commit 0e2fe29
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 79 deletions.
115 changes: 48 additions & 67 deletions rudder-client-javascript/analytics/tests/html/test_browser.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ <h1>Page Loaded</h1>
<script type="text/javascript">
analytics = window.analytics = [];
analytics.page = function() {
console.log(...arguments);
console.log(...arguments)
analytics.push(["page", ...arguments]);
};
analytics.track = function() {
Expand All @@ -21,76 +21,57 @@ <h1>Page Loaded</h1>
};

analytics.load("1QbNPCBQp2RFWolFj2ZhXi2ER6a");
//analytics.page("Wishlist");
analytics.identify({
name: "Tintin",
city: "Brussels",
country: "Belgium",
email: "tintin@herge.com"
}, ()=>{console.log("in identify callback html")});
analytics.page("Wishlist1");
/* var counter = 1
setInterval(() => {
analytics.page("Wishlist"+ ++counter)
}, 2000); */
//analytics.page();
analytics.identify(
{
name: "demo"
},
() => {
console.log("in identify callback html");
}
);

analytics.page(
"Dashboard",
{
title: "abc",
url: "http://abc.com",
path: "/abc"
},
() => {
console.log("in page callback html");
}
);

analytics.identify(
{
name: "demo",
city: "Kolkata",
country: "India",
email: "demo@gmail.com"
},
() => {
console.log("in identify callback html");
}
);

analytics.track("Article Started", {
title: "How to Create a Tracking Plan",
course: "Intro to Analytics",
/* analytics.identify({
name: "Tintin",
city: "Brussels",
country: "Belgium",
email: "tintin@herge.com"
}, ()=>{console.log("in identify callback html")}); */
/* analytics.page("Dashboard", {
"title":"abc",
"url":"http://abc.com",
"path":"/abc"
},()=>{console.log("in page callback html")});
analytics.track('Article Started', {
title: 'How to Create a Tracking Plan',
course: 'Intro to Analytics',
revenue: 10
});
}); */
</script>

<script src="../dist/browser.js"></script>
<script src="browser.js"></script>

<script type="text/javascript">
analytics.track(
"Article Completed",
{
title: "How to Create a Tracking Plan",
course: "Intro to Analytics",
revenue: 20
},
() => {
console.log("in track callback html");
}
);

analytics.reset();

analytics.track(
"New Track Event",
{
title: "How to Create a Tracking Plan",
course: "Intro to Demo",
revenue: 30
},
() => {
console.log("in track callback html");
}
);
//var testObj = new analytics.test();
//testObj.track();
//testObj.page();
//analytics.load("1QbNPCBQp2RFWolFj2ZhXi2ER6a");
//analytics.page("Wishlist");
//analytics.page();
/* analytics.track('Article Completed', {
title: 'How to Create a Tracking Plan',
course: 'Intro to Analytics',
revenue: 20
}, ()=>{console.log("in track callback html")}); */
analytics.track(new analytics.RudderElementBuilder().
setEvent(analytics.ECommerceEvents.PROMOTION_VIEWED).
setProperty(new analytics.PromotionViewedEvent().
setPromotion(new analytics.ECommercePromotion().
setPromotionId("Dummy Promotion 1").
setCreative("Dummy Creative 1")).
build().getPropertyMap()).
build());
</script>
</body>
</html>
</html>
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,4 @@ class ECommercePromotion {
}
}

module.exports = {
ECommercePromotion: ECommercePromotion
};
export default ECommercePromotion;
6 changes: 2 additions & 4 deletions rudder-client-javascript/analytics/utils/PromotionEvent.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var RudderProperty = require("./RudderProperty");
import { RudderProperty } from "./RudderProperty";

//Parent class of promotion viewed and promotion clicked events
class PromotionEvent {
Expand All @@ -19,6 +19,4 @@ class PromotionEvent {
}
}

module.exports = {
PromotionEvent: PromotionEvent
};
export default PromotionEvent;
13 changes: 8 additions & 5 deletions rudder-client-javascript/analytics/utils/PromotionViewedEvent.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
var PromotionEvent = require("./PromotionEvent");
var ECommerceEvents = require("./constants").ECommerceEvents;
//var PromotionEvent = require("./PromotionEvent");
//var ECommerceEvents = require("./constants").ECommerceEvents;
import PromotionEvent from "./PromotionEvent"
import { ECommerceEvents} from "./constants"
//Promotion Viewed Event class
class PromotionViewedEvent extends PromotionEvent {
constructor(){
super();
}
event() {
return ECommerceEvents.PROMOTION_VIEWED;
}
}

module.exports = {
PromotionViewedEvent: PromotionViewedEvent
};
export default PromotionViewedEvent;

0 comments on commit 0e2fe29

Please sign in to comment.