diff --git a/services/web/app/views/project/editor/dropbox.jade b/services/web/app/views/project/editor/dropbox.jade index 7cc425ccef..5aa2e1b44b 100644 --- a/services/web/app/views/project/editor/dropbox.jade +++ b/services/web/app/views/project/editor/dropbox.jade @@ -25,8 +25,8 @@ script(type="text/ng-template", id="dropboxModalTemplate") strong Dropbox/sharelatex/{{ project.name }} div.text-center(ng-hide="dbState.hasDropboxFeature") p #{translate("need_to_upgrade_for_dropbox")} - p - a.btn.btn-info(ng-click="startFreeTrial('dropbox')") #{translate("start_free_trial")} + p(ng-controller="FreeTrialModalController") + a.btn(ng-click="startFreeTrial('dropbox')", ng-class="buttonClass") #{translate("start_free_trial")} p.small(ng-show="startedFreeTrial") | #{translate("refresh_page_after_starting_free_trial")} diff --git a/services/web/app/views/project/editor/pdf.jade b/services/web/app/views/project/editor/pdf.jade index ef67ee81b4..6d59fd0584 100644 --- a/services/web/app/views/project/editor/pdf.jade +++ b/services/web/app/views/project/editor/pdf.jade @@ -99,7 +99,7 @@ div.full-size.pdf(ng-controller="PdfController") p a.btn.btn-info( href - ng-click="startFreeTrial('compile-timeout')" + ng-click="hello('compile-timeout')" ) #{translate("start_free_trial")} diff --git a/services/web/app/views/project/editor/share.jade b/services/web/app/views/project/editor/share.jade index 7f48a3ebdd..83e4c52f38 100644 --- a/services/web/app/views/project/editor/share.jade +++ b/services/web/app/views/project/editor/share.jade @@ -68,8 +68,8 @@ script(type='text/ng-template', id='shareProjectModalTemplate') ) #{translate("share")} div.text-center(ng-hide="canAddCollaborators") p #{translate("need_to_upgrade_for_more_collabs")}. - p - a.btn.btn-info(href, ng-click="startFreeTrial('projectMembers')") #{translate("start_free_trial")} + p(ng-controller="FreeTrialModalController") + a.btn(href, ng-click="startFreeTrial('projectMembers')", ng-class="buttonClass") #{translate("start_free_trial")} p.small(ng-show="startedFreeTrial") | #{translate("refresh_page_after_starting_free_trial")}. diff --git a/services/web/app/views/project/editor/track-changes.jade b/services/web/app/views/project/editor/track-changes.jade index aad08a0576..10f4070dee 100644 --- a/services/web/app/views/project/editor/track-changes.jade +++ b/services/web/app/views/project/editor/track-changes.jade @@ -2,9 +2,10 @@ div#trackChanges(ng-show="ui.view == 'track-changes'") .upgrade-prompt(ng-show="!project.features.versioning") .message(ng-show="project.owner._id == user.id") p #{translate("need_to_upgrade_for_history")} - p - a.btn.btn-info( + p(ng-controller="FreeTrialModalController") + a.btn( href + ng-class="buttonClass" ng-click="startFreeTrial('track-changes')" ) #{translate("start_free_trial")} p.small(ng-show="startedFreeTrial") #{translate("refresh_page_after_starting_free_trial")} diff --git a/services/web/app/views/subscriptions/new.jade b/services/web/app/views/subscriptions/new.jade index 470fefb9a8..78ad380d59 100644 --- a/services/web/app/views/subscriptions/new.jade +++ b/services/web/app/views/subscriptions/new.jade @@ -86,7 +86,7 @@ block content Recurly.buildSubscriptionForm(recurlySubscriptionFormConfig); window.ab = [ - {step:1, bucket:"eu-eu", testName:"multi_currency"}, - {step:1, bucket:"eu-usd", testName:"multi_currency"} + {step:1, bucket:"red", testName:"button_color"}, + {step:1, bucket:"blue", testName:"button_color"} ] diff --git a/services/web/app/views/subscriptions/successful_subscription.jade b/services/web/app/views/subscriptions/successful_subscription.jade index 8b66dec6c9..7047e7c8ac 100644 --- a/services/web/app/views/subscriptions/successful_subscription.jade +++ b/services/web/app/views/subscriptions/successful_subscription.jade @@ -37,4 +37,7 @@ block content window.ab = [ {step:1, bucket:"student_control", testName:"editor_plan"}, {step:1, bucket:"collab_test", testName:"editor_plan"}, + + {step:2, bucket:"blue", testName:"button_color"}, + {step:2, bucket:"red", testName:"button_color"} ] \ No newline at end of file diff --git a/services/web/app/views/view_templates/bonus_templates.jade b/services/web/app/views/view_templates/bonus_templates.jade index e96f387137..a75c0ad284 100644 --- a/services/web/app/views/view_templates/bonus_templates.jade +++ b/services/web/app/views/view_templates/bonus_templates.jade @@ -28,7 +28,7 @@ script(type="text/ng-template", id="BonusLinkToUsModal") div.text-center(ng-hide="dbState.hasDropboxFeature") p You need to upgrade your account to link to dropbox. p - a.btn.btn-info(ng-click="startFreeTrial('dropbox')") Start Free Trial + a.btn(ng-click="startFreeTrial('dropbox')", ng-class="buttonClass") Start Free Trial p.small(ng-show="startedFreeTrial") | Please refresh this page after starting your free trial. diff --git a/services/web/public/coffee/ide.coffee b/services/web/public/coffee/ide.coffee index 9639af07c9..e5abde12cf 100644 --- a/services/web/public/coffee/ide.coffee +++ b/services/web/public/coffee/ide.coffee @@ -27,6 +27,7 @@ define [ "directives/rightClick" "filters/formatDate" "main/event-tracking" + "main/account-upgrade" ], ( App FileTreeManager @@ -38,7 +39,8 @@ define [ PdfManager BinaryFilesManager ) -> - App.controller "IdeController", ($scope, $timeout, ide, abTestManager) -> + + App.controller "IdeController", ($scope, $timeout, ide) -> # Don't freak out if we're already in an apply callback $scope.$originalApply = $scope.$apply $scope.$apply = (fn = () ->) -> @@ -64,17 +66,6 @@ define [ $scope.chat = {} - $scope.startFreeTrial = (source) -> - - testBuckets = [ - { bucketName:"student_control", planName:"student"} - { bucketName:"collab_test", planName:"collaborator"} - ] - editorPlanBucket = abTestManager.getABTestBucket "editor_plan", testBuckets - abTestManager.processTestWithStep("editor_plan", editorPlanBucket.bucketName, 0) - ga?('send', 'event', 'subscription-funnel', 'upgraded-free-trial', source) - window.open("/user/subscription/new?planCode=#{editorPlanBucket.planName}_free_trial_7_days&ssp=#{editorPlanBucket.planName == 'collaborator'}") - $scope.startedFreeTrial = true window._ide = ide diff --git a/services/web/public/coffee/main/account-upgrade.coffee b/services/web/public/coffee/main/account-upgrade.coffee new file mode 100644 index 0000000000..df3f6e9724 --- /dev/null +++ b/services/web/public/coffee/main/account-upgrade.coffee @@ -0,0 +1,27 @@ +define [ + "base" +], (App) -> + App.controller "FreeTrialModalController", ($scope, abTestManager)-> + + buttonColorBuckets = [ + { bucketName:"red", btnClass:"primary"} + { bucketName:"blue", btnClass:"info"} + ] + + buttonColorBucket = abTestManager.getABTestBucket "button_color", buttonColorBuckets + abTestManager.processTestWithStep("button_color", buttonColorBucket.bucketName, 0) + $scope.buttonClass = "btn-#{buttonColorBucket.btnClass}" + + + $scope.startFreeTrial = (source) -> + + testBuckets = [ + { bucketName:"student_control", planName:"student"} + { bucketName:"collab_test", planName:"collaborator"} + ] + + editorPlanBucket = abTestManager.getABTestBucket "editor_plan", testBuckets + abTestManager.processTestWithStep("editor_plan", editorPlanBucket.bucketName, 0) + ga?('send', 'event', 'subscription-funnel', 'upgraded-free-trial', source) + window.open("/user/subscription/new?planCode=#{editorPlanBucket.planName}_free_trial_7_days&ssp=#{editorPlanBucket.planName == 'collaborator'}") + $scope.startedFreeTrial = true \ No newline at end of file