define("bundles/ondemand/components/FullscreenLayoutHandler",["require","exports","module","underscore","react-router","react-with-addons","bundles/phoenix/lib/waitForStores"],function(require,exports,module){"use strict";var s=Object.assign||function(s){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(s[t]=r[t])}return s},_=require("underscore"),r=require("react-router"),e=require("react-with-addons"),o=require("bundles/phoenix/lib/waitForStores"),a=r.RouteHandler,n=r.State,t=e.createClass({displayName:"FullscreenLayoutHandler",contextTypes:{router:e.PropTypes.object.isRequired},propTypes:{courseMaterials:e.PropTypes.object.isRequired,course:e.PropTypes.object.isRequired,courseProgress:e.PropTypes.object.isRequired,children:e.PropTypes.node},render:function render(){var t=this.props.courseMaterials,r=t.getItemMetadata(this.context.router.params.item_id);return e.createElement("div",{className:"rc-FullscreenLayoutHandler"},this.props.children&&e.cloneElement(this.props.children,s({},_(this.props).omit("children"),{itemMetadata:r,key:r.getId()})))}});module.exports=o(t,["CourseStore","ProgressStore"],function(e){var r=e.CourseStore,t=e.ProgressStore;return{courseMaterials:r.getMaterials(),course:r.getMetadata(),courseProgress:t.courseProgress}}),module.exports.BaseComp=t});
define("bundles/locking/components/LockedItem",["require","exports","module","q","react-with-addons","bundles/ondemand/utils/componentDataFetcher","bundles/phoenix/components/LockedByItem","pages/open-course/common/singletons/courseMaterials","css!./__styles__/LockedItem"],function(require,exports,module){"use strict";function _defaults(e,n){for(var a=Object.getOwnPropertyNames(n),t=0;t<a.length;t++){var o=a[t],r=Object.getOwnPropertyDescriptor(n,o);r&&r.configurable&&void 0===e[o]&&Object.defineProperty(e,o,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var t=function(){function defineProperties(r,o){for(var t=0;t<o.length;t++){var e=o[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,o){return t&&defineProperties(e.prototype,t),o&&defineProperties(e,o),e}}(),o=function get(a,s,u){var o=!0;e:for(;o;){var t=a,c=s,i=u;o=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,c);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;a=r,s=c,u=i,o=!0,e=r=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(i)}},r=require("q"),e=require("react-with-addons"),n=require("bundles/ondemand/utils/componentDataFetcher"),a=require("bundles/phoenix/components/LockedByItem"),c=require("pages/open-course/common/singletons/courseMaterials");require("css!./__styles__/LockedItem");var i=function(r){function LockedItem(){_classCallCheck(this,LockedItem),o(Object.getPrototypeOf(LockedItem.prototype),"constructor",this).apply(this,arguments)}return _inherits(LockedItem,r),t(LockedItem,[{key:"render",value:function render(){var t=this.props,o=t.itemMetadata,r=t.courseMaterials,n=r.getItemMetadata(o.get("lockableByItem"));return e.createElement("div",{className:"c-open-single-page c-locked-item"},e.createElement("div",{className:"bt3-row"},e.createElement("div",{className:"bt3-col-md-12"},e.createElement(a,{itemMetadata:o,previousItemMetadata:n}))))}}],[{key:"propTypes",value:{itemMetadata:e.PropTypes.object.isRequired,courseMaterials:e.PropTypes.object.isRequired},enumerable:!0}]),LockedItem}(e.Component),s=n(i,function(e,t){return r.all([c]).spread(function(e){return{courseMaterials:e}})});module.exports=s});
Beispiel #3
0
"use strict";define("bundles/locking/components/LockedItem",["require","exports","module","q","react-with-addons","bundles/ondemand/utils/componentDataFetcher","bundles/phoenix/components/LockedByItem","pages/open-course/common/singletons/courseMaterials","css!./__styles__/LockedItem"],function(require,exports,module){var t=require("q"),e=require("react-with-addons"),s=require("bundles/ondemand/utils/componentDataFetcher"),a=require("bundles/phoenix/components/LockedByItem"),o=require("pages/open-course/common/singletons/courseMaterials");require("css!./__styles__/LockedItem");var n=e.createClass({displayName:"LockedItem",propTypes:{itemMetadata:e.PropTypes.object.isRequired,courseMaterials:e.PropTypes.object.isRequired},render:function render(){var t=this.props,s=t.itemMetadata,o=t.courseMaterials,n=o.getItemMetadata(s.get("lockableByItem"));return e.createElement("div",{className:"c-open-single-page c-locked-item"},e.createElement("div",{className:"bt3-row"},e.createElement("div",{className:"bt3-col-md-12"},e.createElement(a,{itemMetadata:s,previousItemMetadata:n}))))}}),c=s(n,function(e,s){return t.all([o]).spread(function(e){return{courseMaterials:e}})});module.exports=c});
define("bundles/ondemand/components/facilitated/FacilitatorReachOutBox",["require","exports","module","react-with-addons","react-router","bundles/phoenix/components/ProfileImage","bundles/facilitated-cdp/models/Mentor","bundles/ondemand/utils/url","bundles/discussions/utils/discussionsUrl","bundles/iconfont/Icon","js/app/config","js/lib/path","js/components/Imgix","i18n!nls/ondemand","vendor/cnpm/fluxible.v0-4/addons/connectToStores","css!./__styles__/FacilitatorReachOutBox"],function(require,exports,module){"use strict";function _defaults(e,r){for(var a=Object.getOwnPropertyNames(r),t=0;t<a.length;t++){var o=a[t],n=Object.getOwnPropertyDescriptor(r,o);n&&n.configurable&&void 0===e[o]&&Object.defineProperty(e,o,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var f=function(){function defineProperties(n,o){for(var t=0;t<o.length;t++){var e=o[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,o){return t&&defineProperties(e.prototype,t),o&&defineProperties(e,o),e}}(),h=function get(a,c,s){var o=!0;e:for(;o;){var t=a,i=c,l=s;o=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;a=n,c=i,s=l,o=!0,e=n=void 0;continue e}if("value"in e)return e.value;var r=e.get;if(void 0===r)return void 0;return r.call(l)}},e=require("react-with-addons"),i=require("react-router"),n=i.Link,l=require("bundles/phoenix/components/ProfileImage"),c=require("bundles/facilitated-cdp/models/Mentor"),s=require("bundles/ondemand/utils/url"),a=s.getCourseProfileUrl,u=require("bundles/discussions/utils/discussionsUrl"),p=u.getGroupForumLink,m=require("bundles/iconfont/Icon"),d=require("js/app/config"),r=require("js/lib/path"),b=require("js/components/Imgix"),t=require("i18n!nls/ondemand"),g=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores");require("css!./__styles__/FacilitatorReachOutBox");var v=function FacilitatorProfileBox(o){var t=o.profile;return e.createElement(n,{to:a(t.externalId),className:"nostyle"},e.createElement("section",{className:"rc-FacilitatorProfileBox vertical-box align-items-absolute-center card-one-clicker comfy"},e.createElement(l,{fullName:t.fullName,profileImageUrl:t.photoUrl,width:54,height:54}),e.createElement("h1",{className:"headline-1-text"},t.fullName),t.title&&e.createElement("span",{className:"caption-text color-secondary-text"},t.title)))},o=function HelpBoxSection(t){var n=t.iconFilename,a=t.title,o=t.description,i=r.join(d.url.assets,"bundles/ondemand/assets/images");return e.createElement("section",{className:"rc-HelpBoxSection card-one-clicker horizontal-box align-items-vertical-center comfy"},e.createElement("div",{className:"flex-1"},e.createElement("div",{className:"horizontal-box align-items-vertical-center help-box-title"},e.createElement(b,{src:r.join(i,n),height:20,alt:"",className:"title-icon"}),e.createElement("h3",{className:"body-2-text"},a)),o&&e.createElement("p",{className:"caption-text help-box-description"},o)),e.createElement(m,{name:"chevron-right",className:"color-secondary-text chevron"}))},y=function(r){function FacilitatorReachOutBox(){_classCallCheck(this,FacilitatorReachOutBox),h(Object.getPrototypeOf(FacilitatorReachOutBox.prototype),"constructor",this).apply(this,arguments)}return _inherits(FacilitatorReachOutBox,r),f(FacilitatorReachOutBox,[{key:"render",value:function render(){return e.createElement("div",{className:"rc-FacilitatorReachOutBox od-section"},e.createElement(v,{profile:this.props.facilitatorProfile}),e.createElement(n,{to:p(this.props.groupId),className:"nostyle"},e.createElement(o,{iconFilename:"question_bubble.png",title:t("Need help?"),description:t("Post in your group forum for the fastest response from your mentor and classmates.")})),e.createElement("a",{href:"https://learner.coursera.help/",target:"_blank",className:"nostyle"},e.createElement(o,{iconFilename:"support.png",title:t("Learner Help Center"),description:t("For platform issues, visit the Learner Help Center or contact our support team.")})),e.createElement("a",{href:"mailto:"+this.props.facilitatorProfile.email,target:"_blank",className:"nostyle"},e.createElement(o,{iconFilename:"email.png",title:t("Email your mentor")})))}}],[{key:"propTypes",value:{facilitatorProfile:e.PropTypes.instanceOf(c),groupId:e.PropTypes.string},enumerable:!0}]),FacilitatorReachOutBox}(e.Component);module.exports=g(y,["FacilitatedStore"],function(t){var e=t.FacilitatedStore;return{facilitatorProfile:e.getEnrolledGroupFacilitator(),groupId:e.getEnrolledGroupId()}})});
define("bundles/content-feedback/components/rating-dashboard/CourseRatingsDashboardContent",["require","exports","module","react-with-addons","moment","bundles/teach-course/components/CountHeader","./CourseReviewList","./CourseRatingValueSelect","./CourseLearnerAudienceSelect","./AverageCourseRating","./CourseRatingBreakdown","bundles/content-feedback/actions/CourseRatingActions","js/lib/coursera.react-intl","i18n!nls/content-feedback","vendor/cnpm/fluxible.v0-4/addons/connectToStores","bundles/content-feedback/models/RatingCollection","bundles/content-feedback/models/CourseRatingStats","bundles/teach-course/components/AppMessage","css!./__styles__/CourseRatingsDashboardContent"],function(require,exports,module){"use strict";function _defaults(e,o){for(var a=Object.getOwnPropertyNames(o),t=0;t<a.length;t++){var n=a[t],r=Object.getOwnPropertyDescriptor(o,n);r&&r.configurable&&void 0===e[n]&&Object.defineProperty(e,n,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var C=function(){function defineProperties(r,n){for(var t=0;t<n.length;t++){var e=n[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,n){return t&&defineProperties(e.prototype,t),n&&defineProperties(e,n),e}}(),f=function get(a,c,u){var n=!0;e:for(;n;){var t=a,s=c,i=u;n=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,s);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;a=r,c=s,u=i,n=!0,e=r=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(i)}},e=require("react-with-addons"),h=require("moment"),c=require("bundles/teach-course/components/CountHeader"),m=require("./CourseReviewList"),u=require("./CourseRatingValueSelect"),l=require("./CourseLearnerAudienceSelect"),d=require("./AverageCourseRating"),p=require("./CourseRatingBreakdown"),n=require("bundles/content-feedback/actions/CourseRatingActions"),g=n.getCourseRatingStats,v=n.filterCourseRatings,s=n.getCourseReviews,i=n.filterCourseReviews,o=require("js/lib/coursera.react-intl"),b=o.FormattedMessage,r=o.FormattedHTMLMessage,t=require("i18n!nls/content-feedback"),R=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores"),w=require("bundles/content-feedback/models/RatingCollection"),y=require("bundles/content-feedback/models/CourseRatingStats"),A=require("bundles/teach-course/components/AppMessage");require("css!./__styles__/CourseRatingsDashboardContent");var a=function(n){function CourseRatingsDashboardContent(){var e=this;_classCallCheck(this,CourseRatingsDashboardContent),f(Object.getPrototypeOf(CourseRatingsDashboardContent.prototype),"constructor",this).apply(this,arguments),this.handleInfiniteScroll=function(){var t=e.props,n=t.courseId,r=t.reviewCollection,o=t.ratingValue,a=t.learnerAudience;e.context.executeAction(s,{courseId:n,reviewCollection:r,ratingValue:o,learnerAudience:a})},this.handleRatingValueChange=function(n){var t=e.props,r=t.courseId,o=t.learnerAudience;e.context.executeAction(i,{courseId:r,ratingValue:n,learnerAudience:o})},this.handleLearnerAudienceChange=function(n){var t=e.props,r=t.courseId,o=t.ratingValue;e.context.executeAction(v,{courseId:r,ratingValue:o,learnerAudience:n})}}return _inherits(CourseRatingsDashboardContent,n),C(CourseRatingsDashboardContent,[{key:"componentDidMount",value:function componentDidMount(){var e=this.props,t=e.courseId,r=e.reviewCollection,o=e.ratingValue,n=e.learnerAudience;this.context.executeAction(s,{courseId:t,reviewCollection:r,ratingValue:o,learnerAudience:n}),this.context.executeAction(g,{courseId:t,learnerAudience:n})}},{key:"render",value:function render(){var n=this.props.reviewCollection.totalCount,o=h().format("h:mm a, MMMM Do, YYYY");return e.createElement("div",{className:"rc-CourseRatingsDashboardContent"},e.createElement("h1",{className:"c-course-ratings-heading"},t("Ratings")),this.props.showTeachDescription&&e.createElement("div",{className:"c-course-ratings-description"},e.createElement(r,{message:t('Learners can rate courses at any point as they progress\n                but must be enrolled to rate a course. <a target="_blank" href={url}>Learn more</a>'),url:"https://partner.coursera.help/hc/en-us/articles/205619429-Course-and-Specialization-Dashboards"}),e.createElement("div",{className:"c-course-ratings-updated-at"},e.createElement(r,{message:t("Last updated <strong>{timestamp}</strong>. Updated real time."),timestamp:o}))),e.createElement("div",{className:"c-course-learner-audience-container"},e.createElement(l,{learnerAudience:this.props.learnerAudience,onChange:this.handleLearnerAudienceChange})),this.props.courseRatingStats&&e.createElement("div",{className:"c-course-rating-stats"},e.createElement(d,{courseRatingStats:this.props.courseRatingStats}),this.props.showCourseRatingBreakdown&&e.createElement(p,{courseRatingStats:this.props.courseRatingStats})),e.createElement(u,{ratingValue:this.props.ratingValue,onChange:this.handleRatingValueChange}),e.createElement("div",{className:"c-course-review-count-container"},this.props.isLoadingReviews&&t("Loading Reviews..."),!this.props.isLoadingReviews&&e.createElement(c,{value:n,message:e.createElement(b,{message:t("{reviewCount, plural, =0 {Reviews} one {Review} other {Reviews}}"),reviewCount:n})}),!this.props.isLoadingReviews&&this.props.showTeachDescription&&e.createElement("div",{className:"abuse-container"},e.createElement(r,{message:t("To flag an abusive review for removal, please contact <a href={link}>{email}</a>"),link:"mailto:partner-support@coursera.org",email:"*****@*****.**"}))),e.createElement("div",{className:"c-course-reviews"},!!n&&e.createElement(m,{reviewCollection:this.props.reviewCollection,onInfiniteScroll:this.handleInfiniteScroll}),!this.props.isLoadingReviews&&!n&&e.createElement(A,{heading:t("There are no reviews to display")})))}}],[{key:"propTypes",value:{courseId:e.PropTypes.string.isRequired,isLoadingReviews:e.PropTypes.bool.isRequired,ratingValue:e.PropTypes.object.isRequired,learnerAudience:e.PropTypes.object.isRequired,courseRatingStats:e.PropTypes.instanceOf(y),reviewCollection:e.PropTypes.instanceOf(w).isRequired,showCourseRatingBreakdown:e.PropTypes.bool,showTeachDescription:e.PropTypes.bool},enumerable:!0},{key:"contextTypes",value:{executeAction:e.PropTypes.func.isRequired},enumerable:!0},{key:"defaultProps",value:{showCourseRatingBreakdown:!0,showTeachDescription:!0},enumerable:!0}]),CourseRatingsDashboardContent}(e.Component);module.exports=R(a,["CourseRatingStore"],function(t,n){var e=t.CourseRatingStore;return{courseRatingStats:e.getCourseRatingStats(),isLoadingReviews:e.getIsLoadingReviews(),reviewCollection:e.getReviewCollection(),ratingValue:e.getRatingValue(),learnerAudience:e.getLearnerAudience()}}),module.exports.BaseComp=a});
define("bundles/group-events/components/EventCalendarDateTime",["require","exports","module","i18n!nls/group-events","react-with-addons","bundles/group-events/components/LiveEventDot"],function(require,exports,module){"use strict";var t=require("i18n!nls/group-events"),e=require("react-with-addons"),n=require("bundles/group-events/components/LiveEventDot"),r=function EventCalendarDateTime(a){var r=a.event;if(r.isLive())return e.createElement("h3",{className:"rc-EventCalendarDateTime headline-2-text horizontal-box align-items-vertical-center"},e.createElement(n,null),t("Live now"));return e.createElement("h3",{className:"rc-EventCalendarDateTime headline-2-text"},r.getFormattedDate())};module.exports=r});
define("bundles/content-feedback/components/FeedbackEditor",["require","exports","module","react-with-addons","bundles/phoenix/components/CMLEditor","bundles/phoenix/propTypes/cml","css!./__styles__/FeedbackEditor"],function(require,exports,module){"use strict";function _defaults(e,n){for(var i=Object.getOwnPropertyNames(n),t=0;t<i.length;t++){var r=i[t],o=Object.getOwnPropertyDescriptor(n,r);o&&o.configurable&&void 0===e[r]&&Object.defineProperty(e,r,o)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var t=function(){function defineProperties(o,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),r=function get(i,p,u){var r=!0;e:for(;r;){var t=i,c=p,s=u;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,c);if(void 0===e){var o=Object.getPrototypeOf(t);if(null===o)return void 0;i=o,p=c,u=s,r=!0,e=o=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(s)}},e=require("react-with-addons"),o=require("bundles/phoenix/components/CMLEditor"),n=require("bundles/phoenix/propTypes/cml");require("css!./__styles__/FeedbackEditor");var i=function(i){function FeedbackEditor(){_classCallCheck(this,FeedbackEditor),r(Object.getPrototypeOf(FeedbackEditor.prototype),"constructor",this).apply(this,arguments)}return _inherits(FeedbackEditor,i),t(FeedbackEditor,[{key:"render",value:function render(){return e.createElement("div",{className:"rc-FeedbackEditor"},e.createElement(o,{blocks:[],changeDelay:0,cml:this.props.cml,onChange:this.props.onChange,isFocused:this.props.isFocused,placeholder:this.props.placeholder}))}}],[{key:"propTypes",value:{cml:n.isRequired,placeholder:e.PropTypes.string.isRequired,onChange:e.PropTypes.func.isRequired,isFocused:e.PropTypes.bool.isRequired},enumerable:!0}]),FeedbackEditor}(e.Component);module.exports=i});
define("bundles/ondemand/components/menu/Menu",["require","exports","module","classnames","react-router","react-with-addons","js/app/retracked","bundles/ondemand/actions/ViewActionCreators","bundles/ondemand/components/CourseHeader","bundles/ondemand/components/menu/FullMenuItems","bundles/ondemand/components/menu/PreviewMenuItems","bundles/ondemand/constants/Constants","bundles/ondemand/stores/MenuStore","bundles/ondemand/utils/isPreviewMode","bundles/ondemand/utils/lastSeenWeek","bundles/ondemand/stores/SessionStore","bundles/ondemand/utils/url","bundles/phoenix/utils/matchMedia","pages/open-course/common/models/course","pages/open-course/common/constants","bundles/discussions/utils/discussionsUrl","bundles/phoenix/lib/waitForStores","css!./__styles__/Menu"],function(require,exports,module){"use strict";var n=require("classnames"),h=require("react-router"),U=h.State,e=require("react-with-addons"),c=require("js/app/retracked"),M=require("bundles/ondemand/actions/ViewActionCreators"),r=require("bundles/ondemand/components/CourseHeader"),u=require("bundles/ondemand/components/menu/FullMenuItems"),d=require("bundles/ondemand/components/menu/PreviewMenuItems"),a=require("bundles/ondemand/constants/Constants"),s=a.mainNavItems,o=require("bundles/ondemand/stores/MenuStore"),m=require("bundles/ondemand/utils/isPreviewMode"),p=require("bundles/ondemand/utils/lastSeenWeek"),k=p.getLastSeenWeek,b=require("bundles/ondemand/stores/SessionStore"),S=require("bundles/ondemand/utils/url"),i=S.getWeekUrl,g=require("bundles/phoenix/utils/matchMedia"),C=g.isAboveHeight,v=require("pages/open-course/common/models/course"),f=require("pages/open-course/common/constants"),E=f.courseSlug,P=require("bundles/discussions/utils/discussionsUrl"),y=P.getCourseDiscussionsUrl,I=require("bundles/phoenix/lib/waitForStores"),w=650;require("css!./__styles__/Menu");var t=e.createClass({displayName:"Menu",contextTypes:{router:e.PropTypes.object.isRequired},propTypes:{onUpdate:e.PropTypes.func.isRequired,course:e.PropTypes.instanceOf(v).isRequired,currentWeek:e.PropTypes.number.isRequired,isCourseComplete:e.PropTypes.bool.isRequired,passedWithVerification:e.PropTypes.bool.isRequired,isPreviewMode:e.PropTypes.bool.isRequired},statics:{getStateFromStores:function getStateFromStores(){return{showingMobileMenu:o.showingMobileMenu()}}},getInitialState:function getInitialState(){return t.getStateFromStores()},componentWillMount:function componentWillMount(){this.setSelectedNavItem()},componentDidMount:function componentDidMount(){o.addChangeListener(this.handleChange),this.props.onUpdate(),document.body.style.overflow="hidden"},componentWillReceiveProps:function componentWillReceiveProps(e){this.handleChange(e),this.setSelectedNavItem()},componentDidUpdate:function componentDidUpdate(){this.props.onUpdate()},componentWillUnmount:function componentWillUnmount(){o.removeChangeListener(this.handleChange),document.body.style.overflow="visible"},handleChange:function handleChange(){this.setState(t.getStateFromStores())},getScheduleUrl:function getScheduleUrl(){var e=k();if(e)return i(e);var s=this.props.currentWeek||1;return i(s)},setSelectedNavItem:function setSelectedNavItem(){var n=this.context.router.routes,t=n.length-1,e=n[t].name;"welcome"===e?e=s.HOME:"assignments"===e?e=s.ASSIGNMENTS:"week"===e||"ty"===e||"module"===e?e=s.COURSE:this.context.router.isActive({pathname:y()})?e=s.DISCUSSIONS:"info"===e||"CDP"===e?e=s.INFO:e&&e.indexOf("resources")>=0&&(e=s.REFERENCES),this.setState({selectedItem:e})},hideMobileMenu:function hideMobileMenu(){this.state.showingMobileMenu&&M.toggleMobileMenu()},render:function render(){var s=this.props.course,o=n("rc-Menu","align-self-stretch","theme-dark",{"showing-mobile-menu":this.state.showingMobileMenu}),i=n("menu","od-dark","od-menu-bar","theme-dark",{"vertical-box":C(w)}),a=n("mobile-menu-overlay","bt3-visible-xs",{"hide-mobile-menu":!this.state.showingMobileMenu}),t={hideMobileMenu:this.hideMobileMenu,selectedItem:this.state.selectedItem,scheduleUrl:this.getScheduleUrl(),courseId:s.get("id")};return e.createElement("div",{className:o},e.createElement("div",{className:i,ref:"menu"},!!s&&s.has("name")&&s.has("universities")&&e.createElement(r,{thumbnail:s.getFirstPartnerSquareLogo(),universities:s.get("universities")}),this.props.isPreviewMode?e.createElement(d,t):e.createElement(u,t)),e.createElement("div",{className:a,onClick:this.hideMobileMenu}))}}),l=c.createTrackedContainer(function(){return{namespace:{page:"menu"}}})(t);module.exports=I(l,["CourseScheduleStore","CourseStore","CourseViewGradeStore","CourseMembershipStore"],function(e,i){var s=e.CourseScheduleStore,n=e.CourseStore,t=e.CourseViewGradeStore,o=e.CourseMembershipStore;return{course:n.getMetadata(),currentWeek:s.getCurrentWeek(),isCourseComplete:s.isCourseComplete(),passedWithVerification:t.hasPassedCourseWithVerification(),isPreviewMode:m(b.isPreviewMode(),o.isEnrolled())}})});
define("bundles/ondemand/components/HomePage",["require","exports","module","react-with-addons","js/app/retracked","bundles/account-settings/components/PartnerEmailSubscriptionBanner","bundles/group-events/components/OfficeHoursSidebar","bundles/ondemand/components/CourseNameHeader","bundles/ondemand/components/CourseSettings","bundles/ondemand/components/InstructorMessage","bundles/ondemand/components/ThankYouMessage","bundles/ondemand/components/VCModule","bundles/ondemand/components/endOfCourse/components/EndOfCourseHeader","bundles/ondemand/components/endOfCourse/components/KeepLearning","bundles/ondemand/components/facilitated/FacilitatedGroupAnnouncements","bundles/ondemand/components/facilitated/FacilitatorReachOutBox","bundles/ondemand/components/notifications/HomePageNotifications","bundles/ondemand/components/reportCard/CurrentWeekCard","bundles/ondemand/components/reportCard/ReportCard","bundles/ondemand/constants/InstructorMessageTypes","bundles/page/lib/metatagsAddressBook","bundles/ondemand/components/item/EndOfCourseNpsModal","bundles/phoenix/lib/waitForStores","bundles/ondemand/components/gle/GuidedCourseHome","bundles/ondemand/utils/gle/inGleHomeExperiment","i18n!nls/ondemand","pages/open-course/common/models/course","css!./__styles__/HomePage"],function(require,exports,module){"use strict";function _defaults(e,r){for(var s=Object.getOwnPropertyNames(r),n=0;n<s.length;n++){var t=s[n],o=Object.getOwnPropertyDescriptor(r,t);o&&o.configurable&&void 0===e[t]&&Object.defineProperty(e,t,o)}return e}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _inherits(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(n,e):_defaults(n,e))}var i=function(){function defineProperties(o,t){for(var n=0;n<t.length;n++){var e=t[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,n,t){return n&&defineProperties(e.prototype,n),t&&defineProperties(e,t),e}}(),p=function get(s,c,d){var t=!0;e:for(;t;){var n=s,a=c,l=d;t=!1,null===n&&(n=Function.prototype);var e=Object.getOwnPropertyDescriptor(n,a);if(void 0===e){var o=Object.getPrototypeOf(n);if(null===o)return void 0;s=o,c=a,d=l,t=!0,e=o=void 0;continue e}if("value"in e)return e.value;var r=e.get;if(void 0===r)return void 0;return r.call(l)}},e=require("react-with-addons"),E=require("js/app/retracked"),v=require("bundles/account-settings/components/PartnerEmailSubscriptionBanner"),H=require("bundles/group-events/components/OfficeHoursSidebar"),t=require("bundles/ondemand/components/CourseNameHeader"),o=require("bundles/ondemand/components/CourseSettings"),u=require("bundles/ondemand/components/InstructorMessage"),m=require("bundles/ondemand/components/ThankYouMessage"),r=require("bundles/ondemand/components/VCModule"),s=require("bundles/ondemand/components/endOfCourse/components/EndOfCourseHeader"),b=require("bundles/ondemand/components/endOfCourse/components/KeepLearning"),f=require("bundles/ondemand/components/facilitated/FacilitatedGroupAnnouncements"),d=require("bundles/ondemand/components/facilitated/FacilitatorReachOutBox"),a=require("bundles/ondemand/components/notifications/HomePageNotifications"),g=require("bundles/ondemand/components/reportCard/CurrentWeekCard"),l=require("bundles/ondemand/components/reportCard/ReportCard"),C=require("bundles/ondemand/constants/InstructorMessageTypes"),h=require("bundles/page/lib/metatagsAddressBook"),y=require("bundles/ondemand/components/item/EndOfCourseNpsModal"),O=require("bundles/phoenix/lib/waitForStores"),P=require("bundles/ondemand/components/gle/GuidedCourseHome"),N=require("bundles/ondemand/utils/gle/inGleHomeExperiment"),n=require("i18n!nls/ondemand"),w=require("pages/open-course/common/models/course");require("css!./__styles__/HomePage");var c=function HomePartnerEmailSubscriptionBanners(n){var t=n.course,o=n.isEnrolled;if(!o)return e.createElement("noscript",null);return e.createElement("div",{className:"item"},t.get("universities").map(function(n,o){return e.createElement(v,{partnerId:n.get("id"),partnerName:n.get("name"),courseId:t.get("id"),key:o})}))},S=function EndOfCourseView(){return e.createElement("div",{className:"rc-HomePage od-section"},e.createElement(s,{showPartner:!1}),e.createElement("div",{className:"contents"},e.createElement(m,null),e.createElement(b,null),e.createElement("div",{className:"horizontal-box od-section"},e.createElement("div",{className:"flex-1"},e.createElement(l,null))),e.createElement(o,null),e.createElement(r,null)),e.createElement(y,null))},M=function WelcomeView(n){var s=n.course,d=n.isEnrolled;return e.createElement("div",{className:"rc-HomePage od-section"},e.createElement("div",{className:"contents"},e.createElement(t,null),e.createElement(c,{course:s,isEnrolled:d}),e.createElement(a,null),e.createElement(u,{type:C.WELCOME}),e.createElement(l,null),e.createElement(o,null),e.createElement(r,null)))},k=function FacilitatedHomeView(o){var l=o.course,r=o.passedCourse,i=o.isEnrolled;return e.createElement("div",{className:"rc-HomePage rc-FacilitatedHomeView od-section"},r&&e.createElement(s,{showPartner:!1}),e.createElement("div",{className:"contents"},!r&&e.createElement("div",{className:"header-section"},e.createElement(t,null),e.createElement(c,{course:l,isEnrolled:i}),e.createElement(a,null),e.createElement(g,null)),e.createElement("div",{className:"column-container horizontal-box wrap"},e.createElement("section",{className:"main-column flex-1"},e.createElement("h3",{className:"tab-headline"},e.createElement("span",null,n("Announcements"))),e.createElement(f,null)),e.createElement("div",{className:"right-rail"},e.createElement("section",{className:"right-rail-section"},e.createElement("h3",{className:"tab-headline"},e.createElement("span",null,n("Your mentor"))),e.createElement(d,null)),e.createElement("section",{className:"right-rail-section"},e.createElement("h3",{className:"tab-headline"},e.createElement("span",null,n("Upcoming Office Hours"))),e.createElement(H,null))))))},x=function(n){function HomePage(){_classCallCheck(this,HomePage),p(Object.getPrototypeOf(HomePage.prototype),"constructor",this).apply(this,arguments)}return _inherits(HomePage,n),i(HomePage,[{key:"componentDidMount",value:function componentDidMount(){this.setMetatags()}},{key:"setMetatags",value:function setMetatags(){h.setMetatags({pageName:"ondemand-home",context:{courseName:this.props.course.get("name")},options:{imageHref:this.props.course.get("promoPhoto")}})}},{key:"render",value:function render(){var n=this.props,t=n.course,o=n.passedCourse,s=n.inFacilitatedGroup,r=n.isEnrolled;if(N())return e.createElement(P,null);return s?e.createElement(k,{course:t,passedCourse:o,isEnrolled:r}):o?e.createElement(S,null):e.createElement(M,{course:t,isEnrolled:r})}}],[{key:"propTypes",value:{course:e.PropTypes.instanceOf(w).isRequired,passedCourse:e.PropTypes.bool.isRequired,inFacilitatedGroup:e.PropTypes.bool.isRequired,isEnrolled:e.PropTypes.bool.isRequired},enumerable:!0}]),HomePage}(e.Component),F=E.createTrackedContainer(function(e){return{namespace:{page:"home_page"},course_id:e.course.id}})(x);module.exports=O(F,["CourseStore","CourseViewGradeStore","ProgressStore","FacilitatedStore","CourseMembershipStore"],function(e,l){var t=e.CourseStore,n=e.CourseViewGradeStore,o=e.ProgressStore,r=e.FacilitatedStore,s=e.CourseMembershipStore,a=n.isPassable()?!!n.hasPassedCourseUnverified():100===o.getOverallProgressPercent();return{course:t.getMetadata(),passedCourse:a,inFacilitatedGroup:r.inFacilitatedGroup(),isEnrolled:s.isEnrolled()}})});
define("bundles/ondemand/components/menu/FullMenuItems",["require","exports","module","q","react-with-addons","underscore","naptime","js/lib/mapProps","bundles/phoenix/template/models/userIdentity","bundles/course-references/components/CourseReferencesLink","bundles/course-references/components/CourseReferencesList","bundles/group-roster/components/GroupClassmatesPage","bundles/ondemand/components/CourseInfoPage","bundles/ondemand/components/menu/AdminButton","bundles/ondemand/components/menu/ForumSetList","bundles/ondemand/components/menu/MainNavItem","bundles/ondemand/components/menu/ModuleList","bundles/ondemand/utils/gle/inGleHomeExperiment","bundles/ondemand/stores/SessionStore","bundles/groups/models/Group","bundles/ondemand/constants/Constants","bundles/ondemand/utils/socialExperimentUtils","bundles/ondemand/utils/url","bundles/naptimejs/resources/onDemandPreviewingStates.v1","bundles/discussions/utils/ViewContextLoader","bundles/discussions/viewModels/viewContext","js/lib/getPropsFromPromise","js/lib/waitFor","pages/open-course/common/promises/courseAuthorization","bundles/naptimejs/resources/privilegedAuths.v1","i18n!nls/ondemand","vendor/cnpm/fluxible.v0-4/addons/connectToStores"],function(require,exports,module){"use strict";function _defaults(e,o){for(var r=Object.getOwnPropertyNames(o),t=0;t<r.length;t++){var s=r[t],n=Object.getOwnPropertyDescriptor(o,s);n&&n.configurable&&void 0===e[s]&&Object.defineProperty(e,s,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var b=Object.assign||function(n){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&(n[s]=t[s])}return n},S=function(){function defineProperties(n,s){for(var t=0;t<s.length;t++){var e=s[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,s){return t&&defineProperties(e.prototype,t),s&&defineProperties(e,s),e}}(),O=function get(r,a,u){var s=!0;e:for(;s;){var t=r,i=a,l=u;s=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;r=n,a=i,u=l,s=!0,e=n=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(l)}},w=require("q"),e=require("react-with-addons"),_=require("underscore"),a=require("naptime"),u=require("js/lib/mapProps"),i=require("bundles/phoenix/template/models/userIdentity"),p=require("bundles/course-references/components/CourseReferencesLink"),m=require("bundles/course-references/components/CourseReferencesList"),d=require("bundles/group-roster/components/GroupClassmatesPage"),c=require("bundles/ondemand/components/CourseInfoPage"),v=require("bundles/ondemand/components/menu/AdminButton"),h=require("bundles/ondemand/components/menu/ForumSetList"),n=require("bundles/ondemand/components/menu/MainNavItem"),f=require("bundles/ondemand/components/menu/ModuleList"),I=require("bundles/ondemand/utils/gle/inGleHomeExperiment"),g=require("bundles/ondemand/stores/SessionStore"),H=require("bundles/groups/models/Group"),E=require("bundles/ondemand/constants/Constants"),t=E.mainNavItems,C=require("bundles/ondemand/utils/socialExperimentUtils"),y=C.isForumsBlacklisted,o=require("bundles/ondemand/utils/url"),N=o.getDiscussionsUrl,P=o.getHomeUrl,M=o.getAssignmentsUrl,l=o.getOfficeHoursUrl,G=o.getCourseManagerUrl,R=require("bundles/naptimejs/resources/onDemandPreviewingStates.v1"),F=require("bundles/discussions/utils/ViewContextLoader"),T=require("bundles/discussions/viewModels/viewContext"),j=require("js/lib/getPropsFromPromise"),x=require("js/lib/waitFor"),U=require("pages/open-course/common/promises/courseAuthorization"),A=require("bundles/naptimejs/resources/privilegedAuths.v1"),s=require("i18n!nls/ondemand"),k=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores"),L=c.getUrl,r=function(o){function FullMenuItems(){_classCallCheck(this,FullMenuItems),O(Object.getPrototypeOf(FullMenuItems.prototype),"constructor",this).apply(this,arguments),this.state={canTeach:!1}}return _inherits(FullMenuItems,o),S(FullMenuItems,[{key:"componentWillMount",value:function componentWillMount(){var e=this;U.then(function(t){e.setState({canTeach:t.canTeach})}).done()}},{key:"render",value:function render(){var i=this.props,o=i.groupContext,r=i.eventGroup,u=i.previewState,c=u&&!!u.previewBranchId,S=e.createElement(n,{name:t.HOME,title:s("Course Home"),link:P(),selected:this.props.selectedItem===t.HOME,isItemNav:this.props.isItemNav}),x=e.createElement(n,{name:t.ASSIGNMENTS,title:s("Assignments"),link:M(),selected:this.props.selectedItem===t.ASSIGNMENTS,isItemNav:this.props.isItemNav}),b=!y(),g=e.createElement(n,{name:t.DISCUSSIONS,title:s("Discussions"),link:o?o.get("discussionsLink"):N(),selected:this.props.selectedItem===t.DISCUSSIONS,isItemNav:this.props.isItemNav,locked:c}),C=e.createElement(n,{name:t.OFFICE_HOURS,title:s("Office Hours"),link:l(),selected:this.props.selectedItem===t.OFFICE_HOURS,isItemNav:this.props.isItemNav}),O=e.createElement(n,{name:t.OFFICE_HOURS,title:s("Live Events"),link:l(),selected:this.props.selectedItem===t.OFFICE_HOURS,isItemNav:this.props.isItemNav}),w=e.createElement(n,{name:t.COURSE,title:s("Course Content"),link:this.props.scheduleUrl,selected:this.props.selectedItem===t.COURSE,isItemNav:this.props.isItemNav}),R=e.createElement(n,{name:t.CLASSMATES,title:s("Classmates"),link:d.getUrl(),selected:this.props.selectedItem===t.CLASSMATES,isItemNav:this.props.isItemNav,locked:c}),F=e.createElement(n,{name:t.INFO,title:s("Course Info"),link:L(),selected:this.props.selectedItem===t.INFO,isItemNav:this.props.isItemNav}),T=e.createElement(n,{name:t.COURSE_MANAGER,title:s("Course Manager"),link:G(),selected:this.props.selectedItem===t.COURSE_MANAGER,isItemNav:this.props.isItemNav,subtitle:s("Staff & Mentors Only")}),j=!_(this.props.rosterGroups).isEmpty()||this.state.canTeach,a=I(),E=!this.props.isItemNav&&(this.props.selectedItem===t.COURSE||a&&this.props.selectedItem===t.HOME);return e.createElement("ul",{className:"rc-FullMenuItems c-main-menu flex-1 vertical-box nostyle",onClick:this.props.hideMobileMenu},!this.props.isItemNav&&e.createElement(v,null),e.createElement("li",null,S),!a&&e.createElement("li",null,w),E&&e.createElement(f,null),!a&&this.props.hasGradableItems&&e.createElement("li",null,x),b&&e.createElement("li",null,g),b&&o&&!this.props.isItemNav&&this.props.selectedItem===t.DISCUSSIONS&&e.createElement(h,{groupContext:o}),r&&r.isFacilitatedGroup()&&e.createElement("li",null,C),r&&!r.isFacilitatedGroup()&&e.createElement("li",null,O),j&&e.createElement("li",null,R),e.createElement("li",null,e.createElement(p,{isSelected:this.props.selectedItem===t.REFERENCES,isItemNav:this.props.isItemNav})),!this.props.isItemNav&&this.props.selectedItem===t.REFERENCES&&e.createElement(m,null),e.createElement("li",null,F),this.props.showCourseManager&&e.createElement("li",null,T))}}],[{key:"propTypes",value:{hideMobileMenu:e.PropTypes.func.isRequired,scheduleUrl:e.PropTypes.string.isRequired,hasGradableItems:e.PropTypes.bool.isRequired,selectedItem:e.PropTypes.string,isItemNav:e.PropTypes.bool,rosterGroups:e.PropTypes.array,groupContext:e.PropTypes.instanceOf(T),eventGroup:e.PropTypes.instanceOf(H),previewState:e.PropTypes.object,isEnrolled:e.PropTypes.bool,showCourseManager:e.PropTypes.bool},enumerable:!0},{key:"defaultProps",value:{isItemNav:!1,showEvents:!1},enumerable:!0}]),FullMenuItems}(e.Component);module.exports=_.compose(k(["CourseStore","FacilitatedStore","GroupEntitlementStore","CourseMembershipStore"],function(e,r){var s=e.CourseStore,o=e.FacilitatedStore,t=e.GroupEntitlementStore,n=e.CourseMembershipStore;return{hasLoaded:s.hasLoaded()&&o.hasLoaded()&&t.hasGroupsLoaded(),hasGradableItems:s.hasGradableItems(),rosterGroups:t.getMyGroupsWithRosterEnabled(),eventGroups:t.getMyGroupsWithEventsEnabled(),forumGroups:t.getMyGroupsWithForumsEnabled(),isEnrolled:g.isEnrolled(),canPreviewBranches:n.hasTeachingRole()||i.get("is_superuser"),hasModerationRole:n.hasModerationRole(),hasPeerReviewItems:s.getMaterials().getPeerReviewItemMetadatas().length>0}}),x(function(e){var t=e.hasLoaded;return t}),j(function(e){var t=e.eventGroups,s=e.forumGroups,n=s.length>0?s[0].id:null,o=t.length>0?t[0]:null,r=n?F.loadGroupContext(n):w(null);return r.then(function(e){return{groupContext:e,eventGroup:o}})}),a.createContainer(function(e){var t=e.courseId,s=e.canPreviewBranches,n=[i.get("id"),t].join("~");return{previewState:s&&R.get(n,{required:!1,fields:["previewBranchId"]}),privilegedAuths:A.finder("me",{fields:["outsourcingPermissions"],required:!1})}}),u(function(e){return b({},e,{showCourseManager:e.hasPeerReviewItems&&(e.hasModerationRole||e.privilegedAuths&&e.privilegedAuths[0]&&!!e.privilegedAuths[0].outsourcingPermissions)})}))(r),module.exports.BaseComp=r});
Beispiel #11
0
define("bundles/facilitated-cdp/components/AboutSection",["require","exports","module","react-with-addons","./Section","./SectionCard","bundles/ondemand/models/S12n","js/lib/coursera.react-intl","i18n!nls/facilitated-cdp","pages/open-course/common/models/course","css!./__styles__/AboutSection"],function(require,exports,module){"use strict";function _defaults(e,o){for(var i=Object.getOwnPropertyNames(o),t=0;t<i.length;t++){var n=i[t],r=Object.getOwnPropertyDescriptor(o,n);r&&r.configurable&&void 0===e[n]&&Object.defineProperty(e,n,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var a=function(){function defineProperties(r,n){for(var t=0;t<n.length;t++){var e=n[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,n){return t&&defineProperties(e.prototype,t),n&&defineProperties(e,n),e}}(),o=function get(i,c,u){var n=!0;e:for(;n;){var t=i,s=c,a=u;n=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,s);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;i=r,c=s,u=a,n=!0,e=r=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(a)}},e=require("react-with-addons"),i=require("./Section"),r=require("./SectionCard"),s=require("bundles/ondemand/models/S12n"),n=require("js/lib/coursera.react-intl"),t=require("i18n!nls/facilitated-cdp"),c=require("pages/open-course/common/models/course");require("css!./__styles__/AboutSection");var u=n.FormattedHTMLMessage,l=n.FormattedMessage,p=function(n){function AboutSection(){_classCallCheck(this,AboutSection),o(Object.getPrototypeOf(AboutSection.prototype),"constructor",this).apply(this,arguments)}return _inherits(AboutSection,n),a(AboutSection,[{key:"renderS12n",value:function renderS12n(){var r=this.props,o=r.course,n=r.s12n;if(!n)return null;return e.createElement("div",{className:"specialization-note"},e.createElement(u,{message:t("\n            This is course {courseNum} of a {numCourses}-course series, the {s12nName} Specialization.\n            Currently this is the only course in the series that is offered with the option to learn\n            with a mentor.\n          "),courseNum:n.getCourseNumber(o.get("id")),numCourses:n.getNumCourses(),s12nLink:n.getLink(),s12nName:n.getName()}))}},{key:"render",value:function render(){var n=this.props.course;return e.createElement(i,{className:"rc-AboutSection",title:t("More about this course")},e.createElement(r,null,e.createElement("div",{className:"description"},n.get("description")),this.renderS12n(),e.createElement("div",{className:"meta-info"},e.createElement("div",null,e.createElement("i",{className:"cif-globe meta-info-icon"}),e.createElement(l,{message:t("Subtitles available in {subtitleLanguages}"),subtitleLanguages:n.getSubtitles().join(", ")})),e.createElement("div",null,e.createElement("i",{className:"cif-clock-o meta-info-icon"}),t("8 hours/week")))))}}],[{key:"propTypes",value:{course:e.PropTypes.instanceOf(c).isRequired,s12n:e.PropTypes.instanceOf(s)},enumerable:!0}]),AboutSection}(e.Component);module.exports=p});
define("bundles/ondemand/components/reading/Reading",["require","exports","module","react-with-addons","bundles/phoenix/components/CML","bundles/CMLConverter/CMLVariableNames","bundles/ondemand/actions/ProgressActions","bundles/phoenix/lib/waitForStores","bundles/phoenix/template/models/userIdentity","pages/open-course/common/models/itemMetadata","pages/open-course/common/constants","pages/open-course/supplement/utils/supplementProgressApi"],function(require,exports,module){"use strict";function _defaults(e,n){for(var s=Object.getOwnPropertyNames(n),t=0;t<s.length;t++){var r=s[t],o=Object.getOwnPropertyDescriptor(n,r);o&&o.configurable&&void 0===e[r]&&Object.defineProperty(e,r,o)}return e}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var o=function(){function defineProperties(o,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),n=function get(s,u,p){var r=!0;e:for(;r;){var t=s,a=u,i=p;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,a);if(void 0===e){var o=Object.getPrototypeOf(t);if(null===o)return void 0;s=o,u=a,p=i,r=!0,e=o=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(i)}},e=require("react-with-addons"),s=require("bundles/phoenix/components/CML"),t=require("bundles/CMLConverter/CMLVariableNames"),a=require("bundles/ondemand/actions/ProgressActions"),i=a.updateProgress,u=require("bundles/phoenix/lib/waitForStores"),r=require("bundles/phoenix/template/models/userIdentity"),p=require("pages/open-course/common/models/itemMetadata"),c=require("pages/open-course/common/constants"),l=require("pages/open-course/supplement/utils/supplementProgressApi"),d=function(a){function Reading(){_classCallCheck(this,Reading),n(Object.getPrototypeOf(Reading.prototype),"constructor",this).apply(this,arguments)}return _inherits(Reading,a),o(Reading,[{key:"componentDidMount",value:function componentDidMount(){this.markComplete()}},{key:"getVariableData",value:function getVariableData(){var e;return e={},_defineProperty(e,t.NAME,r.get("full_name")),_defineProperty(e,t.USER_ID,r.get("id")),e}},{key:"markComplete",value:function markComplete(){var e=this.props,t=e.courseProgress,n=e.itemMetadata,r=n.getId(),o=t.getItemProgress(r);o.isComplete()||l.markComplete(r).then(function(){o.setState(c.progressCompleted,{refreshCourseProgress:!0}),this.context.executeAction(i,t)}.bind(this)).done()}},{key:"render",value:function render(){return e.createElement(s,{className:"rc-Reading",shouldApplyTracking:!0,cml:this.props.readingCml,variableData:this.getVariableData()})}}],[{key:"propTypes",value:{itemMetadata:e.PropTypes.instanceOf(p).isRequired,readingCml:e.PropTypes.object.isRequired,courseProgress:e.PropTypes.object.isRequired},enumerable:!0},{key:"contextTypes",value:{executeAction:e.PropTypes.func.isRequired},enumerable:!0}]),Reading}(e.Component);module.exports=u(d,["ProgressStore"],function(e,r){var t=e.ProgressStore;return{courseProgress:t.courseProgress}})});
define("bundles/discussions/components/redesign/landing/LandingPageSearchBox",["require","exports","module","react-with-addons","bundles/page/components/TrackedTextInput","css!bundles/discussions/components/redesign/landing/__styles__/LandingPageSearchBox"],function(require,exports,module){"use strict";function _defaults(e,o){for(var a=Object.getOwnPropertyNames(o),t=0;t<a.length;t++){var n=a[t],r=Object.getOwnPropertyDescriptor(o,n);r&&r.configurable&&void 0===e[n]&&Object.defineProperty(e,n,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var t=function(){function defineProperties(r,n){for(var t=0;t<n.length;t++){var e=n[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,n){return t&&defineProperties(e.prototype,t),n&&defineProperties(e,n),e}}(),n=function get(a,c,u){var n=!0;e:for(;n;){var t=a,s=c,i=u;n=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,s);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;a=r,c=s,u=i,n=!0,e=r=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(i)}},e=require("react-with-addons"),r=require("bundles/page/components/TrackedTextInput");require("css!bundles/discussions/components/redesign/landing/__styles__/LandingPageSearchBox");var o=function(o){function LandingPageSearchBox(){var e=this;_classCallCheck(this,LandingPageSearchBox),n(Object.getPrototypeOf(LandingPageSearchBox.prototype),"constructor",this).apply(this,arguments),this.state={query:this.props.query||""},this.onChange=function(t){e.setState({query:t.target.value})},this.onSubmit=function(){e.props.onSubmit(e.state.query)},this.checkForEnter=function(t){"Enter"===t.key&&e.onSubmit()}}return _inherits(LandingPageSearchBox,o),t(LandingPageSearchBox,[{key:"componentWillReceiveProps",value:function componentWillReceiveProps(e){e.query!==this.props.query&&this.setState({query:e.query||""})}},{key:"render",value:function render(){var t=this.state.query;return e.createElement("div",{className:"rc-LandingPageSearchBox"},e.createElement("div",{className:"search-bar"},e.createElement("div",{className:"input-area"},e.createElement(r,{trackingName:"search_box",placeholder:"Search",className:"search-input",value:t,onChange:this.onChange,onKeyPress:this.checkForEnter})),e.createElement("button",{className:"search-button",onClick:this.onSubmit},e.createElement("i",{className:"cif-search"}))))}}],[{key:"propTypes",value:{onSubmit:e.PropTypes.func.isRequired,query:e.PropTypes.string},enumerable:!0}]),LandingPageSearchBox}(e.Component);module.exports=o});
define("bundles/discussions/components/redesign/landing/LandingPageThreadsViewWrapper",["require","exports","module","underscore","react-with-addons","bundles/discussions/components/DiscussionsBody","bundles/discussions/lib/propTypes","vendor/cnpm/fluxible.v0-4/addons/connectToStores","bundles/discussions/components/redesign/landing/LandingPageSearchResultsSummary","css!bundles/discussions/components/redesign/landing/__styles__/LandingPageThreadsViewWrapper"],function(require,exports,module){"use strict";function _defaults(e,o){for(var s=Object.getOwnPropertyNames(o),n=0;n<s.length;n++){var t=s[n],r=Object.getOwnPropertyDescriptor(o,t);r&&r.configurable&&void 0===e[t]&&Object.defineProperty(e,t,r)}return e}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _inherits(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(n,e):_defaults(n,e))}var n=function(){function defineProperties(r,t){for(var n=0;n<t.length;n++){var e=t[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,n,t){return n&&defineProperties(e.prototype,n),t&&defineProperties(e,t),e}}(),t=function get(s,u,c){var t=!0;e:for(;t;){var n=s,a=u,i=c;t=!1,null===n&&(n=Function.prototype);var e=Object.getOwnPropertyDescriptor(n,a);if(void 0===e){var r=Object.getPrototypeOf(n);if(null===r)return void 0;s=r,u=a,c=i,t=!0,e=r=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(i)}},r=require("underscore"),o=r.compose,e=require("react-with-addons"),s=require("bundles/discussions/components/DiscussionsBody"),a=require("bundles/discussions/lib/propTypes"),i=a.forumMetadataPropType,u=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores"),c=require("bundles/discussions/components/redesign/landing/LandingPageSearchResultsSummary");require("css!bundles/discussions/components/redesign/landing/__styles__/LandingPageThreadsViewWrapper");var d=function(r){function LandingPageThreadsViewWrapper(){_classCallCheck(this,LandingPageThreadsViewWrapper),t(Object.getPrototypeOf(LandingPageThreadsViewWrapper.prototype),"constructor",this).apply(this,arguments)}return _inherits(LandingPageThreadsViewWrapper,r),n(LandingPageThreadsViewWrapper,[{key:"render",value:function render(){if(!this.props.forumMetadata)return null;return e.createElement("div",{className:"rc-LandingPageThreadsViewWrapper"},e.createElement(c,{id:this.props.forumMetadata.id}),e.createElement(s,{viewContext:this.props.forumMetadata.viewContext}))}}],[{key:"propTypes",value:{forumMetadata:i,search:e.PropTypes.string},enumerable:!0}]),LandingPageThreadsViewWrapper}(e.Component);module.exports=o(u(["ForumMetadataStore"],function(e,t){var n=e.ForumMetadataStore;return{forumMetadata:n.getCurrentForumMetadata()}}))(d)});
define("bundles/ondemand/components/HomeLayout",["require","exports","module","underscore","underscore","react-with-addons","react-dom","bundles/ondemand/components/HomeNavigation","bundles/ondemand/components/banners/OverrideBanner","bundles/ondemand/components/banners/BranchPreviewBanner","bundles/ondemand/components/menu/Menu","bundles/ondemand/components/s12n/S12nBanner","bundles/ondemand/components/banners/CourseBannerContainer","bundles/ondemand/components/sessions/SessionStartedModal","bundles/discussions/components/sessionSwitcher/SessionSwitcherContainer","bundles/ondemand/stores/SessionStore","bundles/phoenix/components/OrigamiRegion","bundles/phoenix/template/models/userIdentity","bundles/ondemand/components/survey/FacilitatedLearningSurveyModal","pages/open-course/common/models/course","pages/open-course/common/views/helpwidget","vendor/cnpm/fluxible.v0-4/addons/connectToStores","css!./__styles__/HomeLayout"],function(require,exports,module){"use strict";function _defaults(e,s){for(var r=Object.getOwnPropertyNames(s),n=0;n<r.length;n++){var o=r[n],t=Object.getOwnPropertyDescriptor(s,o);t&&t.configurable&&void 0===e[o]&&Object.defineProperty(e,o,t)}return e}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _inherits(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(n,e):_defaults(n,e))}var t=function(){function defineProperties(t,o){for(var n=0;n<o.length;n++){var e=o[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(t,e.key,e)}}return function(e,n,o){return n&&defineProperties(e.prototype,n),o&&defineProperties(e,o),e}}(),s=function get(r,d,c){var o=!0;e:for(;o;){var n=r,a=d,i=c;o=!1,null===n&&(n=Function.prototype);var e=Object.getOwnPropertyDescriptor(n,a);if(void 0===e){var t=Object.getPrototypeOf(n);if(null===t)return void 0;r=t,d=a,c=i,o=!0,e=t=void 0;continue e}if("value"in e)return e.value;var s=e.get;if(void 0===s)return void 0;return s.call(i)}},_=require("underscore"),r=require("underscore"),a=r.compose,e=require("react-with-addons"),i=require("react-dom"),d=require("bundles/ondemand/components/HomeNavigation"),c=require("bundles/ondemand/components/banners/OverrideBanner"),u=require("bundles/ondemand/components/banners/BranchPreviewBanner"),S=require("bundles/ondemand/components/menu/Menu"),w=require("bundles/ondemand/components/s12n/S12nBanner"),m=require("bundles/ondemand/components/banners/CourseBannerContainer"),p=require("bundles/ondemand/components/sessions/SessionStartedModal"),b=require("bundles/discussions/components/sessionSwitcher/SessionSwitcherContainer"),o=require("bundles/ondemand/stores/SessionStore"),f=require("bundles/phoenix/components/OrigamiRegion"),v=require("bundles/phoenix/template/models/userIdentity"),y=require("bundles/ondemand/components/survey/FacilitatedLearningSurveyModal"),h=require("pages/open-course/common/models/course"),g=require("pages/open-course/common/views/helpwidget"),l=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores");require("css!./__styles__/HomeLayout");var n=function(n){function HomeLayout(){var e=this;_classCallCheck(this,HomeLayout),s(Object.getPrototypeOf(HomeLayout.prototype),"constructor",this).apply(this,arguments),this.adjustHeight=function(){var n=e.refs,o=n.homeNavigation,t=n.body;if(o){var s=i.findDOMNode(o).clientHeight;s&&t&&(t.style.marginTop=s+"px")}}}return _inherits(HomeLayout,n),t(HomeLayout,[{key:"componentDidMount",value:function componentDidMount(){this.adjustHeight()}},{key:"componentDidUpdate",value:function componentDidUpdate(){this.refs.contents&&(this.refs.contents.scrollTop=0)}},{key:"render",value:function render(){return e.createElement("div",{className:"rc-HomeLayout"},e.createElement(d,{ref:"homeNavigation"}),e.createElement("div",{className:"rc-HomeLayoutBody",ref:"body"},e.createElement(S,{ref:"menuContainer",onUpdate:this.adjustHeight}),e.createElement("main",{ref:"contents",className:"od-contents vertical-box"},e.createElement("div",{className:"c-body"},e.createElement(u,{className:"horizontal-box",userId:v.get("id"),course:this.props.course}),e.createElement(m,{course:this.props.course}),e.createElement(c,null),e.createElement(b,{courseId:this.props.course.get("id")}),this.props.children,e.createElement(y,null))),this.props.showSessionStartedModal&&e.createElement(p,{justEnrolled:!1}),e.createElement(f,{ViewClass:g})))}}],[{key:"propTypes",value:{course:e.PropTypes.instanceOf(h).isRequired,showSessionStartedModal:e.PropTypes.bool.isRequired,children:e.PropTypes.element},enumerable:!0}]),HomeLayout}(e.Component);module.exports=a(l(["CourseStore"],function(e,t){var n=e.CourseStore;return{course:n.getMetadata(),showSessionStartedModal:o.isSessionsEnabled()&&!o.isPreviewMode()}}))(n),module.exports.BaseComp=n});
define("bundles/ui/components/CollapsibleMessage",["require","exports","module","react-with-addons","classnames","i18n!nls/ui","css!./__styles__/CollapsibleMessage"],function(require,exports,module){"use strict";function _defaults(e,n){for(var s=Object.getOwnPropertyNames(n),t=0;t<s.length;t++){var o=s[t],r=Object.getOwnPropertyDescriptor(n,o);r&&r.configurable&&void 0===e[o]&&Object.defineProperty(e,o,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var o=function(){function defineProperties(r,o){for(var t=0;t<o.length;t++){var e=o[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,o){return t&&defineProperties(e.prototype,t),o&&defineProperties(e,o),e}}(),r=function get(s,i,c){var o=!0;e:for(;o;){var t=s,l=i,a=c;o=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,l);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;s=r,i=l,c=a,o=!0,e=r=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(a)}},e=require("react-with-addons"),t=require("classnames"),n=require("i18n!nls/ui");require("css!./__styles__/CollapsibleMessage");var s=function(s){function CollapsibleMessage(t){var e=this;_classCallCheck(this,CollapsibleMessage),r(Object.getPrototypeOf(CollapsibleMessage.prototype),"constructor",this).call(this,t),this.onToggleClick=function(){e.setState({isCollapsed:!e.state.isCollapsed}),e.props.onToggleClick()},this.state={isCollapsed:t.isInitiallyCollapsed}}return _inherits(CollapsibleMessage,s),o(CollapsibleMessage,null,[{key:"propTypes",value:{children:e.PropTypes.node.isRequired,className:e.PropTypes.string,showToggle:e.PropTypes.bool,onToggleClick:e.PropTypes.func,isInitiallyCollapsed:e.PropTypes.bool},enumerable:!0},{key:"defaultProps",value:{onToggleClick:function onToggleClick(){},showToggle:!0,isInitiallyCollapsed:!1},enumerable:!0}]),o(CollapsibleMessage,[{key:"render",value:function render(){var s=this.props,o=s.showToggle,l=s.className,r=this.state.isCollapsed,a=t("color-secondary-text",{"cif-chevron-up":!r,"cif-chevron-down":r}),i=t("rc-CollapsibleMessage","comfy","primary",l,{"card-rich-interaction":o,"card-no-action":!o}),c=t("message-content",{truncated:o&&r});return e.createElement("div",{className:i},e.createElement("div",{className:c},this.props.children,o&&r&&e.createElement("div",{className:"truncate-gradient"})),o&&e.createElement("button",{className:"nostyle message-toggle",onClick:this.onToggleClick,"aria-hidden":"true"},e.createElement("i",{className:a}),e.createElement("span",{className:"color-secondary-text"},n(r?"More":"Less"))))}}]),CollapsibleMessage}(e.Component);module.exports=s});
Beispiel #17
0
define("bundles/ondemand/components/HowToPass",["require","exports","module","react-with-addons","bundles/ondemand/stores/SessionStore","bundles/epic/client","i18n!nls/ondemand","css!./__styles__/HowToPass.css"],function(require,exports,module){"use strict";function _defaults(e,r){for(var s=Object.getOwnPropertyNames(r),t=0;t<s.length;t++){var n=s[t],o=Object.getOwnPropertyDescriptor(r,n);o&&o.configurable&&void 0===e[n]&&Object.defineProperty(e,n,o)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var n=function(){function defineProperties(o,n){for(var t=0;t<n.length;t++){var e=n[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,t,n){return t&&defineProperties(e.prototype,t),n&&defineProperties(e,n),e}}(),o=function get(s,c,u){var n=!0;e:for(;n;){var t=s,a=c,i=u;n=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,a);if(void 0===e){var o=Object.getPrototypeOf(t);if(null===o)return void 0;s=o,c=a,u=i,n=!0,e=o=void 0;continue e}if("value"in e)return e.value;var r=e.get;if(void 0===r)return void 0;return r.call(i)}},e=require("react-with-addons"),r=require("bundles/ondemand/stores/SessionStore"),a=require("bundles/epic/client"),t=require("i18n!nls/ondemand");require("css!./__styles__/HowToPass.css");var s=function(s){function HowToPass(){_classCallCheck(this,HowToPass),o(Object.getPrototypeOf(HowToPass.prototype),"constructor",this).apply(this,arguments)}return _inherits(HowToPass,s),n(HowToPass,[{key:"render",value:function render(){if(!r.isSessionsEnabled()&&!this.props.showInOnDemand)return null;return e.createElement("div",{className:"rc-HowToPass card-no-action primary od-container comfy"},e.createElement("h2",{className:"body-2-text"},t("How to Pass the Course")),e.createElement("p",null,t("Pass all graded assignments to complete the course.")))}}],[{key:"propTypes",value:{showInOnDemand:e.PropTypes.bool},enumerable:!0}]),HowToPass}(e.Component);module.exports=s});
Beispiel #18
0
define("bundles/facilitated-cdp/components/WhatYouLearnSection",["require","exports","module","react-with-addons","bundles/facilitated-cdp/models/WhatYouLearn","js/app/config","js/components/Imgix","js/lib/path","css!./__styles__/WhatYouLearnSection"],function(require,exports,module){"use strict";function _defaults(e,a){for(var o=Object.getOwnPropertyNames(a),t=0;t<o.length;t++){var n=o[t],r=Object.getOwnPropertyDescriptor(a,n);r&&r.configurable&&void 0===e[n]&&Object.defineProperty(e,n,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var t=function(){function defineProperties(r,n){for(var t=0;t<n.length;t++){var e=n[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,n){return t&&defineProperties(e.prototype,t),n&&defineProperties(e,n),e}}(),n=function get(o,l,s){var n=!0;e:for(;n;){var t=o,i=l,c=s;n=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;o=r,l=i,s=c,n=!0,e=r=void 0;continue e}if("value"in e)return e.value;var a=e.get;if(void 0===a)return void 0;return a.call(c)}},e=require("react-with-addons"),r=require("bundles/facilitated-cdp/models/WhatYouLearn"),a=require("js/app/config"),o=require("js/components/Imgix"),i=require("js/lib/path");require("css!./__styles__/WhatYouLearnSection");var c=function(c){function WhatYouLearnSection(){_classCallCheck(this,WhatYouLearnSection),n(Object.getPrototypeOf(WhatYouLearnSection.prototype),"constructor",this).apply(this,arguments)}return _inherits(WhatYouLearnSection,c),t(WhatYouLearnSection,[{key:"render",value:function render(){var t=this.props.whatYouLearn;return e.createElement("div",{className:"rc-WhatYouLearnSection card-no-action"},e.createElement("h4",{className:"title headline-3-text"},t.title),e.createElement("div",{className:"description"},t.description),t.thingsYouLearn.map(function(t){var n=i.join(a.url.assets,"bundles/facilitated-cdp/images","what-you-learn",t.iconFilename);return e.createElement("div",{key:t.title,className:"thing-you-learn horizontal-box"},e.createElement("div",{className:"icon-area"},e.createElement(o,{src:n,width:84,height:84,alt:""})),e.createElement("div",{className:"text-area flex-1"},e.createElement("div",{className:"title headline-2-text"},t.title),e.createElement("p",null,t.description)))}))}}],[{key:"propTypes",value:{whatYouLearn:e.PropTypes.instanceOf(r).isRequired},enumerable:!0}]),WhatYouLearnSection}(e.Component);module.exports=c});
define("bundles/reply-message/components/ReplyMessage",["require","exports","module","react-with-addons","underscore","moment","i18n!nls/reply-message","js/lib/coursera.react-intl","bundles/phoenix/template/models/userIdentity","bundles/phoenix/components/CMLEditor","bundles/phoenix/constants/CMLEditorBlocks","bundles/teach-course/components/Checkbox","bundles/reply-message/constants/ReplyMessageConstants","bundles/reply-message/utils/ReplyMessageAPIUtils","css!./__styles__/ReplyMessage"],function(require,exports,module){"use strict";function _defaults(e,a){for(var l=Object.getOwnPropertyNames(a),t=0;t<l.length;t++){var s=l[t],n=Object.getOwnPropertyDescriptor(a,s);n&&n.configurable&&void 0===e[s]&&Object.defineProperty(e,s,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var m=function(){function defineProperties(n,s){for(var t=0;t<s.length;t++){var e=s[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,s){return t&&defineProperties(e.prototype,t),s&&defineProperties(e,s),e}}(),h=function get(l,i,c){var s=!0;e:for(;s;){var t=l,o=i,r=c;s=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,o);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;l=n,i=o,c=r,s=!0,e=n=void 0;continue e}if("value"in e)return e.value;var a=e.get;if(void 0===a)return void 0;return a.call(r)}},e=require("react-with-addons"),_=require("underscore"),l=require("moment"),n=require("i18n!nls/reply-message"),i=require("js/lib/coursera.react-intl"),a=i.FormattedMessage,b=i.FormattedHTMLMessage,p=require("bundles/phoenix/template/models/userIdentity"),u=require("bundles/phoenix/components/CMLEditor"),t=require("bundles/phoenix/constants/CMLEditorBlocks"),d=require("bundles/teach-course/components/Checkbox"),r=require("bundles/reply-message/constants/ReplyMessageConstants"),y=r.EntryTypes,s=r.States,c=require("bundles/reply-message/utils/ReplyMessageAPIUtils");require("css!./__styles__/ReplyMessage");var g=[t.H1,t.H2,t.H3,t.Divider,t.Bold,t.Italic,t.Underline,t.Divider,t.Link],o={definition:{dtdId:"email/1",value:"<co-content></co-content>"}},f=function(t){function ReplyMessage(){_classCallCheck(this,ReplyMessage),h(Object.getPrototypeOf(ReplyMessage.prototype),"constructor",this).apply(this,arguments),this.state={isMessageBoxOpen:!1,replyState:s.Idle,allowReply:!0,sentTime:null,message:o}}return _inherits(ReplyMessage,t),m(ReplyMessage,[{key:"handleClose",value:function handleClose(){this.setState({isMessageBoxOpen:!1})}},{key:"handleSend",value:function handleSend(){var e=this,t=this.props,n=t.entryType,a=t.entryId,l=this.state.allowReply;this.setState({replyState:s.InProgress}),c.sendMessage(n,a,!l,this.state.message).then(function(){e.setState({replyState:s.Success,message:o,sentTime:Date.now()}),e.handleClose()})}},{key:"handleButtonClick",value:function handleButtonClick(){var e=this;this.setState({isMessageBoxOpen:!0}),c.getSentMessage(this.props.entryId).then(function(t){if(!_(t.elements).isEmpty()){var n=t.elements[0].metadata;e.setState({replyState:s.Success,sentTime:n.updatedAt})}})}},{key:"handleMessageChange",value:function handleMessageChange(e){this.setState({message:e})}},{key:"handleAllowReply",value:function handleAllowReply(e){this.setState({allowReply:e})}},{key:"render",value:function render(){var r=this.props,m=r.placeholder,y=r.buttonText,t=this.state,h=t.isMessageBoxOpen,o=t.replyState,i=t.sentTime,f=t.message,c=o===s.InProgress;return e.createElement("div",{className:"rc-ReplyMessage"},h?e.createElement("div",null,o===s.Success&&e.createElement("div",{className:"sent-reply-timestamp"},e.createElement(a,{message:"Reply sent {time}",time:l(i).format("lll")})),e.createElement(u,{isFocused:!0,blocks:g,cml:f,placeholder:m,onChange:this.handleMessageChange.bind(this)}),e.createElement("footer",{className:"send-message-footer"},e.createElement("span",{className:"send-options"},e.createElement("label",null,e.createElement(d,{onChange:this.handleAllowReply.bind(this),checked:!0}),e.createElement(b,{message:n("Allow learner to reply to you at <strong>{email}</strong>"),email:p.get("email_address")}))),e.createElement("button",{className:"link-styled-button cancel-button",onClick:this.handleClose.bind(this)},n("Cancel")),e.createElement("button",{className:"teach-btn teach-btn-primary",onClick:this.handleSend.bind(this),disabled:c},n(c?"Sending...":"Send")))):e.createElement("button",{className:"link-styled-button",onClick:this.handleButtonClick.bind(this)},o===s.Success?e.createElement(a,{message:"Reply sent {time}",time:l(i).format("lll")}):y))}}],[{key:"propTypes",value:{entryId:e.PropTypes.any.isRequired,entryType:e.PropTypes.oneOf(_(y).toArray()).isRequired,placeholder:e.PropTypes.string,buttonText:e.PropTypes.string,title:e.PropTypes.string},enumerable:!0},{key:"defaultProps",value:{placeholder:n("Write a message"),buttonText:n("Reply")},enumerable:!0}]),ReplyMessage}(e.Component);module.exports=f});
define("bundles/ondemand/components/endOfCourse/components/KeepLearning",["require","exports","module","i18n!nls/ondemand","bundles/phoenix/lib/waitForStores","react-with-addons","pages/open-course/common/constants","bundles/ondemand/components/endOfCourse/components/CategoryRecommender","bundles/ondemand/models/S12n","bundles/ondemand/components/endOfCourse/components/UpNext","bundles/ondemand/components/endOfCourse/components/YourProgress"],function(require,exports,module){"use strict";function _defaults(e,r){for(var s=Object.getOwnPropertyNames(r),n=0;n<s.length;n++){var o=s[n],t=Object.getOwnPropertyDescriptor(r,o);t&&t.configurable&&void 0===e[o]&&Object.defineProperty(e,o,t)}return e}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function _inherits(n,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(n,e):_defaults(n,e))}var n=function(){function defineProperties(t,o){for(var n=0;n<o.length;n++){var e=o[n];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(t,e.key,e)}}return function(e,n,o){return n&&defineProperties(e.prototype,n),o&&defineProperties(e,o),e}}(),o=function get(s,c,l){var o=!0;e:for(;o;){var n=s,u=c,a=l;o=!1,null===n&&(n=Function.prototype);var e=Object.getOwnPropertyDescriptor(n,u);if(void 0===e){var t=Object.getPrototypeOf(n);if(null===t)return void 0;s=t,c=u,l=a,o=!0,e=t=void 0;continue e}if("value"in e)return e.value;var r=e.get;if(void 0===r)return void 0;return r.call(a)}},t=require("i18n!nls/ondemand"),r=require("bundles/phoenix/lib/waitForStores"),e=require("react-with-addons"),s=require("pages/open-course/common/constants"),u=require("bundles/ondemand/components/endOfCourse/components/CategoryRecommender"),a=require("bundles/ondemand/models/S12n"),c=require("bundles/ondemand/components/endOfCourse/components/UpNext"),l=require("bundles/ondemand/components/endOfCourse/components/YourProgress"),p=function(r){function KeepLearning(){_classCallCheck(this,KeepLearning),o(Object.getPrototypeOf(KeepLearning.prototype),"constructor",this).apply(this,arguments)}return _inherits(KeepLearning,r),n(KeepLearning,[{key:"renderBody",value:function renderBody(){var n=this.props.s12n;return n&&this.props.showS12nProgress?e.createElement(l,null):n&&n.getNextIncompleteCourse(s.courseId)?e.createElement(c,null):e.createElement(u,null)}},{key:"render",value:function render(){return e.createElement("div",{className:"rc-KeepLearning"},e.createElement("h5",{className:"tab-headline"},e.createElement("span",null,t("Keep Learning"))),this.renderBody())}}],[{key:"propTypes",value:{s12n:e.PropTypes.instanceOf(a),showS12nProgress:e.PropTypes.bool},enumerable:!0},{key:"defaultProps",value:{showS12nProgress:!1},enumerable:!0}]),KeepLearning}(e.Component);module.exports=r(p,["S12nStore"],function(e,o){var n=e.S12nStore;return{s12n:n.getS12n()}})});
define("bundles/programming/components/Footer",["require","exports","module","react-with-addons","bundles/content-feedback/components/ItemFeedback","bundles/content-feedback/constants/ItemTypes","css!./__styles__/Footer"],function(require,exports,module){"use strict";function _defaults(e,o){for(var a=Object.getOwnPropertyNames(o),t=0;t<a.length;t++){var r=a[t],n=Object.getOwnPropertyDescriptor(o,r);n&&n.configurable&&void 0===e[r]&&Object.defineProperty(e,r,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var r=function(){function defineProperties(n,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),n=function get(a,s,p){var r=!0;e:for(;r;){var t=a,i=s,c=p;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;a=n,s=i,p=c,r=!0,e=n=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(c)}},e=require("react-with-addons"),t=require("bundles/content-feedback/components/ItemFeedback"),a=require("bundles/content-feedback/constants/ItemTypes");require("css!./__styles__/Footer");var o=function(o){function Footer(){_classCallCheck(this,Footer),n(Object.getPrototypeOf(Footer.prototype),"constructor",this).apply(this,arguments)}return _inherits(Footer,o),r(Footer,[{key:"render",value:function render(){if(!t.shouldShow()||"programming"===this.props.itemMetadata.getTypeName())return null;return e.createElement("div",{className:"feedback-bottom-bar"},e.createElement(t,{itemType:this.props.feedbackItemType,itemMetadata:this.props.itemMetadata,itemId:this.props.itemMetadata.getId(),tooltipPlacement:"right"}))}}],[{key:"propTypes",value:{itemMetadata:e.PropTypes.object.isRequired,feedbackItemType:e.PropTypes.string},enumerable:!0}]),Footer}(e.Component);module.exports=o});
define("bundles/content-feedback/components/rating-dashboard/CourseLearnerAudienceSelect",["require","exports","module","react-bootstrap","react-with-addons","bundles/content-feedback/constants/LearnerAudiences","underscore"],function(require,exports,module){"use strict";function _defaults(e,o){for(var c=Object.getOwnPropertyNames(o),t=0;t<c.length;t++){var r=c[t],n=Object.getOwnPropertyDescriptor(o,r);n&&n.configurable&&void 0===e[r]&&Object.defineProperty(e,r,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var r=function(){function defineProperties(n,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),n=function get(c,i,l){var r=!0;e:for(;r;){var t=c,a=i,u=l;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,a);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;c=n,i=a,l=u,r=!0,e=n=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(u)}},t=require("react-bootstrap"),o=t.DropdownButton,c=t.MenuItem,e=require("react-with-addons"),a=require("bundles/content-feedback/constants/LearnerAudiences"),_=require("underscore"),u=function(t){function CourseLearnerAudienceSelect(){_classCallCheck(this,CourseLearnerAudienceSelect),n(Object.getPrototypeOf(CourseLearnerAudienceSelect.prototype),"constructor",this).apply(this,arguments)}return _inherits(CourseLearnerAudienceSelect,t),r(CourseLearnerAudienceSelect,[{key:"handleSelect",value:function handleSelect(e){this.context.track("click."+e.eventKey),this.props.onChange(e)}},{key:"render",value:function render(){var t=this;return e.createElement(o,{block:!0,title:this.props.learnerAudience.label,className:"rc-CourseLearnerAudienceSelect teach-dropdown-btn"},_(a).map(function(r,n){var o=r.label;return e.createElement(c,{onSelect:function(){return t.handleSelect(r)},key:n},o)}))}}],[{key:"propTypes",value:{learnerAudience:e.PropTypes.object.isRequired,onChange:e.PropTypes.func.isRequired},enumerable:!0},{key:"contextTypes",value:{track:e.PropTypes.func.isRequired},enumerable:!0}]),CourseLearnerAudienceSelect}(e.Component);module.exports=u});
define("bundles/phoenix/components/Tex",["require","exports","module","react-with-addons","react-dom","js/lib/coursera.mathjax"],function(require,exports,module){"use strict";function _defaults(e,o){for(var i=Object.getOwnPropertyNames(o),t=0;t<i.length;t++){var r=i[t],n=Object.getOwnPropertyDescriptor(o,r);n&&n.configurable&&void 0===e[r]&&Object.defineProperty(e,r,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var n=function(){function defineProperties(n,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),o=function get(i,c,l){var r=!0;e:for(;r;){var t=i,u=c,a=l;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,u);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;i=n,c=u,l=a,r=!0,e=n=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(a)}},e=require("react-with-addons"),t=require("react-dom"),r=require("js/lib/coursera.mathjax");module.exports=function(i){function Tex(){_classCallCheck(this,Tex),o(Object.getPrototypeOf(Tex.prototype),"constructor",this).apply(this,arguments)}return _inherits(Tex,i),n(Tex,[{key:"componentDidMount",value:function componentDidMount(){r.render(t.findDOMNode(this))}},{key:"componentDidUpdate",value:function componentDidUpdate(){r.render(t.findDOMNode(this))}},{key:"render",value:function render(){var t=this.props.children;return e.isValidElement(t)?t:e.createElement("span",null,t)}}]),Tex}(e.Component)});
define("bundles/ondemand/components/item/LightItemLayout",["require","exports","module","react-with-addons","classnames","bundles/phoenix/lib/waitForStores","bundles/ondemand/components/item/ItemNavigation","bundles/content-feedback/components/ItemFeedback","bundles/programming/components/Footer","css!./__styles__/LightItemLayout"],function(require,exports,module){"use strict";function _defaults(e,n){for(var a=Object.getOwnPropertyNames(n),t=0;t<a.length;t++){var o=a[t],r=Object.getOwnPropertyDescriptor(n,o);r&&r.configurable&&void 0===e[o]&&Object.defineProperty(e,o,r)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var o=function(){function defineProperties(r,o){for(var t=0;t<o.length;t++){var e=o[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(r,e.key,e)}}return function(e,t,o){return t&&defineProperties(e.prototype,t),o&&defineProperties(e,o),e}}(),r=function get(a,c,u){var o=!0;e:for(;o;){var t=a,i=c,s=u;o=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var r=Object.getPrototypeOf(t);if(null===r)return void 0;a=r,c=i,u=s,o=!0,e=r=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(s)}},e=require("react-with-addons"),t=require("classnames"),n=require("bundles/phoenix/lib/waitForStores"),a=require("bundles/ondemand/components/item/ItemNavigation"),i=require("bundles/content-feedback/components/ItemFeedback"),s=require("bundles/programming/components/Footer");require("css!./__styles__/LightItemLayout");var c=function(n){function LightItemLayout(){_classCallCheck(this,LightItemLayout),r(Object.getPrototypeOf(LightItemLayout.prototype),"constructor",this).apply(this,arguments)}return _inherits(LightItemLayout,n),o(LightItemLayout,[{key:"render",value:function render(){var o=this.props,r=o.itemMetadata,c=o.itemType,m=o.isCard,b=o.weekNumber,u=o.showFeedback,d=o.subItemId,p=o.children,n=o.feedbackFixedAtBottom,f=o.wide,y=t("content-container",{"feedback-not-fixed-at-bottom":!n}),v=t("card-container",{"card-rich-interaction":m}),l=t("content",{wide:f});return e.createElement("div",{className:"rc-LightItemLayout theme-light"},e.createElement(a,{weekNumber:b,currentItemId:r.get("id"),currentLesson:r.get("lesson")},e.createElement("div",{className:y},e.createElement("div",{className:v},e.createElement("div",{className:l},p),u&&!n&&e.createElement(i,{itemId:r.get("id"),itemMetadata:r,itemType:c,subItemId:d}),u&&n&&e.createElement(s,{itemMetadata:this.props.itemMetadata,feedbackItemType:c})))))}}],[{key:"propTypes",value:{itemMetadata:e.PropTypes.object.isRequired,children:e.PropTypes.node.isRequired,weekNumber:e.PropTypes.number.isRequired,showFeedback:e.PropTypes.bool,subItemId:e.PropTypes.string,itemType:e.PropTypes.string,isCard:e.PropTypes.bool,feedbackFixedAtBottom:e.PropTypes.bool,wide:e.PropTypes.bool},enumerable:!0},{key:"defaultProps",value:{isCard:!0,showFeedback:!0,feedbackFixedAtBottom:!1,wide:!1},enumerable:!0}]),LightItemLayout}(e.Component);module.exports=n(c,["CourseScheduleStore"],function(e,t){var o=e.CourseScheduleStore,r=t.itemMetadata.get("lesson.module.id");return{weekNumber:o.getSchedule().getWeekForModuleId(r)}})});
define("bundles/account-settings/components/PartnerEmailSubscriptionBanner",["require","exports","module","react-with-addons","i18n!nls/account-settings","js/lib/coursera.react-intl","bundles/account-settings/constants/SettingsConstants","bundles/account-settings/actions/SettingsActionCreators","bundles/account-settings/stores/SettingsStore","bundles/teach-course/components/ToggleSwitch","css!./__styles__/PartnerEmailSubscriptionBanner"],function(require,exports,module){"use strict";function _defaults(t,s){for(var o=Object.getOwnPropertyNames(s),e=0;e<o.length;e++){var n=o[e],r=Object.getOwnPropertyDescriptor(s,n);r&&r.configurable&&void 0===t[n]&&Object.defineProperty(t,n,r)}return t}function _classCallCheck(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):_defaults(e,t))}var o=function(){function defineProperties(r,n){for(var e=0;e<n.length;e++){var t=n[e];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(r,t.key,t)}}return function(t,e,n){return e&&defineProperties(t.prototype,e),n&&defineProperties(t,n),t}}(),l=function get(o,c,u){var n=!0;t:for(;n;){var e=o,a=c,i=u;n=!1,null===e&&(e=Function.prototype);var t=Object.getOwnPropertyDescriptor(e,a);if(void 0===t){var r=Object.getPrototypeOf(e);if(null===r)return void 0;o=r,c=a,u=i,n=!0,t=r=void 0;continue t}if("value"in t)return t.value;var s=t.get;if(void 0===s)return void 0;return s.call(i)}},t=require("react-with-addons"),a=require("i18n!nls/account-settings"),c=require("js/lib/coursera.react-intl"),i=c.FormattedHTMLMessage,u=require("bundles/account-settings/constants/SettingsConstants"),n=u.PartnerBannerStatus,r=require("bundles/account-settings/actions/SettingsActionCreators"),s=require("bundles/account-settings/stores/SettingsStore"),e=require("bundles/teach-course/components/ToggleSwitch");require("css!./__styles__/PartnerEmailSubscriptionBanner");var p=function(c){function PartnerEmailSubscriptionBanner(n,s){var t=this;_classCallCheck(this,PartnerEmailSubscriptionBanner),l(Object.getPrototypeOf(PartnerEmailSubscriptionBanner.prototype),"constructor",this).call(this,n,s),this.handleDismiss=function(){r.dismissPartnerEmailSubscription(t.props.courseId,t.props.partnerId)},this.onChange=function(){t.setState(PartnerEmailSubscriptionBanner.getStateFromStores(t.props.partnerId))},this.toggleSubscription=function(n){var s=n===e.getStatus().On;r.togglePartnerEmailSubscription(t.props.partnerId,t.props.courseId,s)},this.state=PartnerEmailSubscriptionBanner.getStateFromStores(n.partnerId)}return _inherits(PartnerEmailSubscriptionBanner,c),o(PartnerEmailSubscriptionBanner,null,[{key:"propTypes",value:{courseId:t.PropTypes.string.isRequired,partnerId:t.PropTypes.string.isRequired,partnerName:t.PropTypes.string.isRequired},enumerable:!0},{key:"getStateFromStores",value:function value(t){return{partnerBannerStatus:s.getPartnerBannerStatus(t)}},enumerable:!0}]),o(PartnerEmailSubscriptionBanner,[{key:"componentWillMount",value:function componentWillMount(){r.getPartnerBannerViewStatus(this.props.courseId,this.props.partnerId),s.addListener("change",this.onChange)}},{key:"componentWillUnmount",value:function componentWillUnmount(){s.removeListener("change",this.onChange)}},{key:"renderSubscriptionText",value:function renderSubscriptionText(){return this.state.partnerBannerStatus===n.SUBSCRIBED?t.createElement(i,{message:a("<strong>Yes</strong>, I’d like to receive email about\n                      other programs from <strong>{partnerName}</strong>."),partnerName:this.props.partnerName}):t.createElement(i,{message:a("<strong>No</strong>, I don’t want to receive email\n                      about other programs from <strong>{partnerName}</strong>."),partnerName:this.props.partnerName})}},{key:"render",value:function render(){if(!this.state.partnerBannerStatus||this.state.partnerBannerStatus===n.DISMISSED)return null;var r=e.getStatus().Off;return this.state.partnerBannerStatus===n.SUBSCRIBED&&(r=e.getStatus().On),t.createElement("div",{className:"rc-PartnerEmailSubscriptionBanner"},t.createElement("div",{className:"partner-banner-content horizontal-box align-items-vertical-center"},t.createElement("p",{className:"partner-subscription-text flex-1"},this.renderSubscriptionText()),t.createElement(e,{onToggle:this.toggleSubscription,defaultStatus:r}),t.createElement("i",{className:"cif-close dismiss",onClick:this.handleDismiss})))}}]),PartnerEmailSubscriptionBanner}(t.Component);module.exports=p});
define("bundles/ondemand/utils/itemViewValidator",["require","exports","module","react-with-addons","underscore","bundles/locking/components/LockedItem","bundles/ondemand/components/ItemLayout","bundles/ondemand/components/item/LightItemLayout","bundles/phoenix/template/models/userIdentity","bundles/unauthenticated/components/UnauthenticatedItem"],function(require,exports,module){"use strict";var e=require("react-with-addons"),_=require("underscore"),t=require("bundles/locking/components/LockedItem"),n=require("bundles/ondemand/components/ItemLayout"),a=require("bundles/ondemand/components/item/LightItemLayout"),d=require("bundles/phoenix/template/models/userIdentity"),o=require("bundles/unauthenticated/components/UnauthenticatedItem"),i=function itemViewValidator(i){var s=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],c=i.displayName||i.name;_(s).defaults({checkAuthenticated:!0,checkLocked:!0,renderItemLayout:!1});var r=e.createClass({displayName:c+"Validator",propTypes:{itemMetadata:e.PropTypes.object.isRequired},getInitialState:function getInitialState(){return{}},componentDidMount:function componentDidMount(){var e=this.props.itemMetadata;this.setState({isAuthenticated:d.get("authenticated"),isLocked:!(!e.get("isLocked")||!e.get("lockableByItem"))})},renderFailedChecksView:function renderFailedChecksView(){var a=s.checkAuthenticated,d=s.checkLocked,n=this.state,i=n.isAuthenticated,r=n.isLocked;if(a&&!i)return e.createElement(o,this.props);if(d&&r)return e.createElement(t,this.props)},render:function render(){var o=s.renderItemLayout,r=this.props.itemMetadata,t=this.renderFailedChecksView();if(t){var d=e.createElement(a,{itemMetadata:r,showFeedback:!1,isCard:!0},t);return o?e.createElement(n,null,d):d}return e.createElement(i,this.props)}});return r.BaseComp=i,r};module.exports=i});
Beispiel #27
0
define("bundles/ondemand/components/item/SectionButtons",["require","exports","module","react-with-addons","react-router","classnames","bundles/ondemand/utils/url","i18n!nls/ondemand","pages/open-course/common/models/lesson"],function(require,exports,module){"use strict";function _defaults(e,o){for(var s=Object.getOwnPropertyNames(o),t=0;t<s.length;t++){var r=s[t],n=Object.getOwnPropertyDescriptor(o,r);n&&n.configurable&&void 0===e[r]&&Object.defineProperty(e,r,n)}return e}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}var a=function(){function defineProperties(n,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),c=function get(s,a,c){var r=!0;e:for(;r;){var t=s,i=a,u=c;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,i);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;s=n,a=i,c=u,r=!0,e=n=void 0;continue e}if("value"in e)return e.value;var o=e.get;if(void 0===o)return void 0;return o.call(u)}},e=require("react-with-addons"),l=require("react-router"),p=l.Link,u=require("classnames"),o=require("bundles/ondemand/utils/url"),n=o.getWeekUrl,s=o.getHomeUrl,r=require("i18n!nls/ondemand"),i=require("pages/open-course/common/models/lesson"),t=function(t){function SectionButton(){_classCallCheck(this,SectionButton),c(Object.getPrototypeOf(SectionButton.prototype),"constructor",this).apply(this,arguments)}return _inherits(SectionButton,t),a(SectionButton,[{key:"render",value:function render(){return e.createElement(p,{className:u("rc-SectionButton","nostyle","flex-1",{"is-previous":this.props.isPrevious}),to:this.props.url,onClick:this.props.eventHandler},e.createElement("span",{className:"caption-text color-secondary-text"},this.props.text))}}],[{key:"propTypes",value:{isPrevious:e.PropTypes.bool.isRequired,url:e.PropTypes.string.isRequired,text:e.PropTypes.string.isRequired,eventHandler:e.PropTypes.func},enumerable:!0},{key:"defaultProps",value:{onLinkClick:function onLinkClick(){}},enumerable:!0}]),SectionButton}(e.Component);exports.PrevSectionButton=e.createClass({displayName:"PrevSectionButton",propTypes:{lessonNumber:e.PropTypes.number.isRequired,lessons:e.PropTypes.arrayOf(e.PropTypes.instanceOf(i)).isRequired,weekNumber:e.PropTypes.number.isRequired,numWeeks:e.PropTypes.number.isRequired},contextTypes:{track:e.PropTypes.func.isRequired},render:function render(){var o=this.props,i=o.lessonNumber,u=o.weekNumber,p=o.lessons;if(i>1){var a=p[i-2],c=a.getItemMetadatas().last(),d=c&&c.getLink()||n(this.props.weekNumber);return e.createElement(t,{isPrevious:!0,url:d,text:r("Previous Lesson"),eventHandler:this.context.track.handle("item_side_nav.click.prev_lesson",{lesson_id:a.get("id")})})}if(u>1){var l=u-1;return e.createElement(t,{isPrevious:!0,url:n(l),text:r("Previous Week"),eventHandler:this.context.track.handle("item_side_nav.click.prev_week",{week:l})})}return e.createElement(t,{isPrevious:!0,url:s(),text:r("Course Home"),eventHandler:this.context.track.handle("item_side_nav.click.back_to_home")})}}),exports.NextSectionButton=e.createClass({displayName:"NextSectionButton",propTypes:{lessonNumber:e.PropTypes.number.isRequired,lessons:e.PropTypes.arrayOf(e.PropTypes.instanceOf(i)).isRequired,weekNumber:e.PropTypes.number.isRequired,numWeeks:e.PropTypes.number.isRequired},contextTypes:{track:e.PropTypes.func.isRequired},render:function render(){var o=this.props,i=o.lessonNumber,u=o.weekNumber,a=o.lessons,d=o.numWeeks;if(i<a.length){var c=a[i],l=c.getItemMetadatas().first(),m=l&&l.getLink()||n(this.props.weekNumber);return e.createElement(t,{isPrevious:!1,url:m,text:r("Next Lesson"),eventHandler:this.context.track.handle("item_side_nav.click.next_lesson",{lesson_id:c.get("id")})})}if(d>u){var p=u+1;return e.createElement(t,{isPrevious:!1,url:n(p),text:r("Next Week"),eventHandler:this.context.track.handle("item_side_nav.click.next_week",{week:p})})}return e.createElement(t,{isPrevious:!1,url:s(),text:r("Course Home"),eventHandler:this.context.track.handle("item_side_nav.click.back_to_home")})}})});
define("bundles/ondemand/components/reportCard/CurrentWeekCard",["require","exports","module","react-with-addons","bundles/ondemand/components/reportCard/WeekRow","vendor/cnpm/fluxible.v0-4/addons/connectToStores"],function(require,exports,module){"use strict";function _defaults(e,n){for(var u=Object.getOwnPropertyNames(n),r=0;r<u.length;r++){var t=u[r],o=Object.getOwnPropertyDescriptor(n,t);o&&o.configurable&&void 0===e[t]&&Object.defineProperty(e,t,o)}return e}function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function _inherits(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(r,e):_defaults(r,e))}var r=function(){function defineProperties(o,t){for(var r=0;r<t.length;r++){var e=t[r];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,r,t){return r&&defineProperties(e.prototype,r),t&&defineProperties(e,t),e}}(),t=function get(u,c,p){var t=!0;e:for(;t;){var r=u,i=c,a=p;t=!1,null===r&&(r=Function.prototype);var e=Object.getOwnPropertyDescriptor(r,i);if(void 0===e){var o=Object.getPrototypeOf(r);if(null===o)return void 0;u=o,c=i,p=a,t=!0,e=o=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(a)}},e=require("react-with-addons"),o=require("bundles/ondemand/components/reportCard/WeekRow"),n=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores"),u=function(n){function CurrentWeekCard(){_classCallCheck(this,CurrentWeekCard),t(Object.getPrototypeOf(CurrentWeekCard.prototype),"constructor",this).apply(this,arguments)}return _inherits(CurrentWeekCard,n),r(CurrentWeekCard,[{key:"render",value:function render(){var r=this.props,t=r.currentWeek,n=r.moduleIds;return e.createElement(o,{isCurrentWeek:!0,week:t,moduleIds:n})}}],[{key:"propTypes",value:{currentWeek:e.PropTypes.number.isRequired,moduleIds:e.PropTypes.arrayOf(e.PropTypes.string).isRequired},enumerable:!0},{key:"defaultProps",value:{periods:[]},enumerable:!0}]),CurrentWeekCard}(e.Component);module.exports=n(u,["CourseScheduleStore"],function(t,o){var e=t.CourseScheduleStore,r=e.getCurrentWeek();return{currentWeek:r,moduleIds:e.getModuleIdsForWeek(r)}})});
define("bundles/ondemand/components/ItemLayoutHandler",["require","exports","module","react-with-addons","./ItemLayout","bundles/phoenix/lib/waitForStores","react-router"],function(require,exports,module){"use strict";function _defaults(e,n){for(var a=Object.getOwnPropertyNames(n),r=0;r<a.length;r++){var t=a[r],o=Object.getOwnPropertyDescriptor(n,t);o&&o.configurable&&void 0===e[t]&&Object.defineProperty(e,t,o)}return e}function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function _inherits(r,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(r,e):_defaults(r,e))}var t=Object.assign||function(o){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var t in r)Object.prototype.hasOwnProperty.call(r,t)&&(o[t]=r[t])}return o},o=function(){function defineProperties(o,t){for(var r=0;r<t.length;r++){var e=t[r];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(o,e.key,e)}}return function(e,r,t){return r&&defineProperties(e.prototype,r),t&&defineProperties(e,t),e}}(),n=function get(a,s,c){var t=!0;e:for(;t;){var r=a,u=s,i=c;t=!1,null===r&&(r=Function.prototype);var e=Object.getOwnPropertyDescriptor(r,u);if(void 0===e){var o=Object.getPrototypeOf(r);if(null===o)return void 0;a=o,s=u,c=i,t=!0,e=o=void 0;continue e}if("value"in e)return e.value;var n=e.get;if(void 0===n)return void 0;return n.call(i)}},e=require("react-with-addons"),a=require("./ItemLayout"),u=require("bundles/phoenix/lib/waitForStores"),i=require("react-router"),s=i.RouteHandler,r=function(r){function ItemLayoutHandler(){_classCallCheck(this,ItemLayoutHandler),n(Object.getPrototypeOf(ItemLayoutHandler.prototype),"constructor",this).apply(this,arguments)}return _inherits(ItemLayoutHandler,r),o(ItemLayoutHandler,[{key:"render",value:function render(){var o=this.props.courseMaterials,r=o.getItemMetadata(this.context.router.getCurrentParams().item_id);return e.createElement(a,null,e.createElement(s,t({},this.props,{itemMetadata:r,key:r.getId()})))}}],[{key:"propTypes",value:{courseMaterials:e.PropTypes.object.isRequired,course:e.PropTypes.object.isRequired,courseProgress:e.PropTypes.object.isRequired},enumerable:!0},{key:"contextTypes",value:{router:e.PropTypes.func.isRequired},enumerable:!0}]),ItemLayoutHandler}(e.Component);module.exports=u(r,["CourseStore","ProgressStore"],function(e){var r=e.CourseStore,t=e.ProgressStore;return{courseMaterials:r.getMaterials(),course:r.getMetadata(),courseProgress:t.courseProgress}}),module.exports.BaseComp=r});
define("bundles/content-feedback/components/flag/GradingProblemFeedbackEditor",["require","exports","module","classnames","react-with-addons","./../FeedbackEditor","bundles/content-feedback/actions/ProgrammingGradingProblemsActions","bundles/phoenix/utils/CMLUtils","i18n!nls/content-feedback","vendor/cnpm/fluxible.v0-4/addons/connectToStores","css!./__styles__/GradingProblemFeedbackEditor"],function(require,exports,module){"use strict";function _defaults(e,a){for(var i=Object.getOwnPropertyNames(a),t=0;t<i.length;t++){var r=i[t],n=Object.getOwnPropertyDescriptor(a,r);n&&n.configurable&&void 0===e[r]&&Object.defineProperty(e,r,n)}return e}function _inherits(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):_defaults(t,e))}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=function(){function defineProperties(n,r){for(var t=0;t<r.length;t++){var e=r[t];e.enumerable=e.enumerable||!1,e.configurable=!0,"value"in e&&(e.writable=!0),Object.defineProperty(n,e.key,e)}}return function(e,t,r){return t&&defineProperties(e.prototype,t),r&&defineProperties(e,r),e}}(),o=function get(i,c,d){var r=!0;e:for(;r;){var t=i,s=c,o=d;r=!1,null===t&&(t=Function.prototype);var e=Object.getOwnPropertyDescriptor(t,s);if(void 0===e){var n=Object.getPrototypeOf(t);if(null===n)return void 0;i=n,c=s,d=o,r=!0,e=n=void 0;continue e}if("value"in e)return e.value;var a=e.get;if(void 0===a)return void 0;return a.call(o)}},c=require("classnames"),e=require("react-with-addons"),s=require("./../FeedbackEditor"),n=require("bundles/content-feedback/actions/ProgrammingGradingProblemsActions"),t=require("bundles/phoenix/utils/CMLUtils"),r=require("i18n!nls/content-feedback"),d=require("vendor/cnpm/fluxible.v0-4/addons/connectToStores");require("css!./__styles__/GradingProblemFeedbackEditor");var l=n.loadProgrammingSubmittedParts,u=n.loadProgrammingPartGradingFeedbacks,p=n.saveProgrammingPartGradingFeedbacks,a=function PartState(e,r,n){_classCallCheck(this,PartState),this.id=e,this.isChecked=r||!1,this.cml=n||t.create("")},m=function(n){function GradingProblemFeedbackEditor(r,n){var e=this;_classCallCheck(this,GradingProblemFeedbackEditor),o(Object.getPrototypeOf(GradingProblemFeedbackEditor.prototype),"constructor",this).call(this,r,n),this.handleCheck=function(r,i){e.state.partStates[r.id]||(e.state.partStates[r.id]=new a(r.id));var n=e.state.partStates[r.id];n.isChecked=i.target.checked,n.cml=i.target.checked?n.cml:t.create(""),e.forceUpdate()},this.handleSend=function(t){t.preventDefault(),e.context.executeAction(p,{courseId:e.props.itemMetadata.get("course.id"),itemId:e.props.itemMetadata.get("id"),parts:e.props.submittedParts.map(function(t){return{id:t.id,submissionId:t.submissionId,content:e.state.partStates[t.id].cml}})}),e.setState({partStates:null}),e.props.onSend()},this.handleChange=function(t,r){e.state.partStates[t.id]||(e.state.partStates[t.id]=new a(t.id)),e.state.partStates[t.id].cml=r,e.forceUpdate()},this.handleCancel=function(t){t.preventDefault(),e.initializePartStates(e.props.submittedParts,e.props.feedbacks),e.props.onCancel()},this.context.executeAction(l,{itemMetadata:r.itemMetadata}),this.state={loading:!0,partStates:null}}return _inherits(GradingProblemFeedbackEditor,n),i(GradingProblemFeedbackEditor,null,[{key:"propTypes",value:{itemMetadata:e.PropTypes.object.isRequired,isFocused:e.PropTypes.bool,placeholder:e.PropTypes.string.isRequired,onCancel:e.PropTypes.func.isRequired,onRemove:e.PropTypes.func.isRequired,onSend:e.PropTypes.func.isRequired,submittedParts:e.PropTypes.arrayOf(e.PropTypes.shape({id:e.PropTypes.string.isRequired,label:e.PropTypes.string.isRequired,submissionId:e.PropTypes.string.isRequired})),feedbacks:e.PropTypes.object},enumerable:!0},{key:"contextTypes",value:{executeAction:e.PropTypes.func.isRequired},enumerable:!0}]),i(GradingProblemFeedbackEditor,[{key:"componentWillReceiveProps",value:function componentWillReceiveProps(e){this.state.loading&&e.submittedParts&&(this.context.executeAction(u,{courseId:this.props.itemMetadata.get("course.id"),itemId:this.props.itemMetadata.get("id"),parts:e.submittedParts}),e.feedbacks&&(this.initializePartStates(e.submittedParts,e.feedbacks),this.setState({loading:!1})))}},{key:"initializePartStates",value:function initializePartStates(r,n){var e={};r.forEach(function(r){var i=n[r.id],s=i&&i.comments?i.comments:{},o=s.grading||s.content||t.create("");e[r.id]=new a(r.id,!t.isEmpty(o),o)}),this.setState({partStates:e})}},{key:"isLoaded",value:function isLoaded(){return this.props.submittedParts&&this.state.partStates&&this.props.feedbacks}},{key:"areAnyPartsChecked",value:function areAnyPartsChecked(){var e=this;return this.props.submittedParts.some(function(r){var t=e.state.partStates[r.id];return t&&t.isChecked})}},{key:"areAllCheckedPartsFilled",value:function areAllCheckedPartsFilled(){var e=this;return this.props.submittedParts.every(function(n){var r=e.state.partStates[n.id];return r&&(!r.isChecked||!t.isEmpty(r.cml))})}},{key:"allowSend",value:function allowSend(){var e=this;if(!this.isLoaded())return!1;return this.props.submittedParts.some(function(n){var r=e.props.feedbacks[n.id],a=e.state.partStates[n.id],i=r&&r.comments?r.comments:{},s=i.grading||i.content||t.create("");return a&&t.getInnerText(s)!==t.getInnerText(a.cml)})}},{key:"renderContent",value:function renderContent(){var t=this,n=this.props,a=n.submittedParts,i=n.isFocused;if(!this.isLoaded())return e.createElement("div",null,e.createElement("p",null,r("Loading...")));if(0===a.length)return e.createElement("div",null,e.createElement("p",null,r("You must submit the assignment before providing feedback on specific parts.")));var o=c("flag-action",{disabled:!this.allowSend()});return e.createElement("div",null,e.createElement("p",null,r("Which parts would you like to report?")),e.createElement("ul",{className:"part-list"},a.map(function(r,o){var n=t.state.partStates[r.id],c=n&&n.cml,a=n&&n.isChecked;return e.createElement("li",null,e.createElement("label",null,e.createElement("input",{type:"checkbox",checked:a,onChange:t.handleCheck.bind(t,r)}),r.label),a&&e.createElement(s,{cml:c,onChange:t.handleChange.bind(t,r),isFocused:i&&0===o,placeholder:"Describe problem"}))})),e.createElement("hr",{className:"flag-actions-divider"}),e.createElement("div",{className:"flag-actions"},e.createElement("a",{href:"#",className:o,onClick:this.handleSend},r("Send")),e.createElement("a",{href:"#",className:"flag-action",onClick:this.handleCancel},r(this.state.flagExists?"Remove":"Cancel"))))}},{key:"render",value:function render(){return e.createElement("div",{className:"rc-GradingProblemFeedbackEditor c-flag-editor"},this.renderContent())}}]),GradingProblemFeedbackEditor}(e.Component);module.exports=d(m,["ProgrammingGradingProblemsStore"],function(t,r){var e=t.ProgrammingGradingProblemsStore;return{submittedParts:e.getSubmittedParts(),feedbacks:e.getFeedbacks()}})});