Gratis infografiske skabeloner: Tilpas med StoryboardThat (2024)

`; this._targetInput.insertAdjacentHTML('afterend', dHtm); this._targetInput.nextElementSibling.insertAdjacentElement('beforeend', this._targetInput); } this._newVoiceId = `v_searchByVoice_${this._instanceIndex}`; this._voiceTextElmId = `v_voiceTxtEl_${this._instanceIndex}`; var newVoice = document.getElementById(this._newVoiceId); if ((this._targetInput || this._targetInputList) && !newVoice) { let sHtm = ` `; if (!this._textableInstance) { this._targetInput.insertAdjacentHTML('afterend', sHtm); this._targetInput.parentElement.classList.add('v_hasVoiceSearch'); } else { if (this._targetSelectionElm.parentElement === null) { var summernoteToolBar = document.getElementById('summernote-disconnected-toolbar'); if (summernoteToolBar) { var rowTwo = summernoteToolBar.getElementsByClassName('note-row2')[0]; this._targetSelectionElm = rowTwo; } } if (this._targetSelectionElm) { this._targetSelectionElm.insertAdjacentHTML('beforeend', sHtm); this._targetSelectionElm.classList.add('v_hasVoiceSearch'); } else { return true; } } } return false; }; SpeechToTextHelper.prototype.SetupRecognition = function () { let finalTranscript = ''; let voiceTutElm = document.getElementById(this._voiceTextElmId); let selectedInstanceIndex = this._instanceIndex; this._recState.recognition = new this._speechRecognition(); this._recState.recognition.continuous = false; //this._recState.recognition.lang = 'en-US'; this._recState.recognition.interimResults = true; if ((this._targetInput || this._targetInputList) && voiceTutElm) { this._recState.recognition.onresult = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; let interimTranscript = ""; for (let i = e.resultIndex; i < e.results.length; i += 1) { const { transcript } = e.results[i][0]; if (e.results[i].isFinal) { finalTranscript += transcript; } else { interimTranscript += transcript; } } thisPointer._recState.finalSpeechVal = `${finalTranscript} ${interimTranscript}`.trim(); if (!thisPointer._textableInstance) { thisPointer._targetInput.value = thisPointer._recState.finalSpeechVal; } else { if (thisPointer._targetInputList.length === 0) { var shapeId = thisPointer._targetElmTracking.split('_textarea')[0]; var textArea = document.getElementById(shapeId).getElementsByClassName("note-editable")[0].firstElementChild; var shape = document.getElementById(shapeId); if (textArea) { textArea.classList.add(thisPointer._targetElmTracking); thisPointer._targetInputList = shape.getElementsByClassName(thisPointer._targetElmTracking); console.log('Speech to text self heal'); } else { Logger.logErrorMessage("SpeechToText.OnResults", new Error('No target input list')); console.log('Text to speech error'); } } for (var i = 0; i < thisPointer._targetInputList.length; i++) { thisPointer._targetInputList[i].innerText = thisPointer._recState.finalSpeechVal; } } voiceTutElm.innerText = thisPointer._recState.finalSpeechVal; }; this._recState.recognition.onspeechstart = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.finalSpeechVal = ''; finalTranscript = ''; }; this._recState.recognition.onspeechend = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.recognition.stop(); }; this._recState.recognition.onend = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; var voiceTutElm = document.getElementById(thisPointer._voiceTextElmId); if (thisPointer._recState.finalSpeechVal.length >= 2) { if (!thisPointer._textableInstance) { if (thisPointer._targetInput.nodeName.toLowerCase() !== 'input') { thisPointer._targetInput.innerText = thisPointer._recState.finalSpeechVal; } else { thisPointer._targetInput.value = thisPointer._recState.finalSpeechVal; } thisPointer._targetInput.dispatchEvent(new Event('change')); } else { for (var i = 0; i < thisPointer._targetInputList.length; i++) { var inputElm = thisPointer._targetInputList[i]; if (inputElm.nodeName.toLowerCase() !== 'input') { var selectedFontElm = document.getElementsByClassName('note-current-fontname')[0]; var selectedFontSize = document.getElementsByClassName('note-current-fontsize')[0]; inputElm.innerText = thisPointer._recState.finalSpeechVal; if (selectedFontElm) { inputElm.style.fontFamily = selectedFontElm.style.fontFamily; } if (selectedFontSize) { inputElm.style.fontSize = `${selectedFontSize.innerText}px`; } } else { inputElm.value = thisPointer._recState.finalSpeechVal; } inputElm.dispatchEvent(new Event('change')); } } if (thisPointer._targetActionElm) { thisPointer._targetActionElm.click(); } document.body.classList.remove('v_listening'); } if (!thisPointer._recState.finalSpeechVal.length) { voiceTutElm.innerText = thisPointer._recState.noSpeech; thisPointer._listeningTimeout = setTimeout(function () { document.body.classList.remove('v_listening'); }, 1500); } }; this._recState.recognition.onerror = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.recognition.stop(); console.error('Speech recognition error:', e.error); if (e.error.includes('not-allowed')) { document.body.classList.add('v_speechNotAllowed'); } throw e.error; }; } }; SpeechToTextHelper.prototype.ShowTutorialToolTip = function () { var elm = document.getElementById(`v_voiceInstructionsTip_${this._instanceIndex}`); elm.style.display = 'flex'; }; SpeechToTextHelper.prototype.HideTutorialToolTip = function () { var elm = document.getElementById(`v_voiceInstructionsTip_${this._instanceIndex}`); if (elm) { elm.style.display = 'none'; sessionStorage.setItem(`v_isVoiceTutorialViewed_${this._instanceIndex}`, 'true'); } } SpeechToTextHelper.prototype.AddEventListeners = function () { let selectedInstanceIndex = this._instanceIndex; var speechButton = document.getElementById(this._newVoiceId); this._targetSelectionElm.addEventListener('mouseover', function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.CheckForTutorial(); }); speechButton.addEventListener('click', function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; if (thisPointer._listeningTimeout) { clearTimeout(thisPointer._listeningTimeout); } thisPointer._recState.finalSpeechVal = ''; let tutorialTxt = document.getElementById(thisPointer._voiceTextElmId); let tutorialInput = thisPointer._targetInput; thisPointer.HideTutorialToolTip(); if (thisPointer._recState.recognition != null && !document.body.classList.contains('v_listening')) { document.body.classList.add('v_listening'); if (tutorialTxt) { tutorialTxt.innerText = thisPointer._recState.listening; } if (tutorialInput) { if (tutorialInput.nodeName.toLowerCase() === 'input') { tutorialInput.setAttribute('placeholder', thisPointer._recState.listening); } else { tutorialInput.innerText = thisPointer._recState.listening; } } thisPointer._recState.recognition.start(); } else { document.body.classList.remove('v_listening'); thisPointer._recState.recognition.stop(); } }); var toolTipCloser = document.getElementById(`v_toolTipCloser_${selectedInstanceIndex}`); toolTipCloser.addEventListener('click', function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.HideTutorialToolTip(); }); }; SpeechToTextHelper.prototype.CheckForTutorial = function () { let selectedInstanceIndex = this._instanceIndex; let isTutorialViewed = sessionStorage.getItem(`v_isVoiceTutorialViewed_${this._instanceIndex}`); if (isTutorialViewed == null || isTutorialViewed === 'false') { this.ShowTutorialToolTip(); setTimeout(function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.HideTutorialToolTip(); }, 5000); } };
`; this._targetInput.insertAdjacentHTML('afterend', dHtm); this._targetInput.nextElementSibling.insertAdjacentElement('beforeend', this._targetInput); } this._newVoiceId = `v_searchByVoice_${this._instanceIndex}`; this._voiceTextElmId = `v_voiceTxtEl_${this._instanceIndex}`; var newVoice = document.getElementById(this._newVoiceId); if ((this._targetInput || this._targetInputList) && !newVoice) { let sHtm = ` `; if (!this._textableInstance) { this._targetInput.insertAdjacentHTML('afterend', sHtm); this._targetInput.parentElement.classList.add('v_hasVoiceSearch'); } else { if (this._targetSelectionElm.parentElement === null) { var summernoteToolBar = document.getElementById('summernote-disconnected-toolbar'); if (summernoteToolBar) { var rowTwo = summernoteToolBar.getElementsByClassName('note-row2')[0]; this._targetSelectionElm = rowTwo; } } if (this._targetSelectionElm) { this._targetSelectionElm.insertAdjacentHTML('beforeend', sHtm); this._targetSelectionElm.classList.add('v_hasVoiceSearch'); } else { return true; } } } return false; }; SpeechToTextHelper.prototype.SetupRecognition = function () { let finalTranscript = ''; let voiceTutElm = document.getElementById(this._voiceTextElmId); let selectedInstanceIndex = this._instanceIndex; this._recState.recognition = new this._speechRecognition(); this._recState.recognition.continuous = false; //this._recState.recognition.lang = 'en-US'; this._recState.recognition.interimResults = true; if ((this._targetInput || this._targetInputList) && voiceTutElm) { this._recState.recognition.onresult = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; let interimTranscript = ""; for (let i = e.resultIndex; i < e.results.length; i += 1) { const { transcript } = e.results[i][0]; if (e.results[i].isFinal) { finalTranscript += transcript; } else { interimTranscript += transcript; } } thisPointer._recState.finalSpeechVal = `${finalTranscript} ${interimTranscript}`.trim(); if (!thisPointer._textableInstance) { thisPointer._targetInput.value = thisPointer._recState.finalSpeechVal; } else { if (thisPointer._targetInputList.length === 0) { var shapeId = thisPointer._targetElmTracking.split('_textarea')[0]; var textArea = document.getElementById(shapeId).getElementsByClassName("note-editable")[0].firstElementChild; var shape = document.getElementById(shapeId); if (textArea) { textArea.classList.add(thisPointer._targetElmTracking); thisPointer._targetInputList = shape.getElementsByClassName(thisPointer._targetElmTracking); console.log('Speech to text self heal'); } else { Logger.logErrorMessage("SpeechToText.OnResults", new Error('No target input list')); console.log('Text to speech error'); } } for (var i = 0; i < thisPointer._targetInputList.length; i++) { thisPointer._targetInputList[i].innerText = thisPointer._recState.finalSpeechVal; } } voiceTutElm.innerText = thisPointer._recState.finalSpeechVal; }; this._recState.recognition.onspeechstart = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.finalSpeechVal = ''; finalTranscript = ''; }; this._recState.recognition.onspeechend = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.recognition.stop(); }; this._recState.recognition.onend = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; var voiceTutElm = document.getElementById(thisPointer._voiceTextElmId); if (thisPointer._recState.finalSpeechVal.length >= 2) { if (!thisPointer._textableInstance) { if (thisPointer._targetInput.nodeName.toLowerCase() !== 'input') { thisPointer._targetInput.innerText = thisPointer._recState.finalSpeechVal; } else { thisPointer._targetInput.value = thisPointer._recState.finalSpeechVal; } thisPointer._targetInput.dispatchEvent(new Event('change')); } else { for (var i = 0; i < thisPointer._targetInputList.length; i++) { var inputElm = thisPointer._targetInputList[i]; if (inputElm.nodeName.toLowerCase() !== 'input') { var selectedFontElm = document.getElementsByClassName('note-current-fontname')[0]; var selectedFontSize = document.getElementsByClassName('note-current-fontsize')[0]; inputElm.innerText = thisPointer._recState.finalSpeechVal; if (selectedFontElm) { inputElm.style.fontFamily = selectedFontElm.style.fontFamily; } if (selectedFontSize) { inputElm.style.fontSize = `${selectedFontSize.innerText}px`; } } else { inputElm.value = thisPointer._recState.finalSpeechVal; } inputElm.dispatchEvent(new Event('change')); } } if (thisPointer._targetActionElm) { thisPointer._targetActionElm.click(); } document.body.classList.remove('v_listening'); } if (!thisPointer._recState.finalSpeechVal.length) { voiceTutElm.innerText = thisPointer._recState.noSpeech; thisPointer._listeningTimeout = setTimeout(function () { document.body.classList.remove('v_listening'); }, 1500); } }; this._recState.recognition.onerror = function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer._recState.recognition.stop(); console.error('Speech recognition error:', e.error); if (e.error.includes('not-allowed')) { document.body.classList.add('v_speechNotAllowed'); } throw e.error; }; } }; SpeechToTextHelper.prototype.ShowTutorialToolTip = function () { var elm = document.getElementById(`v_voiceInstructionsTip_${this._instanceIndex}`); elm.style.display = 'flex'; }; SpeechToTextHelper.prototype.HideTutorialToolTip = function () { var elm = document.getElementById(`v_voiceInstructionsTip_${this._instanceIndex}`); if (elm) { elm.style.display = 'none'; sessionStorage.setItem(`v_isVoiceTutorialViewed_${this._instanceIndex}`, 'true'); } } SpeechToTextHelper.prototype.AddEventListeners = function () { let selectedInstanceIndex = this._instanceIndex; var speechButton = document.getElementById(this._newVoiceId); this._targetSelectionElm.addEventListener('mouseover', function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.CheckForTutorial(); }); speechButton.addEventListener('click', function (e) { let thisPointer = speechInstances[selectedInstanceIndex]; if (thisPointer._listeningTimeout) { clearTimeout(thisPointer._listeningTimeout); } thisPointer._recState.finalSpeechVal = ''; let tutorialTxt = document.getElementById(thisPointer._voiceTextElmId); let tutorialInput = thisPointer._targetInput; thisPointer.HideTutorialToolTip(); if (thisPointer._recState.recognition != null && !document.body.classList.contains('v_listening')) { document.body.classList.add('v_listening'); if (tutorialTxt) { tutorialTxt.innerText = thisPointer._recState.listening; } if (tutorialInput) { if (tutorialInput.nodeName.toLowerCase() === 'input') { tutorialInput.setAttribute('placeholder', thisPointer._recState.listening); } else { tutorialInput.innerText = thisPointer._recState.listening; } } thisPointer._recState.recognition.start(); } else { document.body.classList.remove('v_listening'); thisPointer._recState.recognition.stop(); } }); var toolTipCloser = document.getElementById(`v_toolTipCloser_${selectedInstanceIndex}`); toolTipCloser.addEventListener('click', function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.HideTutorialToolTip(); }); }; SpeechToTextHelper.prototype.CheckForTutorial = function () { let selectedInstanceIndex = this._instanceIndex; let isTutorialViewed = sessionStorage.getItem(`v_isVoiceTutorialViewed_${this._instanceIndex}`); if (isTutorialViewed == null || isTutorialViewed === 'false') { this.ShowTutorialToolTip(); setTimeout(function () { let thisPointer = speechInstances[selectedInstanceIndex]; thisPointer.HideTutorialToolTip(); }, 5000); } };
  • Mine Storyboards
  • https://www.storyboardthat.com/da/oprette/business-infografik-skabeloner

    Opret en Gratis Infografisk

    Tilpas og Brug i Dag!

    "; trHtm += "

    "; if (vwoShowSideBar) { trHtm += "

    Søg i Artikler

    "; } trHtm += "

    "; trHtm += '

    '; trHtm += '

    START DIN 14 DAGES GRATIS PRØVE NU!

    START DIN 14 DAGES GRATIS PRØVE NU!

    '; trHtm += '

    Start My Gratis Prøveversion

    '; trHtm += '

    Start My Gratis Prøveversion

    '; trHtm += '×'; var freeTrialBars = document.getElementsByClassName('free-trial-bar'); for (var i = 0; i < freeTrialBars.length; i++) { freeTrialBars[i].insertAdjacentHTML('afterbegin', trHtm); } }); window.addEventListener('scroll', function (e) { var TocCtl = document.getElementsByClassName('free-trial-bar'); var outSectionRect = document.getElementById('ArticleBodyElement'); var scrollVal = window.scrollY - 128; var outerSectionValue = outSectionRect ? (outSectionRect.getBoundingClientRect().height - 150) : 0; var realScrollVal = (scrollVal > outerSectionValue ? outerSectionValue : scrollVal); for (var i = 0; i < TocCtl.length; i++) { if (realScrollVal > 0) { TocCtl[i].style.marginTop = `${realScrollVal}px`; } else { TocCtl[i].style.marginTop = ``; } } });

    `; document.body.insertAdjacentHTML('beforeend', modalHtml); var content = document.getElementById('ScheduleCallModalContent'); var calendarlyDiv = document.createElement('div'); var scrTag = document.createElement('script'); var maxHeight = window.innerHeight - 100; calendarlyDiv.setAttribute('data-url', calendarlyDataUrl); calendarlyDiv.classList.add('calendly-inline-widget'); calendarlyDiv.style.width = '100%'; calendarlyDiv.style.height = `${(maxHeight < 1175 ? maxHeight : 1175)}px`; calendarlyDiv.id = 'calendarContent'; content.appendChild(calendarlyDiv); scrTag.type = 'text/javascript'; scrTag.src = 'https://assets.calendly.com/assets/external/widget.js'; scrTag.addEventListener('load', function () { ShowModal('ScheduleCallModal'); }); content.appendChild(scrTag); window.addEventListener('resize', HandleWindowResizeForCalandar); calendarCreated = true; } else { ShowModal('ScheduleCallModal'); } }); } }); function HandleWindowResizeForCalandar() { var calendarlyDiv = document.getElementById('calendarContent'); var contentElm = document.getElementById('ScheduleCallModal'); if (calendarlyDiv) { var maxHeight = window.innerHeight - 100; calendarlyDiv.style.height = `${(maxHeight < 1175 ? maxHeight : 1175)}px`; if (window.innerWidth >= 1000) { contentElm.firstChild.style.marginRight = '25%'; contentElm.firstChild.style.marginLeft = '25%'; } else { contentElm.firstChild.style.marginRight = ''; contentElm.firstChild.style.marginLeft = ''; } } else { RemoveResizeEventFromCalandarModal(); } } function RemoveResizeEventFromCalandarModal() { window.removeEventListener('resize', HandleWindowResizeForCalandar); };


    Kommunikation Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (4)

    Kopier Skabelon

    Kopier Skabelon

    Kommunikation Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (5)

    Kopier Skabelon

    Kopier Skabelon

    Teknisk Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (7)

    Kopier Skabelon

    Kopier Skabelon

    Teknisk Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (8)

    Kopier Skabelon

    Kopier Skabelon

    Teknisk Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (9)

    Kopier Skabelon

    Kopier Skabelon

    Journey Map Info 3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (10)

    Kopier Skabelon

    Kopier Skabelon

    Journey Map Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (11)

    Kopier Skabelon

    Kopier Skabelon

    Case Study Info 2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (12)

    Kopier Skabelon

    Kopier Skabelon

    Transport PSA Infographic

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (13)

    Kopier Skabelon

    Kopier Skabelon

    Persona Info 1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (14)

    Kopier Skabelon

    Kopier Skabelon

    Case Study Info 1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (15)

    Kopier Skabelon

    Kopier Skabelon

    Journey Map Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (16)

    Kopier Skabelon

    Kopier Skabelon

    Product Dev Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (17)

    Kopier Skabelon

    Kopier Skabelon

    Product Dev Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (18)

    Kopier Skabelon

    Kopier Skabelon

    Product Dev Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (19)

    Kopier Skabelon

    Kopier Skabelon

    Agile Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (20)

    Kopier Skabelon

    Kopier Skabelon

    Agile Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (21)

    Kopier Skabelon

    Kopier Skabelon

    Agile Info 1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (22)

    Kopier Skabelon

    Kopier Skabelon

    Kundeservice Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (23)

    Kopier Skabelon

    Kopier Skabelon

    Kundeservice Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (24)

    Kopier Skabelon

    Kopier Skabelon

    Kundeoplevelse Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (25)

    Kopier Skabelon

    Kopier Skabelon

    Case Study Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (26)

    Kopier Skabelon

    Kopier Skabelon

    Design Thinking Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (27)

    Kopier Skabelon

    Kopier Skabelon

    Design Thinking Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (28)

    Kopier Skabelon

    Kopier Skabelon

    Persona Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (29)

    Kopier Skabelon

    Kopier Skabelon

    Person Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (30)

    Kopier Skabelon

    Kopier Skabelon

    Video Marketing Info-3

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (31)

    Kopier Skabelon

    Kopier Skabelon

    Video Marketing Info-1

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (32)

    Kopier Skabelon

    Kopier Skabelon

    Video Marketing Info-2

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (33)

    Kopier Skabelon

    Kopier Skabelon


    Opret en Gratis Infografisk*


    Infographics er den bedste måde at forklare komplekse oplysninger eller data på en forståelig og visuel måde. Opret en gratis infographic i dag ved hjælp af en af skabeloner ovenfor eller start din egen fra bunden!

    Se flere infografiske skabeloner!

    Se Alle Lærerressourcer

    *(Dette vil starte en 2 ugers gratis prøveperiode - ingen kreditkort nødvendig)

    https://www.storyboardthat.com/da/oprette/business-infografik-skabeloner
    © 2024 - Clever Prototypes, LLC - Alle rettigheder forbeholdes.
    StoryboardThat er et varemærke tilhørende Clever Prototypes , LLC og registreret i US Patent and Trademark Office

    Gratis infografiske skabeloner: Tilpas med StoryboardThat (2024)

    References

    Top Articles
    Latest Posts
    Article information

    Author: Rev. Porsche Oberbrunner

    Last Updated:

    Views: 5738

    Rating: 4.2 / 5 (73 voted)

    Reviews: 88% of readers found this page helpful

    Author information

    Name: Rev. Porsche Oberbrunner

    Birthday: 1994-06-25

    Address: Suite 153 582 Lubowitz Walks, Port Alfredoborough, IN 72879-2838

    Phone: +128413562823324

    Job: IT Strategist

    Hobby: Video gaming, Basketball, Web surfing, Book restoration, Jogging, Shooting, Fishing

    Introduction: My name is Rev. Porsche Oberbrunner, I am a zany, graceful, talented, witty, determined, shiny, enchanting person who loves writing and wants to share my knowledge and understanding with you.