diff --git a/web/app/assets/javascripts/react-components/TeacherProfile.js.jsx.coffee b/web/app/assets/javascripts/react-components/TeacherProfile.js.jsx.coffee
index 533b3539a..b916c9136 100644
--- a/web/app/assets/javascripts/react-components/TeacherProfile.js.jsx.coffee
+++ b/web/app/assets/javascripts/react-components/TeacherProfile.js.jsx.coffee
@@ -40,6 +40,7 @@ proficiencyDescriptionMap = {
TILE_SAMPLES: 'samples'
TILE_RATINGS: 'ratings'
TILE_PRICES: 'prices'
+ visible: false
TILES: ['about', 'experience', 'samples', 'ratings', 'prices']
@@ -60,6 +61,7 @@ proficiencyDescriptionMap = {
componentDidMount: () ->
@root = $(@getDOMNode())
+ @screen = $('#teacher-profile')
@starbox()
componentDidUpdate:() ->
@@ -91,14 +93,21 @@ proficiencyDescriptionMap = {
else
logger.debug("ignoring userDetailDone", response.id, @state.userId)
+ #if @visible
+ # @showSideBubble()
+
beforeHide: (e) ->
+ @visible = false
+ #@hideSideBubble();
logger.debug("TeacherProfile: beforeHide")
ProfileActions.viewTeacherProfileDone()
beforeShow: (e) ->
logger.debug("TeacherProfile: beforeShow")
+
afterShow: (e) ->
+ @visible = true
logger.debug("TeacherProfile: afterShow")
@setState({userId: e.id, user: null})
rest.getUserDetail({
@@ -107,6 +116,33 @@ proficiencyDescriptionMap = {
show_profile: true
}).done((response) => @userDetailDone(response)).fail(@app.ajaxError)
+ showSideBubble: () ->
+ # :remaining_test_drives, :can_buy_test_drive?
+ if @user['remaining_test_drives'] > 0
+ @showUseRemainingTestDrivesBubble()
+ else if @user['can_buy_test_drive?']
+ @showBuyTestDriveBubble()
+ else
+ @showBuyNormalLessonBubble()
+
+ hideSideBubble: () ->
+ if @screen.btOff
+ @screen.btOff()
+
+ showUseRemainingTestDrivesBubble: ( ) ->
+ console.log("Ok showUseRemainingTestDrivesBubble")
+ context.JK.HelpBubbleHelper.showUseRemainingTestDrives(@screen, @screen)
+
+ showBuyTestDriveBubble: () ->
+ console.log("ok showBuyTestDriveBubble")
+ context.JK.HelpBubbleHelper.showBuyTestDrive(@screen, @screen)
+
+ showBuyNormalLessonBubble: () ->
+ console.log("OK showBuyNormalLessonBubble")
+ context.JK.HelpBubbleHelper.showBuyNormalLesson(@screen, @screen)
+
+
+
getInitialState: () ->
{
userId: null,
diff --git a/web/app/assets/javascripts/react-components/TeacherSetupIntroduction.js.jsx.coffee b/web/app/assets/javascripts/react-components/TeacherSetupIntroduction.js.jsx.coffee
index 79b9b8f7a..74ccc15f3 100644
--- a/web/app/assets/javascripts/react-components/TeacherSetupIntroduction.js.jsx.coffee
+++ b/web/app/assets/javascripts/react-components/TeacherSetupIntroduction.js.jsx.coffee
@@ -10,6 +10,14 @@ rest = window.JK.Rest()
Reflux.listenTo(TeacherStore, "onTeacherStateChanged")
]
+
+ myBeforeShow: () ->
+ setTimeout((() =>
+ $screen = @root.closest('.screen')
+ $header = $screen.find('h2.edit-teacher-header')
+ context.JK.HelpBubbleHelper.teacherProfile($header, $screen);
+ ), 2000)
+
screenName: () ->
"introduction"
diff --git a/web/app/assets/javascripts/react-components/TeacherSetupPricing.js.jsx.coffee b/web/app/assets/javascripts/react-components/TeacherSetupPricing.js.jsx.coffee
index 57ec7ebc6..5178559e5 100644
--- a/web/app/assets/javascripts/react-components/TeacherSetupPricing.js.jsx.coffee
+++ b/web/app/assets/javascripts/react-components/TeacherSetupPricing.js.jsx.coffee
@@ -135,7 +135,7 @@ rest = window.JK.Rest()
# prevent any action if the user has unselected teach test drive...
if !this.state.teaches_test_drive
@setState({teaches_test_drive: true})
- context.JK.Banner.showAlert('Test Drive Participation Required', "In order to participate in the JamClass online music lesson marketplace by JamKazam, you must be willing to teach at least 2 TestDrive classes per week, ideally more if you want to attract more new students.
TestDrive is the primary means by which JamKazam connects new students to teachers, so if you don't do this, the marketplace will really not help you.
If you feel that you have a compelling reason not to give TestDrive lessons, but still want to participate in our marketplace, then please send us an email at support@jamkazam.com to chat with us about it.")
+ context.JK.Banner.showAlert('Test Drive Participation Required', "In order to participate in the JamClass online music lesson marketplace by JamKazam, you must be willing to teach at least 10 TestDrive classes per week, ideally more if you want to attract more new students.
TestDrive is the primary means by which JamKazam connects new students to teachers, so if you don't do this, the marketplace will really not help you.
If you feel that you have a compelling reason not to give TestDrive lessons, but still want to participate in our marketplace, then please send us an email at support@jamkazam.com to chat with us about it.")
navTo = 'rejected'
else
@@ -317,10 +317,7 @@ rest = window.JK.Rest()
TestDrive lessons per week
- TestDrive is the primary marketing program JamKazam uses to drive new students through our marketplace to teachers.
- You will be paid $10 per 30-minute TestDrive lesson that you teach. Each time you teach a TestDrive lesson, it is with a student
- who has an interest in taking online music lessons through the JamClass service, so you have a solid chance to convert the TestDrive
- lesson into a long-term teacher-student relationship. learn more about TestDrive
+ TestDrive is the primary marketing program JamKazam uses to drive new students through our marketplace to teachers. You will be paid $10 per 30-minute TestDrive lesson that you teach. Teach more TestDrive lessons to acquire more students.
diff --git a/web/app/assets/javascripts/react-components/YearSelect.js.jsx.coffee b/web/app/assets/javascripts/react-components/YearSelect.js.jsx.coffee
index 9b543533e..b9f2ec61c 100644
--- a/web/app/assets/javascripts/react-components/YearSelect.js.jsx.coffee
+++ b/web/app/assets/javascripts/react-components/YearSelect.js.jsx.coffee
@@ -9,10 +9,16 @@ logger = context.JK.logger
options = []
now = new Date().getFullYear()
+ options.push ``
for yr in [now..1916]
options.push ``
- `