{"id":7160,"date":"2021-12-01T19:48:24","date_gmt":"2021-12-01T18:48:24","guid":{"rendered":"https:\/\/www.quicksted.com\/?post_type=product&#038;p=7160"},"modified":"2024-08-26T20:03:30","modified_gmt":"2024-08-26T18:03:30","slug":"s21-abap-odata-services","status":"publish","type":"product","link":"https:\/\/www.quicksted.com\/en_us\/kurse-schulungen\/s21-abap-odata-services\/","title":{"rendered":"[S21 ABAP oData Services]"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;3.22&#8243; custom_padding=&#8221;0px||||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;3.25&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; width=&#8221;100%&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_wc_breadcrumb _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_breadcrumb][et_pb_wc_cart_notice global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_cart_notice][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;3.25&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; width=&#8221;100%&#8221; custom_padding=&#8221;0px||||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_wc_images _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_images][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_wc_title _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_title][et_pb_wc_rating _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_rating][et_pb_wc_price _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_price][et_pb_wc_description _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_description][et_pb_code _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<button class='single_add_to_cart_button button alt' onclick='window.location.href = \"https:\/\/www.quicksted.com\/angebotsanfrage\/\";'>Angebotsanfrage<\/button>[\/et_pb_code][et_pb_wc_add_to_cart transform_translate_linked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_add_to_cart][et_pb_wc_meta _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_meta][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.25&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; width=&#8221;100%&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.25&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_wc_tabs _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;]\t\t\t\t\t[\/et_pb_wc_tabs][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row column_structure=&#8221;1_2,1_2&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><strong>Course Info:<\/strong><\/p>\n<p>[\/et_pb_text][et_pb_tabs _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_tab title=&#8221;Inhalt&#8221; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]Dieser <strong>Kurs<\/strong> beinhaltet: <strong>11 Units<\/strong> mit Insgesamt <strong>43 Quicks <\/strong>and <strong>37 \u00dcbungen.<\/strong>[\/et_pb_tab][et_pb_tab title=&#8221;Grundlagen&#8221; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>Kenntnisse in der ABAP-Programmierung.<\/p>\n<p>[\/et_pb_tab][et_pb_tab title=&#8221;Dauer&#8221; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>The playing time of the Quicks is about <strong>10 Stunden<\/strong>. Die Bearbeitungszeit der \u00dcbungen ist nat\u00fcrlich benutzerabh\u00e4ngig, wird von uns aber auf <strong>ca. 8 Stunden<\/strong> .<\/p>\n<p>[\/et_pb_tab][\/et_pb_tabs][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><strong>Trainer:<\/strong><\/p>\n<p>[\/et_pb_text][et_pb_team_member name=&#8221;Dr. Alexander Maetzing&#8221; position=&#8221;Dozent und Berater&#8221; image_url=&#8221;https:\/\/www.quicksted.com\/wp-content\/uploads\/2018\/05\/alexm.png&#8221; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]Alexander Maetzing ist zwar studierter Physiker, aber bereits seit mehr als 20 Jahren im SAP-Umfeld t\u00e4tig. Urspr\u00fcnglich aus der SAP-Basis stammend, erweiterte er seinen Fokus rasch um die Programmierung in SAP-Systemen. Die Erfahrungen aus beiden Welten flie\u00dfen so in seinen Wissenstransfer ein.[\/et_pb_team_member][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_code _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;]<div class=\"learndash-wrapper learndash-wrap learndash-shortcode-wrap learndash-shortcode-wrap-course_content-5557_5557_0\"><div class=\"learndash user_has_no_access\" id=\"learndash_post_5557\">\t\t<div class=\"learndash-wrapper\">\n\t\t\t\t\t\t<div class=\"ld-item-list ld-lesson-list ld-course-content-5557\" data-shortcode_instance=\"{&quot;course_id&quot;:5557,&quot;post_id&quot;:5557,&quot;group_id&quot;:0,&quot;paged&quot;:1,&quot;num&quot;:20,&quot;wrapper&quot;:true,&quot;user_id&quot;:0}\">\n\t\t\t<div class=\"ld-section-heading\">\n\n\t\t\t\t\n\t\t\t\t<h2>\n\t\t\t\tCourse Content\t\t\t\t<\/h2>\n\n\t\t\t\t\n\t\t\t\t<div class=\"ld-item-list-actions\" data-ld-expand-list=\"true\">\n\n\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"ld-expand-button ld-primary-background\" id=\"ld-expand-button-5557\" data-ld-expands=\"ld-item-list-5557\" data-ld-expand-text=\"Expand All\" data-ld-collapse-text=\"Collapse All\">\n\t\t\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon\"><\/span>\n\t\t\t\t\t\t\t<span class=\"ld-text\">Expand All<\/span>\n\t\t\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\t\t\t\t\t\t\n\t\t\t\t<\/div> <!--\/.ld-item-list-actions-->\n\t\t\t<\/div> <!--\/.ld-section-heading-->\n\n\t\t\t\n\t<div class=\"ld-item-list-items  ld-item-list-5557\" id=\"ld-item-list-5557\" data-ld-expand-id=\"ld-item-list-5557\" data-ld-expand-list=\"true\">\n\t\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5567 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5567\" data-ld-expand-id=\"ld-expand-5567\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5567\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-01 oData-Services] Architektur eines SAP-Systems\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t3 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5567\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5567\" id=\"ld-expand-5567\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/3 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5567\" id=\"ld-topic-list-5567\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5597\" id=\"ld-table-list-item-5597\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-01-odata-services-architektur-eines-sap-systems\/quick\/s21-01-01-odata-services-architektur-eines-sap-systems\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-01-01 oData-Services] Architektur eines SAP-Systems<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5598\" id=\"ld-table-list-item-5598\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-01-odata-services-architektur-eines-sap-systems\/quick\/s21-01-02-odata-services-sapgui-und-diag-protokoll\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-01-02 oData-Services] SAPGUI und DIAG-Protokoll<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5594\" id=\"ld-table-list-item-5594\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-01-odata-services-architektur-eines-sap-systems\/quick\/s21-01-03-odata-services-saps-neues-programmierkonzept\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-01-03 oData-Services] SAPs neues Programmierkonzept<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5566 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5566\" data-ld-expand-id=\"ld-expand-5566\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5566\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-02 oData-Services] Kommunikation \u00fcber das HTTP-Protokoll\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5566\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5566\" id=\"ld-expand-5566\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5566\" id=\"ld-topic-list-5566\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5595\" id=\"ld-table-list-item-5595\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-02-odata-services-kommunikation-ueber-das-http-protokoll\/quick\/s21-02-01-odata-services-icm-internet-communication-manager\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-02-01 oData-Services] ICM &#8211; Internet Communication Manager<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5596\" id=\"ld-table-list-item-5596\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-02-odata-services-kommunikation-ueber-das-http-protokoll\/quick\/s21-02-02-odata-services-icf-internet-communication-framework\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-02-02 oData-Services] ICF &#8211; Internet Communication Framework<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5591\" id=\"ld-table-list-item-5591\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-02-odata-services-kommunikation-ueber-das-http-protokoll\/quick\/s21-02-03-odata-services-bisherige-http-techniken\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-02-03 oData-Services] Bisherige HTTP-Techniken<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5592\" id=\"ld-table-list-item-5592\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-02-odata-services-kommunikation-ueber-das-http-protokoll\/quick\/s21-02-04-odata-services-icf-handlerklassen\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-02-04 oData-Services] ICF-Handlerklassen<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5565 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5565\" data-ld-expand-id=\"ld-expand-5565\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5565\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-03 oData-Services] SAP NetWeaver Gateway\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t3 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5565\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5565\" id=\"ld-expand-5565\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/3 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5565\" id=\"ld-topic-list-5565\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5593\" id=\"ld-table-list-item-5593\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-03-odata-services-sap-netweaver-gateway\/quick\/s21-03-01-odata-services-architektur-des-sap-netweaver-gateways\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-03-01 oData-Services] Architektur des SAP NetWeaver Gateways<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5589\" id=\"ld-table-list-item-5589\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-03-odata-services-sap-netweaver-gateway\/quick\/s21-03-02-odata-services-konfiguration-des-sap-netweaver-gateways\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-03-02 oData-Services] Konfiguration des SAP NetWeaver Gateways<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5590\" id=\"ld-table-list-item-5590\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-03-odata-services-sap-netweaver-gateway\/quick\/s21-03-03-odata-services-berechtigungen\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-03-03 oData-Services] Berechtigungen<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5564 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5564\" data-ld-expand-id=\"ld-expand-5564\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5564\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-04 oData-Services] Das oData Protokoll\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t3 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5564\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5564\" id=\"ld-expand-5564\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/3 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5564\" id=\"ld-topic-list-5564\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5636\" id=\"ld-table-list-item-5636\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-04-odata-services-das-odata-protokoll\/quick\/s21-04-01-odata-services-aufbau-des-odata-protokolls\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-04-01 oData-Services] Aufbau des oData Protokolls<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5637\" id=\"ld-table-list-item-5637\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-04-odata-services-das-odata-protokoll\/quick\/s21-04-02-odata-services-datenstruktur-innerhalb-des-odata-protokolls\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-04-02 oData-Services] Datenstruktur innerhalb des oData Protokolls<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5638\" id=\"ld-table-list-item-5638\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-04-odata-services-das-odata-protokoll\/quick\/s21-04-03-odata-services-datenzugriff-ueber-das-odata-protokoll\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-04-03 oData-Services] Datenzugriff \u00fcber das oData-Protokoll<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5563 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5563\" data-ld-expand-id=\"ld-expand-5563\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5563\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-05 oData-Services] Erstellen eines einfachen oData-Service\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5563\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5563\" id=\"ld-expand-5563\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5563\" id=\"ld-topic-list-5563\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5632\" id=\"ld-table-list-item-5632\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-05-odata-services-erstellen-eines-einfachen-odata-service\/quick\/s21-05-01-odata-services-projekte-im-service-builder\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-05-01 oData-Services] Projekte im Service Builder<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5633\" id=\"ld-table-list-item-5633\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-05-odata-services-erstellen-eines-einfachen-odata-service\/quick\/s21-05-02-odata-services-datenmodell-zum-projekt\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-05-02 oData-Services] Datenmodell zum Projekt<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5634\" id=\"ld-table-list-item-5634\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-05-odata-services-erstellen-eines-einfachen-odata-service\/quick\/s21-05-03-odata-services-klassen-zum-projekt\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-05-03 oData-Services] Klassen zum Projekt<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5635\" id=\"ld-table-list-item-5635\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-05-odata-services-erstellen-eines-einfachen-odata-service\/quick\/s21-05-04-odata-services-veroeffentlichen-eines-odata-service\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-05-04 oData-Services] Ver\u00f6ffentlichen eines oData-Service<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5560 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5560\" data-ld-expand-id=\"ld-expand-5560\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5560\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-06 oData-Services] oData-Lesevorg\u00e4nge\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5560\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5560\" id=\"ld-expand-5560\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5560\" id=\"ld-topic-list-5560\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5626\" id=\"ld-table-list-item-5626\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-06-odata-services-odata-lesevorgaenge\/quick\/s21-06-01-odata-services-methoden-in-den-provider-klassen\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-06-01 oData-Services] Methoden in den Provider Klassen<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5627\" id=\"ld-table-list-item-5627\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-06-odata-services-odata-lesevorgaenge\/quick\/s21-06-02-odata-services-implementierung-der-query-operation\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-06-02 oData-Services] Implementierung der Query-Operation<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-7086\" id=\"ld-table-list-item-7086\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-06-odata-services-odata-lesevorgaenge\/quick\/s21-06-03-odata-services-sap-gateway-client\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-06-03 oData-Services] SAP Gateway Client<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5625\" id=\"ld-table-list-item-5625\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-06-odata-services-odata-lesevorgaenge\/quick\/s21-06-04-odata-services-implementierung-der-read-operation\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-06-04 oData-Services] Implementierung der Read-Operation<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5561 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5561\" data-ld-expand-id=\"ld-expand-5561\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5561\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-07 oData-Services] oData-Queryoptionen\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t5 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5561\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5561\" id=\"ld-expand-5561\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/5 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5561\" id=\"ld-topic-list-5561\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5660\" id=\"ld-table-list-item-5660\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-07-odata-services-odata-queryoptionen\/quick\/s21-07-01-odata-services-odata-queryoptionen-projektion\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-07-01 oData-Services] oData-Queryoptionen &#8211; Projektion<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5662\" id=\"ld-table-list-item-5662\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-07-odata-services-odata-queryoptionen\/quick\/s21-07-02-odata-services-odata-queryoptionen-sortierung\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-07-02 oData-Services] oData-Queryoptionen &#8211; Sortierung<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5656\" id=\"ld-table-list-item-5656\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-07-odata-services-odata-queryoptionen\/quick\/s21-07-03-odata-services-odata-queryoptionen-zaehlen\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-07-03 oData-Services] oData-Queryoptionen &#8211; Z\u00e4hlen<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5657\" id=\"ld-table-list-item-5657\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-07-odata-services-odata-queryoptionen\/quick\/s21-07-04-odata-services-odata-queryoptionen-pagination\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-07-04 oData-Services] oData-Queryoptionen &#8211; Pagination<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5661\" id=\"ld-table-list-item-5661\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-07-odata-services-odata-queryoptionen\/quick\/s21-07-05-odata-services-odata-queryoptionen-filterung\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-07-05 oData-Services] oData-Queryoptionen &#8211; Filterung<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5558 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5558\" data-ld-expand-id=\"ld-expand-5558\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5558\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-08 oData-Services] Navigation im Datenmodell\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5558\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5558\" id=\"ld-expand-5558\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5558\" id=\"ld-topic-list-5558\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5654\" id=\"ld-table-list-item-5654\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-08-odata-services-navigation-im-datenmodell\/quick\/s21-08-01-odata-services-erstellen-einer-zweiten-entitaet\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-08-01 oData-Services] Erstellen einer zweiten Entit\u00e4t<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5655\" id=\"ld-table-list-item-5655\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-08-odata-services-navigation-im-datenmodell\/quick\/s21-08-02-odata-services-assoziation-zwischen-entitaeten\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-08-02 oData-Services] Assoziation zwischen Entit\u00e4ten<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5653\" id=\"ld-table-list-item-5653\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-08-odata-services-navigation-im-datenmodell\/quick\/s21-08-03-odata-services-navigation-durch-assoziationen\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-08-03 oData-Services] Navigation durch Assoziationen<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-7098\" id=\"ld-table-list-item-7098\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-08-odata-services-navigation-im-datenmodell\/quick\/s21-08-04-odata-services-odata-queryoptionen-inlining\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-08-04 oData-Services]  oData-Queryoptionen &#8211; Inlining<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5580 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5580\" data-ld-expand-id=\"ld-expand-5580\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5580\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-10 oData-Services] \u00c4nderungen \u00fcber das oData-Protokoll\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5580\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5580\" id=\"ld-expand-5580\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5580\" id=\"ld-topic-list-5580\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5684\" id=\"ld-table-list-item-5684\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-10-odata-services-aenderungen-ueber-das-odata-protokoll\/quick\/s21-10-01-odata-services-entitaet-erstellen-create\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-10-01 oData-Services] Entit\u00e4t erstellen (CREATE)<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5681\" id=\"ld-table-list-item-5681\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-10-odata-services-aenderungen-ueber-das-odata-protokoll\/quick\/s21-10-02-odata-services-entitaet-veraendern-update\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-10-02 oData-Services] Entit\u00e4t ver\u00e4ndern (UPDATE)<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5682\" id=\"ld-table-list-item-5682\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-10-odata-services-aenderungen-ueber-das-odata-protokoll\/quick\/s21-10-03-odata-services-entitaet-veraendern-patch\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-10-03 oData-Services] Entit\u00e4t ver\u00e4ndern (PATCH)<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-5685\" id=\"ld-table-list-item-5685\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-10-odata-services-aenderungen-ueber-das-odata-protokoll\/quick\/s21-10-04-odata-services-entitaet-loeschen-delete\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-10-04 oData-Services] Entit\u00e4t l\u00f6schen (DELETE)<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\n<div class=\"ld-item-list-item ld-item-lesson-item ld-lesson-item-5581 is_not_sample learndash-not-available learndash-incomplete ld-expandable\" id=\"ld-expand-5581\" data-ld-expand-id=\"ld-expand-5581\" data-ld-tooltip=\"You don&#039;t currently have access to this content\">\n\t<div class=\"ld-item-list-item-preview\">\n\t\t\n\t\t<script>\n\t\tjQuery(document).ready(function( $ ){\n\t\t$('body').on('click', '.ld-item-name', function(e) {\n\n\t\te.preventDefault();\n\t\tld_expand_element( $(this) );\n\t\tpositionTooltips();\n\n\t\t});\n\t\t\n\t\tfunction ld_expand_button_state( state, elm ) {\n\t\tvar $expandText = ( $( elm )[0].hasAttribute( 'data-ld-expand-text' ) ) ? $( elm ).attr( 'data-ld-expand-text' ) : 'Expand';\n\t\tvar $collapseText = ( $( elm )[0].hasAttribute( 'data-ld-collapse-text' ) ) ? $( elm ).attr( 'data-ld-collapse-text' ) : 'Collapse';\n\n\t\tif ( 'collapse' == state ) {\n\t\t\t$( elm ).removeClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $expandText );\n\t\t\t}\n\t\t} else {\n\t\t\t$( elm ).addClass( 'ld-expanded' );\n\t\t\tif ( 'false' !== $collapseText ) {\n\t\t\t\t$( elm ).find( '.ld-text' ).text( $collapseText );\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction ld_expand_element( elm, collapse ) {\n\t\tif ( collapse === undefined ) {\n\t\t\tcollapse = false;\n\t\t}\n\n\t\tvar elmParentWrapper = elm.parents( '.ld-focus-sidebar' );\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\tvar elmParentWrapper = elm.parents( '.learndash-wrapper' );\n\t\t}\n\t\tif ( ( 'undefined' === typeof elmParentWrapper ) || ( ! elmParentWrapper.length ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t\/\/ Get the button's state\n\t\tvar $expanded = $( elm ).hasClass( 'ld-expanded' );\n\n\t\t\/\/ Get the element to expand\n\t\tif ( $( elm )[0] && $( elm )[0].hasAttribute( 'data-ld-expands' ) ) {\n\t\t\tvar $expands      = $( elm ).attr( 'data-ld-expands' );\n\t\t\tif ( ( 'undefined' === typeof $expands ) || ( ! $expands.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandElm    = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\tif ( ( 'undefined' === typeof $expandElm ) || ( ! $expandElm.length ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $expandsChild = $( $expandElm ).find( '.ld-item-list-item-expanded' );\n\n\t\t\tif ( $expandsChild.length ) {\n\t\t\t\t$expandElm = $expandsChild;\n\t\t\t}\n\n\t\t\tvar totalHeight = 0;\n\n\t\t\t$expandElm.find( '> *' ).each( function() {\n\t\t\t\ttotalHeight += $( this ).outerHeight();\n\t\t\t} );\n\n\t\t\t$expandElm.attr( 'data-height', '' + ( totalHeight + 50 ) + '' );\n\n\t\t\t\/\/ If the element expands a list\n\n\t\t\tif ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' )[0].hasAttribute( 'data-ld-expand-list' ) ) {\n\n\t\t\t\tvar $container = $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' );\n\t\t\t\tvar innerButtons = $container.find( '.ld-expand-button' );\n\t\t\t\tif ( $expanded ) {\n\t\t\t\t\tld_expand_button_state( 'collapse', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ), true );\n\t\t\t\t\t} );\n\t\t\t\t} else {\n\t\t\t\t\tld_expand_button_state( 'expand', elm );\n\t\t\t\t\tinnerButtons.each( function() {\n\t\t\t\t\t\tld_expand_element( $( this ) );\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\t\/\/ If the element expands an item\n\t\t\t} else if ( $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ).length ) {\n\t\t\t\tif ( $expanded || true == collapse ) {\n\t\t\t\t\tld_expand_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t} else {\n\t\t\t\t\tld_collapse_singular_item( elm, $(elmParentWrapper).find( '[data-ld-expand-id=\"'+ $expands+'\"]' ), $expandElm );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconsole.log( 'LearnDash: No expandable content was found' );\n\t\t\t}\n\t\t\tpositionTooltips();\n\t\t}\n\t}\n\n\tfunction ld_expand_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.removeClass( 'ld-expanded' );\n\t\tld_expand_button_state( 'collapse', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': 0,\n\t\t} );\n\t}\n\n\tfunction ld_collapse_singular_item( elm, $containerElm, $expandElm ) {\n\t\t$containerElm.addClass( 'ld-expanded' );\n\n\t\tld_expand_button_state( 'expand', elm );\n\n\t\t$expandElm.css( {\n\t\t\t'max-height': $expandElm.data( 'height' ),\n\t\t} );\n\t}\n\t\t\n\tfunction positionTooltips() {\n\t\tif ( 'undefined' !== typeof $tooltips ) {\n\t\t\tsetTimeout( function() {\n\t\t\t\t$tooltips.each( function() {\n\t\t\t\t\tvar anchor = $( this );\n\t\t\t\t\tvar $rel_id = anchor.attr( 'data-ld-tooltip-id' );\n\t\t\t\t\t$tooltip = $( '#ld-tooltip-' + $rel_id );\n\n\t\t\t\t\tif ( anchor.hasClass( 'ld-item-list-item' ) ) {\n\t\t\t\t\t\t\/\/anchor = anchor.find('.ld-item-title');\n\t\t\t\t\t\tanchor = anchor.find( '.ld-status-icon' );\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar parent_focus = jQuery( anchor ).parents( '.ld-focus-sidebar' );\n\t\t\t\t\tvar left_post = anchor.offset().left + ( anchor.outerWidth() + 10 );\n\t\t\t\t\tif ( parent_focus.length ) {\n\t\t\t\t\t\tleft_post = anchor.offset().left + ( anchor.outerWidth() - 18 );\n\t\t\t\t\t}\n\n\t\t\t\t\t\/\/ Get the main content height\n\t\t\t\t\tvar focusModeMainContentHeight = $( '.ld-focus-main' ).height();\n\n\t\t\t\t\t\/\/ Current tooltip height\n\t\t\t\t\tvar focusModeCurrentTooltipHeight = anchor.offset().top + -3;\n\n\t\t\t\t\t\/\/ Position tooltip depending on focus mode or not\n\t\t\t\t\tif ( ! focusModeMainContentHeight ) {\n\t\t\t\t\t\tvar anchorTop = anchor.offset().top + -3;\n\t\t\t\t\t\tvar anchorLeft = anchor.offset().left;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tanchorTop = focusModeCurrentTooltipHeight < focusModeMainContentHeight ? focusModeCurrentTooltipHeight : focusModeMainContentHeight;\n\t\t\t\t\t\tanchorLeft = left_post;\n\t\t\t\t\t}\n\n\t\t\t\t\t$tooltip.css( {\n\t\t\t\t\t\ttop: anchorTop,\n\n\t\t\t\t\t\t\/\/'left' : anchor.offset().left + (anchor.outerWidth() \/ 2),\n\t\t\t\t\t\t\/\/'left': left_post, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\tleft: anchorLeft, \/\/anchor.offset().left + (anchor.outerWidth() +10),\n\t\t\t\t\t\t'margin-left': 0,\n\t\t\t\t\t\t'margin-right': 0,\n\t\t\t\t\t} ).removeClass( 'ld-shifted-left ld-shifted-right' );\n\t\t\t\t\tif ( $tooltip.offset().left <= 0 ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-left': Math.abs( $tooltip.offset().left ) } ).addClass( 'ld-shifted-left' );\n\t\t\t\t\t}\n\t\t\t\t\tvar $tooltipRight = $( window ).width() - ( $tooltip.offset().left + $tooltip.outerWidth() );\n\t\t\t\t\tif ( 0 >= $tooltipRight && 360 < $( window ).width() ) {\n\t\t\t\t\t\t$tooltip.css( { 'margin-right': Math.abs( $tooltipRight ) } ).addClass( 'ld-shifted-right' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}, 500 );\n\t\t}\n\t}\n\t\t\n\t\t});\n\t\t<\/script>\n\n        <div class=\"ld-item-name ld-primary-color-hover\" data-ld-expands=\"ld-expand-5581\">\n\t\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\t\t\t<div class=\"ld-item-title\">\n\t\t\t\t[S21-11 oData-Services] Fehlerbehandlung bei oData-Services\n\t\t\t\t\t<span class=\"ld-item-components\">\n\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-item-component\">\n\t\t\t\t\t\t\t4 Quicks\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\t\t<\/span> <!--\/.ld-item-components-->\n\t\t\t\t\t\t\t\t\t\n\t\t\t<\/div> <!--\/.ld-item-title-->\n        <\/div>\n\n\t\t\n\t\t<div class=\"ld-item-details\">\n\t\t\t\n\t\t\t\t<div class=\"ld-expand-button ld-button-alternate\" data-ld-expands=\"ld-expand-5581\" data-ld-expand-text=\"Expand\" data-ld-collapse-text=\"Collapse\">\n\t\t\t\t\t<span class=\"ld-icon-arrow-down ld-icon ld-primary-background\"><\/span>\n\t\t\t\t\t<span class=\"ld-text ld-primary-color\">Expand<\/span>\n\t\t\t\t<\/div> <!--\/.ld-expand-button-->\n\n\t\t\t\t\t\t<\/div> <!--\/.ld-item-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-item-list-item-preview-->\n\t\t\t<div class=\"ld-item-list-item-expanded\">\n\t\t\t\n<div class=\"ld-table-list ld-topic-list ld-no-pagination ld-expand-5581\" id=\"ld-expand-5581\">\n\n\t<div class=\"ld-table-list-header ld-primary-background\">\n\n\t\t\n\t\t<div class=\"ld-table-list-title\">\n\t\t\t<span class=\"ld-item-icon\">\n\t\t\t\t<span class=\"ld-icon ld-icon-content\"><\/span>\n\t\t\t<\/span>\n\t\t\t<span class=\"ld-text\">\n\t\t\t\tUnit Content\t\t\t<\/span>\n\t\t<\/div> <!--\/.ld-tablet-list-title-->\n\t\t<div class=\"ld-table-list-lesson-details\">\n\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-progress\">\n\t\t\t\t\t0% Complete\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"ld-lesson-list-steps\">\n\t\t\t\t\t0\/4 Steps\t\t\t\t\t<\/span>\n\t\t\t\t\t\t\t\n\t\t\t\n\t\t\t\n\t\t<\/div> <!--\/.ld-table-list-lesson-details-->\n\n\t\t\n\t<\/div> <!--\/.ld-table-list-header-->\n\n\t<div class=\"ld-table-list-items ld-topic-list-5581\" id=\"ld-topic-list-5581\" data-ld-expand-list>\n\n\t\t<div class=\"ld-table-list-item ld-table-list-item-5679\" id=\"ld-table-list-item-5679\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-11-odata-services-fehlerbehandlung-bei-odata-services\/quick\/s21-11-01-odata-services-http-statuscodes\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-11-01 oData-Services] HTTP-Statuscodes<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-7123\" id=\"ld-table-list-item-7123\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-11-odata-services-fehlerbehandlung-bei-odata-services\/quick\/s21-11-02-odata-services-loghandling-bei-odata-services\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-11-02 oData-Services] Loghandling bei oData-Services<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-7125\" id=\"ld-table-list-item-7125\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-11-odata-services-fehlerbehandlung-bei-odata-services\/quick\/s21-11-03-odata-services-tracing-von-odata-services\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-11-03 oData-Services] Tracing von oData-Services<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n<div class=\"ld-table-list-item ld-table-list-item-7127\" id=\"ld-table-list-item-7127\">\n\t<a class=\"ld-table-list-item-preview ld-primary-color-hover ld-topic-row learndash-incomplete\" href=\"https:\/\/www.quicksted.com\/en_us\/kurs\/s21-odata-services\/unit\/s21-11-odata-services-fehlerbehandlung-bei-odata-services\/quick\/s21-11-04-odata-services-fehlererzeugung\/\">\n\t\t\n\t\t<div class=\"ld-status-icon ld-status-incomplete\"><\/div>\n\t\t\t\t<span class=\"ld-topic-title\">[S21-11-04 oData-Services] Fehlererzeugung<\/span> \t<\/a>\n\t<\/div> <!--\/.ld-table-list-item-->\n\n\t<\/div> <!--\/.ld-table-list-items-->\n\n\t<div class=\"ld-table-list-footer\">\n\t\t\t<\/div> <!--\/.ld-table-list-footer-->\n\n<\/div> <!--\/.ld-table-list-->\n\n\t\t<\/div> <!--\/.ld-item-list-item-expanded-->\n\t<\/div> <!--\/.ld-item-list-item-->\n\t\t<\/div> <!--\/.ld-item-list-items-->\n\n\t\t<\/div> <!--\/.ld-item-list-->\n\n\t\t\t<\/div> <!--\/.learndash-wrapper-->\n\t\t<\/div><\/div>[\/et_pb_code][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.8&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_wc_upsells _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_upsells][et_pb_wc_related_products _builder_version=&#8221;3.0.47&#8243; global_colors_info=&#8221;{}&#8221;][\/et_pb_wc_related_products][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>","protected":false},"excerpt":{"rendered":"<p>Einstieg in die Erstellung einfacher oData-Services im SAP NetWeaver GateWay.<\/p>","protected":false},"featured_media":9498,"template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"Das auf einem HTTP-Datenaustasch beruhende oData-Protokoll ist das von SAP verwendete Standardprotokoll, um Daten aus einen SAP NetWeaver-basierten Backend-System zu einem SAPUI5- bzw. Fiori-basierten Frontend zu transferieren. Um auf oData-Anfragen reagieren und oData-konforme Antworten liefern zu k\u00f6nnen, stellt SAP den Entwicklern das auf ABAP beruhende oData-Framework SAP NetWeaver Gateway zur Verf\u00fcgung.\r\n\r\nDieser Kurs erl\u00e4utert zun\u00e4chst die Grundlagen der HTTP-Kommunikation bei SAP um dann die Architektur des SAP NetWeaver Gateways zu beschreiben. Anschlie\u00dfend wird das oData-Protokoll der Version V2 (der von SAP am weitesten unterst\u00fctzten Version) vorgestellt.\r\n\r\nIm Programmierteil wird zun\u00e4chst ein einfacher oData-Service entwickelt, und an diesem Beispiel die unterschiedlichen Ergebniss\u00e4tze (Entit\u00e4t bzw. Entit\u00e4tsmenge) vorgestellt. Darauf aufbauend werden die unterschiedlichen Zugriffsarten auf eine Enit\u00e4t (CRUD: Create, Read, Update, Delete) und auf eine Entit\u00e4tsmenge (Q: Query mit allen Queryoptionen) beschrieben.\r\n\r\n<img class=\"alignnone size-full wp-image-5276\" src=\"https:\/\/www.quicksted.com\/wp-content\/uploads\/2019\/08\/QST-Siegel_ohne-Used-Look-15\u00b0.png\" alt=\"\" width=\"258.4\" height=\"228.2\" \/>","_et_gb_content_width":""},"product_cat":[25],"product_tag":[],"_links":{"self":[{"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/product\/7160"}],"collection":[{"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/types\/product"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/media\/9498"}],"wp:attachment":[{"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/media?parent=7160"}],"wp:term":[{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/product_cat?post=7160"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.quicksted.com\/en_us\/wp-json\/wp\/v2\/product_tag?post=7160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}