Subversion Repositories SmartDukaan

Rev

Rev 3298 | Rev 4152 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2351 varun.gupt 1
package in.shop2020.social.controllers;
2
 
2778 varun.gupt 3
import in.shop2020.datalogger.SocialEventType;
4
import in.shop2020.utils.DataLogger;
5
 
2351 varun.gupt 6
import java.util.Map;
7
import javax.servlet.ServletContext;
8
import org.apache.struts2.interceptor.ParameterAware;
9
import org.apache.struts2.util.ServletContextAware;
10
import com.thoughtworks.xstream.core.util.Base64Encoder;
11
 
12
public class CommunityPromotionController implements ParameterAware, ServletContextAware {
13
 
14
    protected Map<String, String[]> parameters;
15
    protected ServletContext context;
3298 varun.gupt 16
    private String pid;
2351 varun.gupt 17
 
18
    public CommunityPromotionController() {
19
    }
20
 
21
    public String index()  {
2778 varun.gupt 22
    	DataLogger.logSocialData(SocialEventType.COMMUNITY_PROMOTION_VIEWED, "1000");
2351 varun.gupt 23
        return "success";
24
    }
25
 
26
    public String create()  {
3298 varun.gupt 27
 
28
    	if (pid != null && pid.equals("bb"))	{
3336 varun.gupt 29
        	DataLogger.logSocialData(SocialEventType.BLACKBERRY_PROMOTION_VIEWED , "1000");
3298 varun.gupt 30
    		return "bb-promo";
31
    	} else	{
3336 varun.gupt 32
        	DataLogger.logSocialData(SocialEventType.COMMUNITY_PROMOTION_VIEWED, "1000");
33
 
3298 varun.gupt 34
            return "success";
35
    	}
2351 varun.gupt 36
    }
3298 varun.gupt 37
 
38
    public void setPid(String pid) {
39
		this.pid = pid;
40
	}
2351 varun.gupt 41
 
42
    @Override
43
    public void setParameters(Map<String, String[]> parameters) {
44
        this.parameters = parameters;
45
    }
3298 varun.gupt 46
 
2351 varun.gupt 47
    @Override
48
    public void setServletContext(ServletContext context) {
49
        this.context = context;
50
    }
51
 
52
    public String getParameter(String key)    {
53
        String str = "";
54
        for (int i = 0; i < this.parameters.get(key).length; i ++)  {
55
            str += this.parameters.get(key)[i];
56
        }
57
        return str;
58
    }
59
 
60
    public Map<String, String[]> getParameters()   {
61
        return this.parameters;
62
    }
63
 
64
    public String getFBPostedJSON()  {
3298 varun.gupt 65
        System.out.println(this.parameters);
66
 
67
        String str = this.parameters.get("signed_request")[0];
68
        System.out.println(str);
2351 varun.gupt 69
        Base64Encoder decoder = new Base64Encoder();
2468 varun.gupt 70
        try {
3298 varun.gupt 71
        	System.out.println(str.split("\\."));
2468 varun.gupt 72
            byte[] decodedBytes = decoder.decode(str.split("\\.")[1]);
3298 varun.gupt 73
            String s = new String(decodedBytes).trim();
74
            String encodedString = decoder.encode(s.getBytes());
75
            System.out.println(encodedString);
76
            System.out.println(encodedString.equals(str));
77
            System.out.println(s);
78
            return s;
2468 varun.gupt 79
        }
80
        catch (ArrayIndexOutOfBoundsException e) {
81
            e.printStackTrace();
82
            return "{}";
83
        }
2351 varun.gupt 84
    }
85
 
86
    public String test()  {
87
        String[] test = new String[] {"str1", "str2", "str3"};
88
        String str = "";
89
 
90
        for (int i = 0; i < test.length; i ++)  {
91
            str += test[i];
92
        }
93
        return str;
94
    }
95
 
96
    public String getServletContextPath(){
97
        return context.getContextPath();
98
    }
99
}