Today I commited my bug fix, I completed yesterday. Model search results were now displayed completely fine.
Another thing I noticed today was the embed button in model viewer. Clicking on it displayed a sAlert notification with the HTML embed code. But because I redesigned sAlert notification to a smaller compact version, the embed code wasn't entirely on screen. Thus causing problem. Also I thought one should not see what's the embed code, it should be copied to clipboard automatically.
I started searching for packages that can provide me with simple solution of copy to clipboard without using flash. Flash is outdated, and using some package dependent on flash is of no use. Came across this link.
Also worked a little on dialog box that I started yesterday
Fixed the model search results by adding an else if to existing code, that retrieves the result as per modelFiles collection if it's value is passed
Also today I started working on a dialog box that edits the model. Basically we can perform two operations on the rendered model, these are changing color of each part and show/hide parts of model. I have basic idea of how to do this, but I need to study into three js documentation to get a clear logic.
Today I mostly concentrated on the front end of this dialog box and finding and fixing small bugs in OGV. As it's one of the last weeks, I need to do code cleanup side by side
Today I summarised my status report, there are only two main tasks that needs to be completed. One is merging and another is adding new features to model viewer, which includes changing color/texture of the part of model instead of complete model.
I started doing some UI/UX improvements, while doing so I realized that there are still few things that needs to be tweaked as I am using Posts collection to fetch model posts instead of ModelFiles Collection. Search results were appearing wrong. Lovemeter wasn't working. I couldn't post a comment of model. So I started finding and fixing all these
The problem in search module was that it was all designed around modelFiles collection. I can't port the same search to Posts collection, since there is nothing to search in attributes of posts collection, it only contain id of the main model posts. Thus I have to somehow search from ModelFiles and then return relevant posts collection pointer.
Another way I can do this is by using if else regarding whether the id is coming from ModelFiles collection or from Posts collection in modelPosts template helpers.
I tested the code I had previously written about using a posts collection. Created two three accounts, one user would add models, and another would share. Than. After few tweaks it seemed to work fine. So I pushed it as soon as possible.
After doing so, I again came back to deployment. I was searching online and came across a link of Rocket chat. Rocket chat is a meteor app, and they listed steps to run rocket chat on a freeBSD 10.3 system. I was running on freeBSD 10.1, So I rebuild my droplet to freeBSD 10.3. And started executing the steps mentioned. It was somewhat similar to what I mentioned in my blog post. Just the unofficial meteor for freeBSD repository was different.
Everything worked fine by the end of execution of script building node for meteor, problem came when I ran build mongo. To tackle this issue, I installed mongo manually using
sudo pkg install mongodb. And commented the line of fetching mongodb. The error I was getting was
Unrecognizable tar file format
Anyhow after trying for about 2 times, I thought to continue my search for a perfect tutorial that may help me. Came across old link, the one I saw very first time when installing meteor on freeBSD. It was told that this tutorial is for freeBSD 10.2. So I again did a droplet rebuild to freeBSD 10.2 version and started following steps. To my utmost surprise meteor was successfully installed. *sigh of relieve*
After meteor was installed I cloned the OGV, and again that dreadful error of version inconsistency came. When previously I searched about this error they suggested to remove all packages and then add them without mentioning their versions. This will automatically choose the best version for this app. I opened the .meteor/package file, removed all version number from end, and did
meteor rebuild. And then came the moment of happiness, OGV started on a freeBSD droplet.
Today I started working on incomplete task of posts. I had already figured out it's schema and inserted the posts in it. I just have to figure out a way to use them in model feed. Currently data used in model feed is from a helper named
models. It returns collection pointer of
ModelFiles collection. I have to fetch the data from Posts collection and then using that data, find the desired model either from ModelFiles collection or from SharedModels collection, depending on the type of post.
It took me some time and a piece of paper to figure out a proper workflow which will show posted models and shared models in same feed, sorted in a chronic order
Another news for today was that I got an inactivity warning from sean. Actually I haven't gotten a chance to publish my draft logs which led to belief that I wasn't working.
The tutorial I started following yesterday, wasn't a detailed tutorial. It haven't explained each and every thing, it just told me what to do. I had to search for myself what am I actually doing. I had no idea about freeBSD ports, rc script and such stuff
I even assumed some stuff like installing a nginx web server, as in tutorial it was written to put files in web server's home directory
Also it was my first experience with meteor build, it sure seemed so practical approach and I was postive that this will definetly work. But sadly I got stuck again. I was unsure what to do next, or where to trace back my way.
I was on freeBSD 10.1, I started reading about it, started reading about freeBSD rc scripts, and one more thing that was used in tutorial was a npm package called forever. I started reading about it. It is used to run a service (as the name suggests) forever. We were creating a node service for our meteor project and then deploying on server using forever
Even I got stuck this time, I thought that first let's clearly understand everything about using scripts for deploying meteor apps and thus it will then help me follow this tutorial more clearly.
I finished with the private/public model functionality. Tweaked the queries at profile page and news feed. Commited the code, and came to a serious problem of no access to server once again.
As I told the cpu usage was way too high, and I suspect it to be the reason for no connection. I rebuild the server again.
I had lost all hopes to deploy the freeBSD on server. But then I gave one more try. I started from the very beginning. I searched "deploying meteor app on freeBSD server." And a github link came across me, and it was how to deploy meteor app on a freeBSD digital ocean droplet.
It was exactly what I needed. However in the tutorial there was no mention of installing meteor, as per this tutorial it used meteor build to deploy the app onto server using node and npm. It sure seemed a practical and feasible approach.
I started following this tutorial.