{"id":287,"date":"2012-01-07T18:06:45","date_gmt":"2012-01-07T17:06:45","guid":{"rendered":"https:\/\/www.maurovalli.com\/?page_id=287"},"modified":"2020-06-28T23:32:17","modified_gmt":"2020-06-28T22:32:17","slug":"i-concerti","status":"publish","type":"page","link":"https:\/\/maurovalli.com\/en\/primary\/musician\/i-concerti\/","title":{"rendered":"Concerts"},"content":{"rendered":"<div class=\"gcs-timings\"><\/div><br><p>Mauro Valli&#8217;s upcoming concerts&#8230;<\/p>\n<p>\n<script>\n        function translate(text) {                                                  \/\/ DC process text looking for qTranslate tagging\n          if (!text) return '';\n          var q = 0;\n          var t = text;                                                             \/\/ working string\n          var p = t.indexOf('[:');                                                  \/\/ look for a language tagged part\n          if (p === -1) {\n            return text;                                                            \/\/ if no language tags, then return whole text\n          } else {\n            var o = t.substring(0, p);                                              \/\/ collect first part of output string\n          }\n\n          while (p !== -1) {\n            p = t.indexOf('[:'+'en'+']');                                        \/\/ find next current language part in lower case\n            if (p === -1) p = t.indexOf('[:'+'en'.toUpperCase()+']');            \/\/ also try current language in upper case!\n            if (p !== -1) {\n              t = t.substring(p+5);                                                 \/\/ move past language string (ALWAYS two characters long)\n              q = t.indexOf('[:');                                                  \/\/ look for end of current language part\n              if (q === -1) {\n                 return o + t;                                                      \/\/ finished if no further tag\n              } else {\n                o = o + t.substring(0, q);                                          \/\/ extend output with language part\n              }\n            }                                                  \n            q = t.indexOf('[:'+']');                                                \/\/ look for full end of language tagged part\n            if (q === -1) {\n              return o;                                                             \/\/ no end tag so finished\n            } else {\n              t = t.substring(q+3);                                                 \/\/ move past end tag\n            }\n\n            p = t.indexOf('[:');                                                    \/\/ look for a language tagged part\n            if (p === -1) {\n              return o + t;                                                         \/\/ if no language tags, then return rest of text\n            } else {\n              o = o + t.substring(0, p);                                            \/\/ gather up any intermediate text\n            }\n          };\n          return o;                                                                 \/\/ gather up any trailing text (should never reach this code)\n        };\n\n\t    function decodeLink(t) {\n\t      if ( (t) && (t.substring(0, 8) == '<a href=') ) {\t\t\t\t\t\t\t\/\/ description begins with a link\n\t      \tt = t.substring(9);\n\t      \tvar p = t.indexOf('\"');\t\t\t\t\t\t\t\t\t\t\t\t\/\/ look for end of string\n\t      \treturn t.substring(0, p);\t\t\t\t\t\t\t\t\t\t\t\t\/\/ return the link\n\t      } else if ( (t) && (t.substring(0, 8) == 'https:\/\/') ) {\t\t\t\t\t\/\/ link is not formatted\n\t     \treturn t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\/\/ return the link\n\t      } else if ( (t) && (t.substring(0, 7) == 'http:\/\/') ) {\t\t\t\t\t\/\/ link is not formatted\n\t     \treturn t;\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\/\/ return the link\n\t      } else {\n\t      \treturn '';\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\/\/ return nothing\n\t      }\n\t    }\n\n        jQuery(document).ready(function() {\n            \n            jQuery('#concerts').fullCalendar({\n                header: {\n                    left: 'today',\n                    center: 'title',\n                    right: 'prev,next'\n                },\n                editable: false,\n                eventLimit: false, \/\/ allow link when too many events,           \n                height: 'auto',\n                eventClick: function(event) {                                     \n                    if (!event.title) event.title = '(no title)';\n                    var match = event.title.match(\/^\\s*\\[\\s*([?])?\\s*(([A-Za-z0-9][A-Za-z0-9-]*)(\\\/(\\d*))?)?([_](\\w\\w*))?\\s*\\]\\s*(\\S.*)\/);\n                    if (match !== null) {\n                      if ( match[3] && match[5] ) { window.open('https:\/\/maurovalli.com\/en\/' + match[3].toLowerCase() + '\/' + match[5].toLowerCase()); }\n                      else {\n\t\t                  if ( event.location && event.location.match(\/^http[s]?:\\\/\\\/(.*)$\/) ) { window.open(event.location); }\n                      }\n                      return false;\n                    } else {                                                    \/\/ normally suppressed\n                      return false; \n                    }\n                  },\n\n                eventRender: function(event, element) {                 \t\/\/ Add qTip for each event.\n                    var start = moment(event.start).format('HH:mm');           \n                    var end = moment(event.end).format('HH:mm');               \n                    start = (start == '00:00') ? '' : start;            \t\t\/\/ all day\n                    end = (end == '00:00') ? '' : end;                  \t\t\/\/ all day\n                    if (!event.title) event.title = '(no title)';\n                    var match = event.title.match(\/^\\s*\\[\\s*([?])?\\s*(([A-Za-z0-9][A-Za-z0-9-]*)(\\\/(\\d*))?)?([_](\\w\\w*))?\\s*\\]\\s*(\\S.*)\/);\n                    if (true) {\n                        event.adjTitle = translate(event.title);\n                    } else {\n                        event.adjTitle = 'reserviert';\n                    }\n                    if (match !== null) {\n                        event.adjTitle = 'reserviert';\n                        if (true) {\n                            event.adjTitle = translate(match[8]);\n                        } else if ( (match[7]) && (match[7].toLowerCase() !== '') ) {\n                            event.adjTitle = translate(match[8]);\n                        } else if ( (match[3]) && (match[5]) ) {\n                            event.adjTitle = translate(match[8]);\n                    \t}\n                        element.html('<strong>' + start + '<\/strong> ' + event.adjTitle);\n                        if (match[1]) { element.addClass('gcs-provisional'); }\t\t\t\t\/\/ ? in tag\n                        if (match[3]) { element.addClass('gcs-'+match[3].toLowerCase()); }\n                    } else if (event.adjTitle == 'reserviert') {\n                        element.text(start + ' ' + event.adjTitle);\n                        element.addClass('gcs-reserved');\n                    } else {\n                        element.text(start + ' ' + event.adjTitle);\n                    }\n                    element.qtip({\n                        content: {\n\t                        text    : ( (start) ? start+((end)?'-':'')+end+'<br>' : '' )+ ( (event.adjTitle == 'reserviert') ? '' :\n    \t\t\t                ( (event.location) ? translate(event.location)+'<br>' : '' )+\n                \t\t\t    ( (event.description) ? ( (decodeLink(event.description)) ? '\\u21D2'+translate(event.description) : '' ) : '' ) ),\t\/\/ DC for Mauro\n                            title   : { text: event.adjTitle }\n                        },\n                        position: {\n                            my: 'top center',\n                            at: 'bottom center',\n                            container: false,\n                            viewport: jQuery(window),\n                            adjust: { }\n                        },\n                        style: {\n                            classes: event.tooltipStyleClass,\n                            width: 150\n                        },\n                        hide: {\n                            fixed: true,\n                        }\n     \n                    }); \/\/ end of element.qtip({\n                },\n                googleCalendarApiKey: 'AIzaSyDdk-o7XZOdjL-RxBYGzjJphqecEP66a30',    \n                events: 'https:\/\/www.googleapis.com\/calendar\/v3\/calendars\/68v2lv98103q0s5m23oahg91gc@group.calendar.google.com',      \n            });\n        });\n    <\/script>\n    <div id='concerts'><\/div><\/p>","protected":false},"excerpt":{"rendered":"<p>Mauro Valli&#8217;s upcoming concerts&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":18,"menu_order":20,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-287","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/pages\/287","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/comments?post=287"}],"version-history":[{"count":83,"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/pages\/287\/revisions"}],"predecessor-version":[{"id":2170,"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/pages\/287\/revisions\/2170"}],"up":[{"embeddable":true,"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/pages\/18"}],"wp:attachment":[{"href":"https:\/\/maurovalli.com\/en\/wp-json\/wp\/v2\/media?parent=287"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}