`); let searchUrl = `/search/`; history.forEach((elem) => { prevsearch.find('#prevsearch-options').append(`
${elem} `); }); } $('#search-pretype-options').empty(); $('#search-pretype-options').append(prevsearch); let prevbooks = $(false); [ {title:"Recently Opened Textbooks", books:previous_books}, {title:"Recommended Textbooks", books:recommended_books} ].forEach((book_segment) => { if (Array.isArray(book_segment.books) && book_segment.books.length>0 && nsegments<2) { nsegments+=1; prevbooks = $(`
${book_segment.title} `); let searchUrl = "/books/xxx/"; book_segment.books.forEach((elem) => { prevbooks.find('#prevbooks-options'+nsegments.toString()).append(`
${elem.title} ${ordinal(elem.edition)} ${elem.author} `); }); } $('#search-pretype-options').append(prevbooks); }); } function anon_pretype() { let prebooks = null; try { prebooks = JSON.parse(localStorage.getItem('PRETYPE_BOOKS_ANON')); }catch(e) {} if ('previous_books' in prebooks && 'recommended_books' in prebooks) { previous_books = prebooks.previous_books; recommended_books = prebooks.recommended_books; if (typeof PREVBOOKS !== 'undefined' && Array.isArray(PREVBOOKS)) { new_prevbooks = PREVBOOKS; previous_books.forEach(elem => { for (let i = 0; i < new_prevbooks.length; i++) { if (elem.id == new_prevbooks[i].id) { return; } } new_prevbooks.push(elem); }); new_prevbooks = new_prevbooks.slice(0,3); previous_books = new_prevbooks; } if (typeof RECBOOKS !== 'undefined' && Array.isArray(RECBOOKS)) { new_recbooks = RECBOOKS; for (let j = 0; j < new_recbooks.length; j++) { new_recbooks[j].viewed_at = new Date(); } let insert = true; for (let i=0; i < recommended_books.length; i++){ for (let j = 0; j < new_recbooks.length; j++) { if (recommended_books[i].id == new_recbooks[j].id) { insert = false; } } if (insert){ new_recbooks.push(recommended_books[i]); } } new_recbooks.sort((a,b)=>{ adate = new Date(2000, 0, 1); bdate = new Date(2000, 0, 1); if ('viewed_at' in a) {adate = new Date(a.viewed_at);} if ('viewed_at' in b) {bdate = new Date(b.viewed_at);} // 100000000: instead of just erasing the suggestions from previous week, // we just move them to the back of the queue acurweek = ((new Date()).getDate()-adate.getDate()>7)?0:100000000; bcurweek = ((new Date()).getDate()-bdate.getDate()>7)?0:100000000; aviews = 0; bviews = 0; if ('views' in a) {aviews = acurweek+a.views;} if ('views' in b) {bviews = bcurweek+b.views;} return bviews - aviews; }); new_recbooks = new_recbooks.slice(0,3); recommended_books = new_recbooks; } localStorage.setItem('PRETYPE_BOOKS_ANON', JSON.stringify({ previous_books: previous_books, recommended_books: recommended_books })); build_popup(); } } var whiletyping_search_object = null; var whiletyping_search = { books: [], curriculum: [], topics: [] } var single_whiletyping_ajax_promise = null; var whiletyping_database_initial_burst = 0; //number of consecutive calls, after 3 we start the 1 per 5 min calls function get_whiletyping_database() { //gets the database from the server. // 1. by validating against a local database value we confirm that the framework is working and // reduce the ammount of continuous calls produced by errors to 1 per 5 minutes. return localforage.getItem('whiletyping_last_attempt').then(function(value) { if ( value==null || (new Date()) - (new Date(value)) > 1000*60*5 || (whiletyping_database_initial_burst < 3) ) { localforage.setItem('whiletyping_last_attempt', (new Date()).getTime()); // 2. Make an ajax call to the server and get the search database. let databaseUrl = `/search/whiletype_database/`; let resp = single_whiletyping_ajax_promise; if (resp === null) { whiletyping_database_initial_burst = whiletyping_database_initial_burst + 1; single_whiletyping_ajax_promise = resp = new Promise((resolve, reject) => { $.ajax({ url: databaseUrl, type: 'POST', data:{csrfmiddlewaretoken: "lwxfYYWrqjwz9RXlLqU2wiXsriaVpaDROZFzjpGIltPYqnSaLDmUlh6y2rQE3vW6"}, success: function (data) { // 3. verify that the elements of the database exist and are arrays if ( ('books' in data) && ('curriculum' in data) && ('topics' in data) && Array.isArray(data.books) && Array.isArray(data.curriculum) && Array.isArray(data.topics)) { localforage.setItem('whiletyping_last_success', (new Date()).getTime()); localforage.setItem('whiletyping_database', data); resolve(data); } }, error: function (error) { console.log(error); resolve(null); }, complete: function (data) { single_whiletyping_ajax_promise = null; } }) }); } return resp; } return Promise.resolve(null); }).catch(function(err) { console.log(err); return Promise.resolve(null); }); } function get_whiletyping_search_object() { // gets the fuse objects that will be in charge of the search if (whiletyping_search_object){ return Promise.resolve(whiletyping_search_object); } database_promise = localforage.getItem('whiletyping_database').then(function(database) { return localforage.getItem('whiletyping_last_success').then(function(last_success) { if (database==null || (new Date()) - (new Date(last_success)) > 1000*60*60*24*30 || (new Date('2023-04-25T00:00:00')) - (new Date(last_success)) > 0) { // New database update return get_whiletyping_database().then(function(new_database) { if (new_database) { database = new_database; } return database; }); } else { return Promise.resolve(database); } }); }); return database_promise.then(function(database) { if (database) { const options = { isCaseSensitive: false, includeScore: true, shouldSort: true, // includeMatches: false, // findAllMatches: false, // minMatchCharLength: 1, // location: 0, threshold: 0.2, // distance: 100, // useExtendedSearch: false, ignoreLocation: true, // ignoreFieldNorm: false, // fieldNormWeight: 1, keys: [ "title" ] }; let curriculum_index={}; let topics_index={}; database.curriculum.forEach(c => curriculum_index[c.id]=c); database.topics.forEach(t => topics_index[t.id]=t); for (j=0; j
Solutions
Textbooks
`); } function build_solutions() { if (Array.isArray(solution_search_result)) { const viewAllHTML = userSubscribed ? `View All` : ''; var solutions_section = $(` Solutions ${viewAllHTML} `); let questionUrl = "/questions/xxx/"; let askUrl = "/ask/question/xxx/"; solution_search_result.forEach((elem) => { let url = ('course' in elem)?askUrl:questionUrl; let solution_type = ('course' in elem)?'ask':'question'; let subtitle = ('course' in elem)?(elem.course??""):(elem.book ?? "")+" "+(elem.chapter?"Chapter "+elem.chapter:""); solutions_section.find('#whiletyping-solutions').append(` ${elem.text} ${subtitle} `); }); $('#search-solution-options').empty(); if (Array.isArray(solution_search_result) && solution_search_result.length>0){ $('#search-solution-options').append(solutions_section); } MathJax.typesetPromise([document.getElementById('search-solution-options')]); } } function build_textbooks() { $('#search-pretype-options').empty(); $('#search-pretype-options').append($('#search-solution-options').html()); if (Array.isArray(textbook_search_result)) { var books_section = $(` Textbooks View All `); let searchUrl = "/books/xxx/"; textbook_search_result.forEach((elem) => { books_section.find('#whiletyping-books').append(` ${elem.title} ${ordinal(elem.edition)} ${elem.author} `); }); } if (Array.isArray(textbook_search_result) && textbook_search_result.length>0){ $('#search-pretype-options').append(books_section); } } function build_popup(first_time = false) { if ($('#search-text').val()=='') { build_pretype(); } else { solution_and_textbook_search(); } } var search_text_out = true; var search_popup_out = true; const is_login = false; const user_hash = null; function pretype_setup() { $('#search-text').focusin(function() { $('#search-popup').addClass('show'); resize_popup(); search_text_out = false; }); $( window ).resize(function() { resize_popup(); }); $('#search-text').focusout(() => { search_text_out = true; if (search_text_out && search_popup_out) { $('#search-popup').removeClass('show'); } }); $('#search-popup').mouseenter(() => { search_popup_out = false; }); $('#search-popup').mouseleave(() => { search_popup_out = true; if (search_text_out && search_popup_out) { $('#search-popup').removeClass('show'); } }); $('#search-text').on("keyup", delay(() => { build_popup(); }, 200)); build_popup(true); let prevbookUrl = `/search/pretype_books/`; let prebooks = null; try { prebooks = JSON.parse(localStorage.getItem('PRETYPE_BOOKS_'+(is_login?user_hash:'ANON'))); }catch(e) {} if (prebooks && 'previous_books' in prebooks && 'recommended_books' in prebooks) { if (is_login) { previous_books = prebooks.previous_books; recommended_books = prebooks.recommended_books; if (prebooks.time && new Date().getTime()-prebooks.time<1000*60*60*6) { build_popup(); return; } } else { anon_pretype(); return; } } $.ajax({ url: prevbookUrl, method: 'POST', data:{csrfmiddlewaretoken: "lwxfYYWrqjwz9RXlLqU2wiXsriaVpaDROZFzjpGIltPYqnSaLDmUlh6y2rQE3vW6"}, success: function(response){ previous_books = response.previous_books; recommended_books = response.recommended_books; if (is_login) { localStorage.setItem('PRETYPE_BOOKS_'+user_hash, JSON.stringify({ previous_books: previous_books, recommended_books: recommended_books, time: new Date().getTime() })); } build_popup(); }, error: function(response){ console.log(response); } }); } $( document ).ready(pretype_setup); $( document ).ready(function(){ $('#search-popup').on('click', '.search-view-item', function(e) { e.preventDefault(); let autoCompleteSearchViewUrl = `/search/autocomplete_search_view/`; let objectUrl = $(this).attr('href'); let selectedId = $(this).data('objid'); let searchResults = []; $("#whiletyping-solutions").find("a").each(function() { let is_selected = selectedId === $(this).data('objid'); searchResults.push({ objectId: $(this).data('objid'), contentType: $(this).data('contenttype'), category: $(this).data('category'), selected: is_selected }); }); $("#whiletyping-books").find("a").each(function() { let is_selected = selectedId === $(this).data('objid'); searchResults.push({ objectId: $(this).data('objid'), contentType: $(this).data('contenttype'), category: $(this).data('category'), selected: is_selected }); }); $.ajax({ url: autoCompleteSearchViewUrl, method: 'POST', data:{ csrfmiddlewaretoken: "lwxfYYWrqjwz9RXlLqU2wiXsriaVpaDROZFzjpGIltPYqnSaLDmUlh6y2rQE3vW6", query: $('#search-text').val(), searchObjects: JSON.stringify(searchResults) }, dataType: 'json', complete: function(data){ window.location.href = objectUrl; } }); }); });
FAQs
Factors important in business site selection include proximity to the target market, accessibility to transportation, availability of skilled labor, cost of real estate and utilities, and local government regulations.
Why is selecting a location an important business location? ›
The critical role of selecting an optimal business location cannot be overemphasized. It can considerably impact visibility, accessibility, brand image, marketing strategies, financial aspects, and even employee satisfaction. Aspiring business owners should invest ample time in careful location planning.
What are the more important general factors affecting location choice? ›
But selection of location is dictated by acceptable location factors such as proximity to customers, availability of raw materials etc. Availability of all these factors might not be possible for a particular location. A location might score highly on some factors and lacks on others.
What is the method of location strategy? ›
Simply put, location strategy is a plan that includes determining the objectives of your company and then finding the right location to achieve them. There are many factors to consider, so choosing a new location should be preceded by an in-depth analysis.
Which six factors should you consider when choosing a location for the business? ›
These location factors will help you decide whether or not a community is ideal for your business:
- Market and Demographics. It's important to know who your ideal customers are when choosing a business location. ...
- Traffic. ...
- Accessibility. ...
- Competition. ...
- Costs. ...
- Growth Potential.
What are the 7 factors to be considered in selecting an ideal site? ›
Industrial site selection – 7 Factors to be considered
- Location accessibility and infrastructure.
- Zonal Classification.
- Site cleaning & clearing.
- Topo and geotechnical survey.
- Sewage and effluent discharge.
- Power and water supply conditions.
- CNG, LPG, and fuel oil supply conditions.
Why location decisions are important in business? ›
In conclusion, location is a critical aspect of business success. The right location can provide access to customers, enhance visibility, create competitive advantages, offer necessary resources, comply with legal requirements, manage costs effectively, and align with target market preferences.
Why is location important for customers? ›
Beyond knowing their preferences and behaviours, having insight into their location, and even tracking potential relocations can be an invaluable asset for businesses. The importance of this knowledge transcends mere marketing strategies; it deeply impacts the core of customer relationships and service provisions.
Why is location strategy important in business? ›
Location plays a pivotal role in ensuring the satisfaction of staff and customers, financial health, operational efficiency, and meeting business needs. Thorough research and strategic planning are crucial for any business contemplating location decisions.
What are the three main factors that can influence facility location decisions? ›
After a location or locations have been chosen a cost-profit-volume analysis is done. The main factors that affect location decisions include regional factors, community considerations, and site-related factors.
The five factors that should be considered in the location decision are transportation, community attitude, and proximity to customers, labor and sources of supply. Transportation is the cost of moving items to and/or from the location.
What are the factors which affect choice of the store location? ›
This includes many factors such as foot traffic, rent, customers, landlords and zoning restrictions. Taking the time to analyse the area that appeals to you and your business is essential. Before choosing any retail store location, it is important to define how you see your retail store now and in the future.
What is the method of six point location specifies? ›
The 3-2-1 principle of location, also calls the six-point positioning principle, the 3-2-1 principle of location means that the workpiece has six degrees of freedom in space, i.e., the freedom of movement along the three right-angle axes of x, y, and z and the freedom of rotation around the three axes.
What are the 7 factors affecting location strategy? ›
The 7 factors are: availability of raw materials, labour, capital, access to markets, availability of abundant power supply, modes of transportation, and availability of land.
What are the 4 types of location? ›
Types
- Locality.
- Relative location.
- Absolute location.
What factors are to be considered in selection of a business site? ›
10 Critical Factors to Consider During Corporate Site Selection
- Understand Your Needs. ...
- Conduct a Thorough Market Filtering Analysis. ...
- Assess Accessibility and Infrastructure. ...
- Evaluate Workforce Availability and Skills. ...
- Consider Quality of Life Factors. ...
- Analyze Real Estate Conditions. ...
- Evaluate Economic Incentives Conditions.
Which of the following should you consider as part of the facility location decision? ›
If you are planning on moving or acquiring a new facility, there are many factors to consider: the size, the geographic area, culture, transportation costs and others.
What factors must be considered when selecting the site and building location? ›
Here are factors affecting site selection.
- Accessibility. Buildings near well-connected roads are easily accessible and more likely to attract business. ...
- Future Growth and Expansion. Consider the potential for expansion and the limitations of the site. ...
- Size of Building. ...
- Local and State Guidelines. ...
- The climate of a Region.
How do companies decide where to locate their facilities? ›
For a company which operates in a global environment; cost, available infrastructure, labor skill, government policies and environment are very important factors. A right location provides adequate access to customers, skilled labors, transportation, etc.