Using Google Docs from web app - google-docs

We have a requirement for people to be able to look at documents people have uploaded to us (mainly word, possibly some rtf) via our web app. We want the user to be able to open the docs inside the browser, but keep the original formatting and not have the need for another application (like word, acrobat etc).
We thought about using google docs to do this, there appears to be some batch uploading options to get stuff in there but does anyone know if we can use the API's to keep the user on our site without them having to login to google docs themselves, and keep them still on our website with re-directing to google docs to view them.
Cheers

There's an option to make documents public (Somewhere in Share->Advanced Options).
Using api you can get list of documents in your google docs account, you can even search em. In your app you could make a link to the document in google docs which opens in a new window. That way your user will never navigate away from your page. An alternative would be to use an IFrame, but it's considered bad practice.
A completely different approach could be to automatically generate and host a pdf each time someone uploads a file. There are scripts/programs which can do that, just call them after you receive a file.

Related

Opening a read only URL with password

New to Web site dev, though have done a lot of coding of other sorts in the past, just set up a personal blog for my own amusement on bluehost using wordpress and have it installed locally for dev.
I have a training log on another site which anyone can open read-only to view training stats with a URL of the form below, this works fine in a browser:
https://www.othersite.com/logs/1234xyz/authenticate?password=thisismypassword
What I have tried to do unsuccessfully is have this open in a frame on one of my web pages (used iframe/object in html). It seems impossible to do this as the authentication string is not passed across, and the screen displayed prompts for manual input of the password. Can I open this automatically in some way?
If I understood well, your solution is insecure regardless it works or not. In this way your clients can see the password of your (or another) site.
I suggest to query the external content using custom php code and display (print) it on your page.
There are several ways to get content of an external page:
https://www.php.net/manual/en/function.stream-context-create.php
https://www.php.net/manual/en/function.curl-init.php
If you need a tutorial for WP plugins check this out:
https://www.wpbeginner.com/wp-tutorials/how-to-create-a-wordpress-plugin/

Social sharing for specific assets

I am developing an analytical app using NodeJS and Express and I would like to give the user the option to share the currently filtered graph along with a title and a sample description. I would like to have an option to share to Facebook, Twitter and Google +. I have done some research and I have managed to find a few libraries that were supposed to suite me. One of which was social-share (https://www.npmjs.com/package/social-share). The problem with this library is that I was unable to upload images to Facebook or Twitter, as well as the missing Google+ option.
The other library I have found is twit (https://github.com/ttezel/twit) which I still have not tried but either way it is for Twitter only.
After some time of trying to find a trivial solution, I started looking into the "build my own" option. I registered my app in the Facebook Developers console. I followed all the steps there to setup the SDK and the smple share code. The problem there was that the URL I wanted to share (http://127.0.0.1:3000/ or localhost at my case) was not "in the allowed domains for the application". I have tried a number if solutions for this error but none seemed to work. I have creadet a "Test app" under the original app in Facebook Dev Console. I have also tried creating an entirely new application for purely development purposes. (Note: in both previously stated caces I have switched the app ids obviously). I also tried the settings options for "Add platform" with "localhost" as the site URL. I have tried adding it as allowed domains and other options but I could not seem to get it to work.
What I also tried was the "Add This" option to share, leveraging the meta og: tags for image. The content is dynamically generated so I figured I should update the contents of the meta tags dynamically as well (using jQuery in my case). The problem I see there is the following: Facebook scrapes the page periodically and therefore the dynamic content from the og: tags is not fetched. Also the share button always used the information scraped from the url that I tried to share.
So after all this my questions are: Is there a trivial way in which I can have simple share buttons which the user can share the currently visible content (Highcharts graph) along with a title and text (prefilled by the app)? Is this supported for Facebook, Twitter and Google +?
Thank you in advance!

Retrieve Google results without using the Custom Search API

Recently I've been working on an idea that requires me to query Google Images and retrieve links for images matching that search term. My most promising candidate for a usable Google Images API was the Google Web Search API, but it looks like it's going to be going out of service as of tomorrow:
https://developers.google.com/web-search/docs/
The API that replaced it is the Google Custom Search API, but it's a little discouraging to use:
Google API Custom Search with Python - Programmatic Search Results
100 search results a day is a very strict limit; that's just four searches per hour. I also don't want to have to go through the hassle of creating some custom search bar that I'm never going to use except through Python
I decided to turn to parsing HTML directly from the results page. This presents a problem, though, because nowhere inside the page's HTML is there any direct link to the image, only referrer URLs. This is true of the javascript-enabled and javascript-disabled versions of Google Images (so even if Python spoofs javascript as enabled, nothing). I'm not sure where to go from here. Could anyone refer me to some obscure, updated library that I've somehow overlooked, or give me some pointers?
You could use Selenium Webdriver to actually execute the JavaScript and click on the images in the thumbnail view. Once an image has been opened, the link is in the DOM and you can scrape it from there. All Webdriver does is open an actual browser and simulate a user. You can even run it as a headless browser if you use xvfbwrapper. The downside is that even then, you will need all the dependencies of the browser you are using installed on your server.
However, scraping Google is against their terms of service and they will make an effort of blocking you as quickly as possible. So, unless you pass through the captchas (which are linked to sessions), you will possibly not be able to make a whole lot of searches before being blocked this way, either.

Why cant I interact with my google docs embedded in my google site?

Happy Friday!
So, a while ago, I embedded a Google docs folder in my Google site. What a great feature!
But here is the problem: when I first embedded it, when I clicked on an embedded folder, there would be a section on the left, in which, I could, from the site, add files. All I had to do was just drag and drop them into the folder embedded on the website itself. Now, that option is just not there!
Have I changed some sort of setting by accident? Did Google change the way the embedding operates to disallow this?
Thanks!

Fix/Replace DNN search-engine with FTP

I'm working on a DNN website, I have a user account with Admin privileges but don't have access to the Host Account. I do have FTP access and have been browsing around the file-structure and have seen some files referring to search.
The search is not working on the website so I was hoping I could replace the back-end code which runs the search, via FTP.
What files would need to be replaced to make sure they are not corrupted/buggy.
I realize doing this may not solve the problem, so any other advice as to trouble-shooting or possible solutions are appreciated.
EDIT(For those asking how in what way search does not work):
Here is an image of what happens when I search 'sheep' (the website is all about sheep). Was told by the company that original website that the search runs on our pages 'Keywords'. I've made sure pages contain keywords but they still do not show up in search.
The solution I ended up using for this problem because I could find no other solution without having the Super-User account access. Was to implement Google's Custom Search Engine, with the multi-page option.
http://www.google.com/cse/
In my case the original search engine was working via GET command with a value of q. This is the same as Google's CSE multi-page option. So I was able to simply remove the old search results html from a module and replace it with the html snippet provided by Google.

Resources